Qual é a maneira correta de criar um alias para ajustar o pacote no Ubuntu 16.04?

8

TL; DR

Como criar um alias para todo o sistema para ajustar o pacote no Ubuntu 16.04?

Mais detalhes

Gostaria de instalar o Blender rapidamente. Eu descobri que há um pacote blender-tpaw que pode ser instalado. Infelizmente, após a instalação, ele está disponível no terminal com o nome blender-tpaw, não blender.

Usando snap alias

Então, primeiro de tudo, tentei executar o comando sudo snap alias blender-tpaw blender, de acordo com: https://insights.ubuntu.com/2017/01/28/ubuntu-core-how-to-enable-aliases-for-your-snaps-commands / . Mas é isso que eu tenho:

error: cannot perform the following tasks:
- Enable aliases for snap "blender-tpaw" (cannot enable alias "blender" for "blender-tpaw", no such alias)

Crie um link simbólico em / usr / local / bin

Então eu tentei fazer o link simbólico, sudo ln -s /snap/bin/blender-tpaw /usr/local/bin/blendermas neste caso acontece uma coisa muito estranha: agora, quando digito blenderum terminal, tenho saída de snapcomando ...

Coloque o alias em /etc/profile.d

Eu também tentei criar alias em /etc/profile.d/alias.sh

alias blender='blender-tpaw'

Mas isso funciona apenas no meu Ubuntu 16.04 Server, mas não funciona no Ubuntu 16.04 Desktop.

O que eu quero alcançar?

Quero que esse alias seja amplo para todo o sistema, para todos os usuários, sem alterar manualmente .bashrcpara cada usuário separadamente. E eu quero da mesma maneira trabalhando no Ubuntu Server e no Ubuntu Desktop também.

Piotr Ciążyński
fonte
Talvez isso ajude? insights.ubuntu.com/2017/01/28/...
edwinksl
@edwinksl Eu uso o comando deste artigo, mas parece que não é possível declarar seus próprios aliases sem reconstruir todo o snap.
Piotr Ciążyński
Ah entendo. Eu realmente não uso snaps, então não sou de nenhuma ajuda aqui, mas espero que exista uma solução simples para isso; reconstruir snaps apenas para criar aliases é um exagero.
Edwinksl
Depois de fazer o link simbólico para /usr/local/bin/blender, qual é a saída da entrada do comando blender? Além disso, você tem mais alguma coisa no seu caminho chamada blender(use type -a blenderpara listar tudo o que o shell hash sob esse nome)?
takatakatek

Respostas:

1

Qualquer problema encontrado no ano passado ao tentar registrar o alias agora parece corrigido. A mesma sequência funcionou no 16.04, e o quase lançado 18.04 também. O uso de versões está na saída.

$ sudo snap install blender-tpaw
[sudo] password for dpb: 
blender-tpaw 2.78c-tpaw0 from 'tpaw' installed
$ sudo snap alias blender-tpaw blender
Added:
  - blender-tpaw as blender
$ sudo snap aliases
Command                  Alias         Notes
aws-cli.aws              aws           -
blender-tpaw             blender       manual
conjure-up.conjure-down  conjure-down  -
lxd.lxc                  lxc           -
$ snap version
snap    2.32.3.2+18.04
snapd   2.32.3.2+18.04
series  16
ubuntu  18.04
kernel  4.15.0-15-generic

Referências:

dpb
fonte
0

Para configurar um alias fora snapusando a aliasfunção bash-builtin , você precisa chamar snapexplicitamente; portanto, no seu caso, o comando é:

alias blender='snap run blender-tpaw'

man bash diz:

Quando um shell interativo que não é um shell de login é iniciado, o bash lê e executa comandos de /etc/bash.bashrc e ~ / .bashrc, se esses arquivos existirem.

Portanto, para tornar o apelido disponível em todo o sistema, basta adicioná-lo ao /etc/bash.bashrcarquivo:

echo "alias blender='snap run blender-tpaw'" >> /etc/bash.bashrc
sobremesa
fonte