Como encontrar todos os pacotes disponíveis (e executáveis) que podem preencher uma “alternativa”? [duplicado]

0

Por "alternativas" quero dizer (na maior parte, veja a exceção abaixo) as "funções" correspondentes aos arquivos em /var/lib/dpkg/alternatives .

Essas funções incluem

awk
desktop-background
editor
global-assembly-cache-tool
haskell-compiler
infobrowser
java
w
www-browser
x-window-manager
zsh

entre muitos outros.

A única exceção que tenho em mente é a função display-manager (aka login-manager ), que, AFAICT, não está representada em /var/lib/dpkg/alternatives , mas estou muito interessada em.

Dado um desses papéis, vamos chamá-lo de foo , quero saber todos os pacotes 1 disponíveis que podem reproduzir foo ou, mais precisamente, que fornecem um executável que pode reproduzir foo .

Naturalmente, quero conhecer o pacote e o caminho para o executável relevante, uma vez que este último nem sempre é óbvio no primeiro; por exemplo. para a função x-window-manager , um desses pacotes é fluxbox , enquanto o "executável relevante" é /usr/bin/startfluxbox e não /usr/bin/fluxbox .

(Pelo menos para as funções em /var/lib/dpkg/alternatives , os pacotes que fornecem esses papéis devem ser empacotados de tal forma que o gerente de alternativas possa reconhecê-los apropriadamente; de qualquer maneira, esse é o meu entendimento. Se assim for, espero que haja alguma maneira automática de identificar todos os pacotes que fornecem uma função específica.)

1 Disponível, isto é, através das fontes especificadas no meu /etc/apt/sources* config.

    
por kjo 09.02.2016 / 09:26

1 resposta

1

Pacotes virtuais e o sistema de alternativas do Debian (que é onde os binários entram em ação) estão relacionados, mas não são os mesmos. Para pacotes, você pode usar apt-cache para descobrir quais pacotes (reais) "fornecem":

$ apt-cache showpkg awk
Package: awk
Versions: 

Reverse Depends: 
  base-files,awk
  base-files,awk
Dependencies: 
Provides: 
Reverse Provides: 
mawk:i386 1.3.3-17ubuntu2
gawk:i386 1:4.0.1+dfsg-2.1ubuntu2
original-awk 2012-12-20-1
mawk 1.3.3-17ubuntu2
gawk 1:4.0.1+dfsg-2.1ubuntu2

Para gerentes de exibição, o pacote virtual é x-display-manager :

$ apt-cache showpkg x-display-manager
Package: x-display-manager
Versions: 

Reverse Depends: 
  utf8-migration-tool,x-display-manager
  razorqt,x-display-manager
  lxde,x-display-manager
  numlockx,x-display-manager
  ltsp-client-core,x-display-manager
Dependencies: 
Provides: 
Reverse Provides: 
gdm 3.10.0.1-0ubuntu3.1
lightdm 1.10.6-0ubuntu1
kdm 4:4.11.11-0ubuntu0.2
xdm 1:1.1.11-1ubuntu1
wdm 1.28-16
slim 1.3.4-2.1
lxdm 0.4.1-0ubuntu6
kdm 4:4.11.8-0ubuntu6
gdm 3.10.0.1-0ubuntu3
lightdm 1.10.0-0ubuntu3
    
por 09.02.2016 / 09:45