apt-get instala o pacote do repositório de terceiros

1

Como você instala um pacote específico usando apt-get de um repositório de terceiros?

Eu adicionei o repositório NodeSource Node.js ao meu /etc/apt/sources.list.d :

# /etc/apt/sources.list.d/nodesource.list
deb https://deb.nodesource.com/node_9.x buster main
deb-src https://deb.nodesource.com/node_9.x buster main

Eu atualizei o apt e posso ver o pacote usando apt-cache policy nodejs :

nodejs:
  Installed: (none)
  Candidate: 8.9.3~dfsg-12
  Version table:
     9.11.1-1nodesource1 500
        500 https://deb.nodesource.com/node_9.x buster/main amd64 Packages
     8.11.1~dfsg-2 500
        500 http://ftp.us.debian.org/debian unstable/main amd64 Packages
     8.9.3~dfsg-12 990
        990 http://ftp.us.debian.org/debian testing/main amd64 Packages

Como eu instruo a apt-get que eu quero instalar o pacote de nodesource ?

Eu tentei:

sudo apt-get install -t nodesource nodejs
sudo apt-get install -t node_9.x nodejs
sudo apt-get install -t buster/main nodejs
sudo apt-get install -t deb.nodesource.com nodejs
sudo apt-get install -t deb.nodesource.com/node_9.x

Mas todos eles falham com o mesmo erro (para a versão correspondente):

E: The value 'deb.nodesource.com/node_9.x' is invalid for APT::Default-Release as such a release is not available in the sources
    
por cpburnz 14.04.2018 / 02:28

1 resposta

2

Parece que a versão do nodesource é mais recente, portanto, apenas apt install nodejs deve fornecer o que você deseja.

Você também pode especificar que deseja uma versão específica com apt install nodejs=<version> . Isso só afeta o que será instalado por esse comando partcular, não é lembrado, então da próxima vez que você executar apt update; apt upgrade , ele tentará atualizar o pacote da maneira usual (que é provavelmente o que você quer).

Você também pode ler sobre o apt pinning e dar prioridade a esse repositório, então você pode fazer o apt preferir pacotes de lá para o futuro. O risco é que, se de repente, mas algo que não está relacionado com o nodejs, você também vai conseguir isso, você poderia tentar evitar isso apenas fixando os nodejs, mas então você terá problemas se eles dividirem o pacote algum dia. Mas nenhuma solução pode prever seus desejos futuros e cumpri-los.

    
por 14.04.2018 / 07:42

Tags