[Aptitude-devel] Bug#661188: Bug#661188: aptitude purge <package> recursively REMOVES BUT DOES NOT PURGE the unneeded dependencies of <package>

shirish शिरीष shirishag75 at gmail.com
Mon Feb 27 13:11:52 UTC 2012


some additions :-

2012/2/27 shirish शिरीष <shirishag75 at gmail.com>:
> I too have been bitten by this in the past and do think what Daniel
> has given as an answer is okish (although there should be some sort of
> better way.) For my exchange see [0] . One of the things which I
> didn't know to figure out how to produce a listing of such packages
> using aptitude [1] which was shared by Daniel as well. As I have
   purged all the packages which were removed haven't been able to test
   out if dpkg -L (2) works on such packages as well or not.  George if you
> have some packages whose configuration files are still it would be
> nice if you could produce a listing of what you get. If you do get the
> location of those files then a user could attempt at least to know
> what they contain and perhaps judge (or not) whether it could be
> useful now or latter.
>
> Another point to be kept at back of mind as well is over a period of
> time a package could merge other packages in it or be split in one or
> more packages, in the former the config files remaining the same
> (while binary is removed) while at the latter more config files would
> perhaps be added.
>
> I have a very vague sense of how aptitude does things so I might be
> right (or not).
>
> I do hope however that my $0.02 does prove to be useful to you
> otherwise simply disregard it.
>
> 0 - http://lists.alioth.debian.org/pipermail/aptitude-devel/2012-February/001945.html
> 1 - aptitude search ?config-files
> 2 - dpkg -L = -L|--listfiles <package> ...     List files `owned' by package(s).
>
> A healthy package displays something like this , a random e.g. :-
>
> $ dpkg -L fonts-gubbi
> /.
> /etc
> /etc/fonts
> /etc/fonts/conf.avail
> /etc/fonts/conf.avail/65-0-fonts-gubbi.conf
> /etc/fonts/conf.d
> /usr
> /usr/share
> /usr/share/doc
> /usr/share/doc/fonts-gubbi
> /usr/share/doc/fonts-gubbi/changelog.gz
> /usr/share/doc/fonts-gubbi/changelog.Debian.gz
> /usr/share/doc/fonts-gubbi/copyright
> /usr/share/fonts
> /usr/share/fonts/truetype
> /usr/share/fonts/truetype/Gubbi
> /usr/share/fonts/truetype/Gubbi/Gubbi.ttf
> /etc/fonts/conf.d/65-0-fonts-gubbi.conf
>


I did try it just now with a library which I know is no longer needed
(although aptitude hasn't removed/purged it). This is on a Debian sid
machine.

$ aptitude search libgs?
p   libgs-dev                                           - interpreter
for the PostScript language and for PDF - Develop
v   libgs-esp-dev                                       -
i   libgs8                                              - The
Ghostscript PostScript/PDF interpreter Library
i A libgs9                                              - interpreter
for the PostScript language and for PDF - Library
i A libgs9-common                                       - interpreter
for the PostScript language and for PDF - common

Just extracted partial listing. It seems aptitude doesn't respect the
wildcard '?' as it produces a whole listing but that I guess is
another issue.

See libgs8 :-

$ aptitude show libgs8
Package: libgs8
State: installed
Version: 8.71~dfsg2-9
Priority: optional
Section: libs
Maintainer: Debian Printing Team <debian-printing at lists.debian.org>
Uncompressed Size: 16.2 M
Depends: libc6 (>= 2.7), libcomerr2 (>= 1.01), libcups2 (>= 1.4.0),
libcupsimage2 (>= 1.4.0), libfontconfig1 (>=
         2.8.0), libgcrypt11 (>= 1.4.2), libgnutls26 (>= 2.7.14-0),
libgssapi-krb5-2 (>= 1.6.dfsg.2), libjasper1 (>=
         1.900.1), libjbig2dec0, libjpeg62 (>= 6b1), libk5crypto3 (>=
1.6.dfsg.2), libkrb5-3 (>= 1.6.dfsg.2),
         libpaper1, libpng12-0 (>= 1.2.13-4), libstdc++6 (>= 4.1.1),
libtiff4, zlib1g (>= 1:1.1.4)
Breaks: ghostscript (< 8.71~dfsg2-7)
Replaces: ghostscript (< 8.71~dfsg2-7)
Description: The Ghostscript PostScript/PDF interpreter Library
 Ghostscript is used for PostScript/PDF preview and printing.  Usually
as a back-end to a program such as ghostview, it
 can display PostScript and PDF documents in an X11 environment.

 This package provides the Ghostscript library which makes the
facilities of Ghostscript available to applications.
Homepage: http://www.ghostscript.com/

Tags: implemented-in::c, role::shared-lib, use::printing,
use::viewing, works-with-format::pdf,
      works-with-format::postscript

Looking at libgs9 now :-

$ aptitude show libgs9
Package: libgs9
State: installed
Automatically installed: yes
Version: 9.05~dfsg-2
Priority: optional
Section: libs
Maintainer: Debian Printing Team <debian-printing at lists.debian.org>
Uncompressed Size: 10.4 M
Depends: libc6 (>= 2.7), libcomerr2 (>= 1.01), libcups2 (>= 1.4.0),
libcupsimage2 (>= 1.4.0), libfontconfig1 (>=
         2.8.0), libfreetype6 (>= 2.2.1), libgcrypt11 (>= 1.4.5),
libgnutls26 (>= 2.12.6.1-0), libgssapi-krb5-2 (>=
         1.6.dfsg.2), libidn11 (>= 1.13), libijs-0.35 (>= 0.35),
libjasper1, libjbig2dec0, libjpeg8 (>= 8c),
         libk5crypto3 (>= 1.6.dfsg.2), libkrb5-3 (>= 1.6.dfsg.2),
liblcms2-2, libpaper1, libpng12-0 (>= 1.2.13-4),
         libstdc++6 (>= 4.1.1), libtiff4, zlib1g (>= 1:1.1.4),
gs-cjk-resource, libgs9-common (= 9.05~dfsg-2)
Description: interpreter for the PostScript language and for PDF - Library
 GPL Ghostscript is used for PostScript/PDF preview and printing.
Usually as a back-end to a program such as ghostview,
 it can display PostScript and PDF documents in an X11 environment.

 This package provides the Ghostscript library which makes the
facilities of GPL Ghostscript available to applications.
Homepage: http://www.ghostscript.com/

Tags: role::shared-lib

As can be seen both libraries seem to have the same function .

$ sudo aptitude remove libgs8
[sudo] password for shirish:
The following packages will be REMOVED:
  libgs8
0 packages upgraded, 0 newly installed, 1 to remove and 2 not upgraded.
Need to get 0 B of archives. After unpacking 16.2 MB will be freed.
D000001: deferred_remove package libgs8
D000001: checking dependencies for remove `libgs8'
(Reading database ... 381580 files and directories currently installed.)
Removing libgs8 ...
D000001: removal_bulk package libgs8
D000001: removal_bulk cleaning info directory
D000001: removal_bulk purging? foundpostrm=1
D000001: removal done

