Utilizzando aptitude, al fine di cercare pacchetti installati al di fuori del ramo stabile, è possibile utilizzare:
aptitude search "?narrow(?installed,?not(?archive(stable)))"
Per vedere le versioni e i nomi dei pacchetti (e invece delle descrizioni) puoi usare il comando con l'opzione format ( -F
in breve), come segue.
aptitude search -F "%p %V %v" "?narrow(?installed,?not(?archive(stable)))"
Per altri formati, dai un'occhiata alla manpage (ecco la documentazione con le opzioni disponibili ).
Che funziona, per esempio, in Debian Se è stato installato pacchetti di compressione esterno (da matricola, per esempio, apt-get install -t sid package-name
.
Puoi vedere da dove proviene un pacchetto installato apt-cache policy
, l'utilizzo è il seguente:
apt-cache policy <package-name>
Ad esempio, il mio pacchetto python-numpy esegue il rendering del seguente output:
$ LANG=C apt-cache policy python-numpy
python-numpy:
Installed: 1:1.6.2-1
Candidate: 1:1.6.2-1.2
Version table:
1:1.7.0-1 0
1 http://ftp.es.debian.org/debian/ experimental/main amd64 Packages
1:1.6.2-1.2 0
500 http://ftp.es.debian.org/debian/ sid/main amd64 Packages
*** 1:1.6.2-1 0
100 /var/lib/dpkg/status
1:1.4.1-5 0
990 http://ftp.es.debian.org/debian/ squeeze/main amd64 Packages
990 http://ftp.de.debian.org/debian/ squeeze/main amd64 Packages
Ciò significa che sono una versione dietro l'attuale ramo di sid / main, quindi ho una versione di vecchio sid installata. Vedo che non ho quello stabile perché è ancora 1.4.1-5
, e attualmente sono a 1.6.2-1
.
Al momento dell'invio questo pacchetto era già aggiornato:)
?any-version()
, perché~narrow(pat1, pat2)
è lo stesso di?any-version(pat1 pat2)
e supporta?any-version(pat1 pat2 pat3)
senza sembrare stupido.