Descobrir se o pacote instalado é dependente de outro pacote instalado

2

De acordo com o título que.

Solução como esta: apt-cache rdepends packagename

Lista todo o pacote reverso. Embora a maioria dos pacotes na lista eu não tenho no meu sistema instalado. Exemplo:

apt-cache rdepends python-gpgme
python-gpgme

Reverse Depends:
  python-bzrlib
  bzr
  python-gpgme:i386
  nautilus-dropbox
  assword
  alot
  python-gpgme-dbg
  python-bzrlib
  bzr

Eu não tenho bzr, nautilus, muito e outros instalados.

Então, qual é o comando correto para descobrir a lista de pacotes dependentes instalados para o pacote "target"?

Eu preciso saber se python-gpgme está bem para limpar.

    
por AFwcxx 15.07.2014 / 16:56

4 respostas

1

Você também pode fazer:

sudo dpkg -s <package_name> | grep Depends

Por exemplo:

sudo dpkg -s bcmwl-kernel-source | grep Depends 
Depends: dkms, linux-libc-dev, libc6-dev
    
por chili555 15.07.2014 / 17:57
3

Em caso de dúvida, use apenas o sinalizador -s (também conhecido como --simulate , --just-print , --dry-run , --recon e --no-act ). Você pode executar o comando sem raiz e ele lhe dirá o que faria com base nos seus pacotes atuais.

$ apt-get remove -s python-gpgme
NOTE: This is only a simulation!
      apt-get needs root privileges for real execution.
      Keep also in mind that locking is deactivated,
      so don't depend on the relevance to the real current situation!
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be REMOVED
  python-gpgme
0 to upgrade, 0 to newly install, 1 to remove and 217 not to upgrade.
Remv python-gpgme [0.3-0ubuntu3]
    
por Oli 15.07.2014 / 17:15
2

Com padrões de pesquisa (sintaxe detalhada e sintaxe abreviada equivalente):

aptitude search '?depends(python-gpgme) ?installed'
aptitude search '~Dpython-gpgme ~i'

Para incluir recomendações, bem como dependências estritas:

aptitude search '(?depends(python-gpgme) | ?recommends(python-gpgme)) ?installed'
aptitude search '(~Dpython-gpgmg | ~Drecommends:python-gpgme) ~i'
    
por Gilles 15.07.2014 / 18:07
1

Ou, usando o aptitude como resposta de Gilles, basta usar o comando why que mostrará "por que um pacote foi instalado":

aptitude why python-gpgme

Por exemplo:

➜  ~  aptitude why python-gpgme
i   bzr Recommends python-gpgme

Isso me diz que, se houvesse uma razão para instalar o python-gpgme, seria devido o pacote bzr que está instalado.

    
por Braiam 21.07.2014 / 09:23