A compilação da versão de desenvolvimento do Firefox ('Nightly') pode ser feita com alguma preparação cuidadosa. (Esta é a melhor versão para usar ao produzir correções e melhorias para 'upstream'). É obrigatório realizar tal tarefa longe de uma instalação de produção do Ubuntu e eu recomendamos strongmente o uso de uma Máquina Virtual dedicada somente a esta tarefa.
A técnica abaixo foi testada com o Ubuntu Zesty Zerus 17.04 (rodando em uma Máquina Virtual dedicada!) e seria melhor sempre usar a versão mais moderna do Ubuntu para compilar o Firefox, já que as dependências usadas serão, na maior parte, bastante modernas. . Eu não mexi com infinitas opções de construção, mas sinta-se à vontade para fazê-lo por conta própria!
Nota: O sistema de compilação precisa de uma grande quantidade de RAM, além de uma grande quantidade de espaço em disco. Eu sugeriria 8GB de RAM, 30GB de espaço livre em disco e quantos núcleos a VM permitir, essa combinação certamente funcionou no meu sistema. Nota: o sistema de compilação falhará com menos permissões de RAM, espaço em disco rígido e núcleos disponíveis ...
1. Construir Dependências:
Primeiro, instale algumas dependências de compilação, começando com o mais recente compilador de ferrugem estável:
wget -O - https://static.rust-lang.org/rustup.sh | sh
Em seguida, uma instalação mais padrão dos Repositórios do Ubuntu:
sudo apt-get install autoconf2.13 libgtk-3-dev mercurial llvm-4.0 clang-4.0 \
libgconf2-dev libdbus-glib-1-dev libpulse-dev yasm build-essential libgtk2.0-dev \
libxt-dev
2. Clone o repositório de desenvolvimento do Firefox:
Próximo para clonar o repositório do Firefox Mercurial, prepare uma xícara de chá enquanto o download é feito:
cd $HOME && hg clone https://hg.mozilla.org/mozilla-central
3. Construa o Firefox:
Finalmente, para construir o próprio código-fonte, é hora de outra xícara de chá e, provavelmente, ter um sanduíche, além de levar muito tempo para que o computador seja mais rápido:
cd $HOME/mozilla-central && ./mach build
E quando estiver concluído, você verá esta mensagem:
43:58.38 We know it took a while, but your build finally finished successfully!
To view resource usage of the build, run |mach resource-usage|.
To take your build for a test drive, run: |mach run|
Além de um link com algumas dicas sobre onde ir em seguida ...
4. Execute o Firefox:
Agora basta executar:
cd $HOME/mozilla-central && ./mach run
e você está executando a última versão de desenvolvimento do Firefox! Agora você pode começar a hackear o código-fonte e, se seus patches estiverem prontos, você poderá enviá-los e trabalhar neste novo navegador.
5. Atualizando a fonte:
Você deve atualizar periodicamente a fonte, alterando para o diretório de origem e atualizando com os comandos padrão do repositório mercurial. A seguinte linha deve realizar isso para você:
cd $HOME/mozilla-central && hg pull && hg update
Aqui está uma atualização padrão executada no meu próprio sistema:
andrew@ithaca:~/mozilla-central$ hg pull
pulling from https://hg.mozilla.org/mozilla-central
searching for changes
adding changesets
adding manifests
adding file changes
added 767 changesets with 4619 changes to 3590 files
(run 'hg update' to get a working copy)
andrew@ithaca:~/mozilla-central$ hg update
3581 files updated, 0 files merged, 141 files removed, 0 files unresolved
Depois disso, você deve recompilar:
cd $HOME/mozilla-central && ./mach build
E talvez ande enquanto isso recompilar :).
6. Captura de tela gratuita:
Abaixo está uma captura de tela do último 'Nightly' em execução no meu sistema 17.04:
E lembre-se: 'Divirta-se !!'
Notas:
- Contribuindo para a base de código do Mozilla : Os passos iniciais para incorporar seus patches no código do Firefox base ...
-
Mozilla Firefox: preparação para a criação do Linux : Um bom ponto de partida para este projeto, embora algumas modificações e adições foram necessárias. Eu não consegui fazer com que o instalador
bootstrap.py
funcionasse, então as instruções para isso foram dadas manualmente . - O compilador de ferrugem no Ubuntu 17.04 era antigo demais, então instruções para instalar diretamente do local da ferrugem eram dadas. A ferrugem tem um ciclo de lançamento de 6 semanas, então esta pode ser a melhor opção para aqueles que preferem o sangramento. Algumas observações aqui ...
- Firefox Nightly : Mais alguns detalhes sobre o desenvolvimento e o modelo de lançamento do Firefox Nightly.