Firefox building
Ieri mi sono divertito a compilare Firefox Nightly 48.0a1 con branding Aurora, quello che ne è uscito fuori è stato un ibrido tra Firefox Developer Edition e Nightly con aggiunta del profilo dev-edition-default e relative estensioni di sviluppo, vediamo come fare:
Procuriamoci i sorgenti:
Mozilla Nightly non fa parte del ramo release quindi non esistono tarball ufficiali con il codice sorgente, affidarsi a git per clonare i vari rami, può risultare poco pratico.
Per comodità possiamo procurarci i sorgenti da github direttamente a questo indirizzo.
Scompattiamo la cartella gecko-dev-master sulla Scrivania.
Localizzazione:
Scarichiamo i file di localizzazione italiani per Nightly:
$ cd ~/Scrivania $ mkdir l10n $ cd l10n $ hg clone http://hg.mozilla.org/l10n-central/it
Nota: per il clone è necessario il pacchetto mercurial-git.
Installiamo le dipendenze necessarie:
# apt-get install build-essential zip libasound2-dev libcurl4-gnutls-dev libnotify-dev libxt-dev libiw-dev mesa-common-dev autoconf2.13 libgtk2.0-dev gcc yasm libdbus-1-dev libdbus-glib-1-dev libgstreamer-plugins-base0.10-dev libgstreamer-plugins-base0.10-dev libgtk-3-dev libpulse-dev libgstreamer-plugins-base1.0-dev libnspr4-dev rustc
Prepariamo il mozconfig (branding ufficiale).
Nella cartella gecko-dev-master creiamo un file vuoto e nominiamolo mozconfig
Mettiamo nel file appena creato i seguenti parametri presi in parte dalle Nightly ufficiali:
ac_add_options --enable-update-channel=nightly ac_add_options --enable-update-packaging ac_add_options --enable-crashreporter ac_add_options --enable-release ac_add_options --enable-elf-hack ac_add_options --enable-warnings-as-errors ac_add_options --enable-profiling ac_add_options --enable-verify-mar ac_add_options --enable-rust --with-ccache ac_add_options --enable-verify-mar --with-branding=browser/branding/aurora ac_add_options --enable-application=browser ac_add_options --enable-default-toolkit=cairo-gtk3 ac_add_options --enable-gstreamer=1.0 ac_add_options --enable-optimize ac_add_options --disable-debug ac_add_options --disable-tests ac_add_options --enable-aurora-branding mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-ff-release mk_add_options MOZ_MAKE_FLAGS="-j4" export MOZ_DEBUG_SYMBOLS=1 export MOZILLA_OFFICIAL=1 mk_add_options MOZ_CO_LOCALES="it" ac_add_options --enable-ui-locale=it ac_add_options --with-l10n-base=/home/nomeutente/Scrivania/l10n
nomeutente è il nome dell’account relativo alla vostra home.
La versione cosi compilata non può essere ridistribuita.
Una lista completa delle opzioni di compilazione è disponibile a questo indirizzo.
Compilazione:
$ cd ~/Scrivania/gecko-dev-master $ make -f client.mk build MOZ_CURRENT_PROJECT=browser
Il processo impiegherà circa un ora e mezza e il tempo dipenderà comunque dal sistema in uso.
Per evitare l’errore che affligge anche questa versione:
Error: /home/nomeutente/Scrivania/gecko-dev-master/objdir-ff-release/browser/installer/package-manifest:31: Missing file(s): bin/dictionaries/
Prima del #make install piazzate una cartella denominata dictionaries in gecko-dev-master/objdir-ff-release/browser/dist/bin e metteteci il dizionario scaricato da qui (click tasto destro>Salva destinazione con nome):
https://addons.mozilla.org/En-us/firefox/addon/dizionario-italiano/
Firefox 48.0a1 verrà installato in /usr/local/lib. Eseguite un backup completo del profilo chiudete Firefox e rimuovete adesso le eventuali versioni precedentemente installate.
Installazione:
$ cd ~/Scrivania/gecko-dev-master/objdir-ff-release/browser $ su # make install
Video:
Screenshots:
[nggallery id=106]
Leave a Reply