Then I tried to see if any listing is/was possible :-

$ dpkg -L libgs8
Package `libgs8' does not contain any files (!)

$ sudo aptitude purge libgs8
The following packages will be REMOVED:
  libgs8{p}
0 packages upgraded, 0 newly installed, 1 to remove and 2 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.
Do you want to continue? [Y/n/?] Y
D000001: deferred_remove package libgs8
D000001: checking dependencies for remove `libgs8'
(Reading database ... 381265 files and directories currently installed.)
Removing libgs8 ...
D000001: removal_bulk package libgs8
D000001: removal_bulk purging? foundpostrm=1
Purging configuration files for libgs8 ...
D000001: removal_bulk purge done, removing list `/var/lib/dpkg/info/libgs8.list'
D000001: removal_bulk purge done, removing postrm
`/var/lib/dpkg/info/libgs8.postrm'
D000001: removal done

It seems there is/are configuration files which do get removed when
you purged but it seems those are either not known by dpkg or there is
some other way to find those out.

As said before as well, sorry for the noise :)
-- 
          Regards,
          Shirish Agarwal  शिरीष अग्रवाल
  My quotes in this email licensed under CC 3.0
http://creativecommons.org/licenses/by-nc/3.0/
http://flossexperiences.wordpress.com
065C 6D79 A68C E7EA 52B3  8D70 950D 53FB 729A 8B17





More information about the Aptitude-devel mailing list