Qual é a maneira correta de adicionar binários de usuário único a $ PATH?

2

como a maioria das pessoas, ocasionalmente estou instalando coisas ou escrevendo / usando scripts originados fora dos meus repositórios distros ou "artesanais", para que eles não acabem no caminho padrão do sistema ou não sejam adicionados a ele .

Agora existem diferentes maneiras de prosseguir.

Algo que eu possa querer executar apenas ocasionalmente ou só precise executar em um determinado diretório, de qualquer forma, pode ficar como está, pois cd ~/stuff/fancyapp e, em seguida, ./fancyexecutable é bom o suficiente.

Mas, às vezes, talvez eu queira simplesmente fazer algo como backup.sh de qualquer local em que eu esteja ou outros programas precisem estar cientes de um determinado executável e, para isso, posso atualizar meu $ PATH com algo como PATH=$PATH:~/bin/backup/ , export PATH e reiniciar minha sessão. No entanto, isso me leva à questão de ter uma "lixeira" em que eu movo / symlink todos os executáveis em ~/bin/ , ou quando eu quero ter uma lixeira oderly, tendo que adicionar todos os subdiretórios ao meu caminho. (Ou, eu poderia hackear algo juntos tornar o caminho recursivo )

Então, qual é a maneira correta, recomendada e segura de lidar com seu próprio bin que terá vários executáveis e subdiretórios?

    
por JC_CL 28.11.2017 / 12:21

1 resposta

3

Eu instalo todo o software construído localmente no diretório /home/user/.local . Este diretório basicamente copia a estrutura de diretórios de /usr como você pode ver:

> ls ~/.local
bin  etc  include  jars  lib  lib64  libexec  man  share

Você pode apontar as ferramentas de compilação para definir esse diretório como o prefixo de instalação. Algumas ferramentas usam o valor da variável de ambiente PREFIX para determinar o local de instalação, por isso é uma boa ideia definir isso também, mas não confie nele.

Observe que você terá que definir o valor de vários ambientes como PATH , LD_LIBRARY_PATH , PKG_CONFIG_PATH , CLASSPATH de acordo.

    
por 28.11.2017 / 12:40

Tags