what-source (parte do what-utils) retorna o nome do pacote duas vezes

1

No meu Ubuntu 14.04.2, what-source retorna duas vezes o nome do pacote para alguns pacotes, por exemplo

~$ what-source openssl
openssl
openssl

ou

~$ what-source firefox
firefox
firefox

Esse comportamento é normal?

O exemplo do manual aqui retorna apenas um (mesmo para minha máquina: apenas um nome retornado):

~$ what-source sl
sl

O que está acontecendo?

    
por stackoverflowwww 07.07.2015 / 10:23

1 resposta

2

Como diz a página de manual , what-source é um invólucro simples para apt-cache show | grep . O código atual é:

#!/bin/sh
# [....]
#    You should have received a copy of the GNU General Public License
#    along with this program.  If not, see <http://www.gnu.org/licenses/>.

apt-cache show "" | grep "^Filename:" | sed -e "s:\(.*\)/\(.*\)/\(.*\)/\(.*\)/.*::"

apt-cache show mostrará a descrição para cada versão do software disponível nos repositórios. Por exemplo:

$ apt-cache policy firefox
firefox:
  Installed: 38.0+build3-0ubuntu0.14.04.1
  Candidate: 38.0+build3-0ubuntu0.14.04.1
  Version table:
 *** 38.0+build3-0ubuntu0.14.04.1 0
        500 http://mirror.cse.iitk.ac.in/ubuntu/ trusty-security/main amd64 Packages
        500 http://mirror.cse.iitk.ac.in/ubuntu/ trusty-updates/main amd64 Packages
        100 /var/lib/dpkg/status
     28.0+build2-0ubuntu2 0
        500 http://mirror.cse.iitk.ac.in/ubuntu/ trusty/main amd64 Packages

Existem duas versões disponíveis em três repositórios e apt-cache mostrará descrições dessas duas versões:

$ apt-cache show firefox | grep -i -e version -e filename
Version: 38.0+build3-0ubuntu0.14.04.1
Filename: pool/main/f/firefox/firefox_38.0+build3-0ubuntu0.14.04.1_amd64.deb
Version: 28.0+build2-0ubuntu2
Filename: pool/main/f/firefox/firefox_28.0+build2-0ubuntu2_amd64.deb

Então, sim, o comportamento é perfeitamente normal.

    
por muru 07.07.2015 / 10:35