apt-get equivalente ao yum localinstall

9

Ao usar o Fedora, geralmente uso yum localinstallcomo uma maneira de instalar um rpm obtido fora dos repositórios de distribuição. Não consigo encontrar uma opção equivalente na apt-getpágina de manual. Estou executando o Ubuntu 11.04, se isso importa.

Qual é o apt-getequivalente yum localinstall? Devo usar dpkgdiretamente neste caso?

Vitor Py
fonte

Respostas:

10

Se o seu pacote depender de alguns outros pacotes disponíveis nos repositórios, o comando a seguir também cuidará da instalação de dependências (o que dpkgnão é possível):

gdebi my_local_package.deb

no entanto, você pode precisar primeiro se instalar gdebi, se ainda não estiver disponível na sua instalação Debian.

enzotib
fonte
Era exatamente o que eu estava procurando! Obrigado.
Vitor Py
Observe que isso requer o X. É bom para a estação de trabalho. Não é tão bom para o servidor operado remotamente.
Michał Šrajer
2
@ Michał Šrajer: não, não precisa do X, você fala gdebi-gtk.
enzotib 6/09/11
ao tentar a solução gdebi, procure o gdebi-corepacote apenas para CLI. parece que gdebié GTK por padrão. Você pode ver a lista de pkgs GDebi assim: apt-cache search gdebi. Você quer este: "gdebi-core - ferramenta simples para instalar arquivos deb".
mighq
9

Como disse o @enzotib, gdebié bom, até permite uma inspeção simples do script de instalação pré / pós, se você é paranóico como eu.

Mas não esqueça o caminho da concha, pequeno padawan.

Em uma concha, "simplesmente":

dpkg -i file.deb

Se todas as dependências estiverem presentes, ele será instalado. Caso contrário, você verá uma mensagem de erro longa e feia, mas este não é o fim do mundo:

# dpkg -i somepackage.deb 
...snip...
dpkg: error processing somepackage (--install):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 somepackage

Agora, instale as dependências ausentes ou reverta:

# apt-get install -f
...snip...
The following extra packages will be installed:
...snip...
Do you want to continue [Y/n]?
shellholic
fonte
4

Você precisa usar o dpkg diretamente:

dpkg -i my_local_package.deb 

ou configure seu próprio repositório local. Eu prefiro fazer exatamente dpkg -i.

Michał Šrajer
fonte
Essa é a maneira preferida de fazer isso na distribuição baseada no Debian? No Fedora e RHEL eu sempre uso yume nunca toco rpmdiretamente.
Vitor Py
Eu acho que está bem. Da documentação oficial: "dpkg é uma ferramenta de linha de comando usada para instalar pacotes".
Michał Šrajer
Como uma observação para futuros googlers, esta resposta falhará se o novo pacote depender de outros pacotes que ainda não estão instalados. dpkgverifica dependências, mas não buscá-los, é por isso apte gdebiforam feitas.
Knetic