It tends to get a little messy. You get folders like bin/, etc/, include, lib/ and source/ in your home folder.
Por escolha, sim. Se isso parece desordenado, você pode usar
./configure --prefix=$HOME/mytools
Em vez disso. Você precisará então adicionar isso ao seu $ PATH , ou, se $HOME/bin
já fizer parte dele, você poderá mover tudo que está lá para $HOME/mytools/bin
e
rm ~/bin
ln -s ~/mytools/bin ~/bin
Se suas ferramentas colocarem as coisas em ~/mytools/lib
, você também desejará definir LD_LIBRARY_PATH
apropriadamente em algum lugar.
Se você usa qualquer arquivo de inicialização que você normalmente usa para configurar variáveis env, isso só precisa ser feito uma vez e leva cerca de um minuto para ser feito.
You have to manage dependencies
Se por "gerenciar" você quer dizer resolver com o propósito de instalação, essa é uma das principais finalidades de ./configure
. Se isso não for feito corretamente, é improvável que uma ferramenta de terceiros faça isso muito melhor. pode , mas também pode ser pior .
Se você quer dizer algo mais, não há mais nada envolvido no conceito de "dependência". Se você quer dizer que quer algo que resolva isso, faça o download da dependência e instale-a para você, é para isso que os gerenciadores de pacotes são normais - mas lembre-se que você decidiu que não queria binários pré-compilados . Você está construindo a partir da fonte.
É muito lamentável que os gerentes de pacotes do linux sejam em sua maioria hostis ou inúteis para usuários não privilegiados, mas isso é uma questão separada (e uma questão separada, para a qual existem várias respostas dependendo da distribuição).
Is there tool to keep track of your packages locally?
Sim, os próprios pacotes de fontes. Quando você cria, descompacta em ~/mytools/src
. Você pode deixar o diretório de compilação lá ou apenas o tarball. Quando você quiser desinstalar algo, basta acessar o diretório relevante (descompactá-lo novamente, se necessário) e make uninstall
.
O diretório src
nunca é usado pelo sistema para nada. Ele contém apenas o que você coloca nele, e assim, desde que você não exclua seus downloads, você terá uma boa lista de softwares construídos com fontes locais instaladas, com as fontes realmente usadas para construir tudo.