|
Size: 32758
Comment: Update from the EssentialOnDiet page
|
Size: 35531
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 3: | Line 3: |
| Anything that's Essential: yes or has Priority: required will be installed in a debootstrap --variant=minbase - which is the smallest possible debian system. (A normal debian system does not have --variant=minbase and also includes Priority: important packages by default.) |
Anything that's {{{Essential: yes}}} or has {{{Priority: required}}} will be installed in a {{{debootstrap --variant=minbase}}} - which is the smallest possible debian system. (A normal debian system does not have --variant=minbase and also includes {{{Priority: important}}} packages by default.) |
| Line 8: | Line 8: |
| Related [[Proposals/EssentialOnDiet]]. |
Related [[Proposals/EssentialOnDiet]] and [[Teams/Dpkg/Spec/ImportantField]]. |
| Line 13: | Line 12: |
| * diffutils is Essential, why? * possibly the 'cmp' utility. |
* SKIP: --(diffutils is Essential)-- |
| Line 17: | Line 15: |
| * sensible-utils is Priority: required, why not just important? * Note debianutils (essential) still depends on sensible-utils, preventing removal, as part of its transition after being split out from debianutils. * e2fsprogs is Essential: why do I want fsck on a container? |
* DONE: --(sensible-utils is Priority: required, why not just important?)-- DebianBug:871262 * Lintian check pending: DebianBug:872611 * Note debianutils (essential) still depends on sensible-utils, preventing removal, as part of its transition after being split out from debianutils. DebianBug:871260 * [[https://tracker.debian.org/news/957729|DONE]]: e2fsprogs is Essential: why do I want fsck on a container? DebianBug:474540 |
| Line 23: | Line 22: |
* lsb-base is tiny, but why not required -> important? * multiarch-support is tiny, and it has served its purpose. * any remaining dependencies should be dropped, most come from debhelper, so a simple rebuild should do it. * -> demote to optional, or even extra/oldlibs. * libpcre3 and libattr1 depends on it, if they have the dependency hardcoded it should be dropped, otherwise a rebuild will do. * downgrade all the libs to Priority: optional (with maybe an exception for libc6 just because ;) ) * https://bugs.debian.org/758234 |
* https://lists.debian.org/debian-devel/2017/09/msg00449.html * MBF: https://bugs.debian.org/cgi-bin/pkgreport.cgi?users=helmutg@debian.org;tag=nonessentiale2fsprogs * Consider splitting locales out of some/all of minbase/required packages * Originally suggested at https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=474540#77 * See 'util-linux' for a package where this scheme is already implemnted * Reason would be to give a better "out of the box" minbase experience/size, while still relying on localepurge for the full generic solution (dpkg has built-in support to filter these, debootstrap or similar could intall a dpkg config file fragment with --exclude-path for minbase setups). Also the arguments presented in the e2fsprogs bug are not comparable to the reduction in Essential, as locales are self-contained data, to be used by a reduced set of packages, while the functionality from Essential can be used by anything else, and having no explicit depends makes it very difficult to know if something requires it or not. * DONE: --(lsb-base is tiny, but why not required -> optional?)-- DebianBug:871262 * REMOVAL: [[https://wiki.debian.org/Multiarch/Implementation|multiarch-support]] is tiny, but it has served its purpose. DebianBug:871262 * any remaining (Pre-)dependencies should be dropped, most come from debhelper, so a simple rebuild should do it. * -> demote to optional/oldlibs. * libpcre3 --(and libattr1)-- Pre-Depends on it, --(if they have the)-- dependency hardcoded --(it)-- should be dropped, --(otherwise a rebuild will do)--. (DebianBug:865987) * See also https://lintian.debian.org/tags/pre-depends-directly-on-multiarch-support.html * DD-list for hardcoded pre-deps: https://lists.debian.org/debian-devel/2017/07/msg00022.html * MBF: https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=multiarch-support-removal;users=debian-glibc@lists.debian.org * DONE: Downgrade all the libs to Priority: optional (with maybe an exception for libc6 just because ;) ) * Relevant debian-policy change: DebianBug:758234 * Priority change request: DebianBug:846982 |
| Line 35: | Line 45: |
| * these were part of Essential because they were necessary to be able to boot a system, so making them hard to deinstall was important. A similar behavior can now be achieved now by using the Important: yes field, which dpkg does not honor, but apt does. | * these were part of Essential because they were necessary to be able to boot a system, so making them hard to deinstall was important. A similar behavior can now be achieved now by using the Important: yes field, which dpkg does not honor, but apt does (but beware the field name and its semantics might change in the near future, see [[Teams/Dpkg/Spec/ImportantField]]). |
| Line 37: | Line 47: |
| * See also: https://bugs.debian.org/833256 | * See also DebianBug:833256 |
| Line 41: | Line 51: |
| * and pam? | * SKIP: --(and pam?)-- |
| Line 44: | Line 54: |
| * sysvinit-utils is Essential: yes | * sysvinit-utils is Essential: yes DebianBug:851747 |
| Line 46: | Line 56: |
| * very commonly used "pidof" utility currently shipped in sysvinit-utils, move to using procps implementation and ship a separate essential procps-base package? https://bugs.debian.org/810018 * See also https://bugs.debian.org/851747 * PENDING: Make passwd deinstallable |
* very commonly used "pidof" utility currently shipped in sysvinit-utils, move to using procps implementation and ship a separate essential procps-base package? DebianBug:810018 ; What's the point of this shuffling (instead of a possible elimination) of Essential packages, besides possibly getting rid of sysvinit packages from the system? * [[https://tracker.debian.org/news/855347|DONE]]: --(Make passwd deinstallable)-- |
| Line 53: | Line 62: |
| * Making passwd deinstallable would also allow uninstalling libsemanage1, libsemanage-common, libsepol1, libustr-1.0-1 | * Making passwd deinstallable would also allow deinstalling libsemanage1, libsemanage-common, libsepol1, libustr-1.0-1 |
| Line 56: | Line 65: |
| * libbz2-1.0 | * SKIP: --(libbz2-1.0)-- |
| Line 64: | Line 73: |
| * Consider splitting fdisk into separate package * Splitting sfdisk, cfdisk and fdisk out of the util-linux package could allow for the fdisk tools to be deinstallable. This would then allow uninstalling libfdisk1. * Note: cfdisk and pg are the only util-linux tools needing libncursesw5 and pg is deprecated so we should probably consider stop shipping pg. This would allow also uninstalling libncursesw5. |
* [[https://tracker.debian.org/news/861509|DONE]]: --(Consider splitting fdisk into separate package)-- * Splitting sfdisk, cfdisk and fdisk out of the util-linux package could allow for the fdisk tools to be deinstallable. This would then allow deinstalling libfdisk1. * Note: cfdisk --(and pg)-- are the only util-linux tools needing libncursesw5 --(and pg is deprecated so we should probably consider stop shipping pg)--. This would allow also deinstalling libncursesw5. * MBF: [[https://bugs.debian.org/cgi-bin/pkgreport.cgi?users=util-linux@packages.debian.org;tag=fdisk-dependency;dist=unstable|fdisk-dependency]] [[https://bugs.debian.org/cgi-bin/pkgreport.cgi?users=util-linux@packages.debian.org;tag=fdisk-recommends-suggests;dist=unstable|fdisk-rec-sug]] [[https://bugs.debian.org/cgi-bin/pkgreport.cgi?users=util-linux@packages.debian.org;tag=fdisk-build-dependency;dist=unstable|fdisk-build-dependency]] |
| Line 74: | Line 84: |
| * mawk * awk is used in many scripts, including the libc6 preinst, so awk needs to be pseudo-essential. Hence base-files Pre-Depends: awk. * debootstrap cannot resolve virtual dependencies, so mawk has Priority: required to ensure debootstrap downloads and installs it. * Could be replaced by original-awk, but debootstrap currently has mawk hardcoded (DebianBug:861343). * See also upstream shaming us under "Related Links": http://invisible-island.net/mawk/mawk.html |
|
| Line 76: | Line 92: |
| * blends-tasks ([DebianBug:846002]) | * blends-tasks (DebianBug:846002) |
| Line 169: | Line 185: |
| These packages can be uninstalled and is gone from a minbase if you just dpkg --purge them: | These packages can be deinstalled and is gone from a minbase if you just dpkg --purge them: |
| Line 175: | Line 191: |
| gcc-5-base:amd64 | gcc-5-base gcc-6-base |
| Line 177: | Line 194: |
| libapt-pkg5.0:amd64 libstdc++6:amd64 |
libapt-pkg5.0 libffi6 libgmp10 libgnutls30 libhogweed4 libidn2-0 libnettle6 libp11-kit0 libsemanage-common libsemanage1 libsepol1 libstdc++6 libtasn1-6 libunistring2 libustr-1.0-1 |
| Line 180: | Line 210: |
| passwd | |
| Line 189: | Line 220: |
| # for a in $(dpkg -l | tail -n +6 | awk '{print $2}') ; do echo ====== $a ; dpkg --purge $a ; done | |
| Line 281: | Line 312: |
| e2fsprogs depends on e2fslibs (= 1.43.3-1). | e2fsprogs depends on e2fslibs (= 1.43.4-2). |
| Line 297: | Line 328: |
| ====== gcc-6-base:amd64 dpkg: dependency problems prevent removal of gcc-6-base:amd64: libgcc1:amd64 depends on gcc-6-base (= 6.3.0-2). dpkg: error processing package gcc-6-base:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: gcc-6-base:amd64 |
====== gcc-7-base:amd64 dpkg: dependency problems prevent removal of gcc-7-base:amd64: libgcc1:amd64 depends on gcc-7-base (= 7.1.0-9). dpkg: error processing package gcc-7-base:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: gcc-7-base:amd64 |
| Line 345: | Line 376: |
| libaudit1:amd64 depends on libaudit-common (>= 1:2.6.7-1). | libaudit1:amd64 depends on libaudit-common (>= 1:2.7.7-1). |
| Line 356: | Line 387: |
| libsemanage1:amd64 depends on libaudit1 (>= 1:2.2.1). passwd depends on libaudit1 (>= 1:2.2.1). |
|
| Line 379: | Line 408: |
| libsemanage1:amd64 depends on libbz2-1.0. | |
| Line 394: | Line 422: |
| libustr-1.0-1:amd64 depends on libc6 (>= 2.14). | |
| Line 397: | Line 424: |
| libsepol1:amd64 depends on libc6 (>= 2.14). | |
| Line 412: | Line 438: |
| libsemanage1:amd64 depends on libc6 (>= 2.14). | |
| Line 417: | Line 442: |
| passwd depends on libc6 (>= 2.14). | |
| Line 431: | Line 455: |
| mawk depends on libc6 (>= 2.11). | mawk depends on libc6 (>= 2.14). |
| Line 449: | Line 473: |
| libudev1:amd64 depends on libc6 (>= 2.16). | libudev1:amd64 depends on libc6 (>= 2.17). |
| Line 560: | Line 584: |
| passwd depends on libpam-modules. | |
| Line 569: | Line 592: |
| libpam-modules:amd64 depends on libpam-modules-bin (= 1.1.8-3.5). | libpam-modules:amd64 depends on libpam-modules-bin (= 1.1.8-3.6). |
| Line 588: | Line 611: |
| passwd depends on libpam0g (>= 0.99.7.1). | |
| Line 612: | Line 634: |
| libsemanage1:amd64 depends on libselinux1 (>= 2.6). passwd depends on libselinux1 (>= 1.32). |
|
| Line 624: | Line 644: |
| ====== libsemanage-common dpkg: dependency problems prevent removal of libsemanage-common: libsemanage1:amd64 depends on libsemanage-common (= 2.6-2). dpkg: error processing package libsemanage-common (--purge): dependency problems - not removing Errors were encountered while processing: libsemanage-common ====== libsemanage1:amd64 dpkg: dependency problems prevent removal of libsemanage1:amd64: passwd depends on libsemanage1 (>= 2.0.3). dpkg: error processing package libsemanage1:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libsemanage1:amd64 ====== libsepol1:amd64 dpkg: dependency problems prevent removal of libsepol1:amd64: libsemanage1:amd64 depends on libsepol1 (>= 2.6). dpkg: error processing package libsepol1:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libsepol1:amd64 |
|
| Line 677: | Line 673: |
| ncurses-bin depends on libtinfo5 (>= 6.0+20151017). | ncurses-bin depends on libtinfo5 (>= 6.0+20170715). |
| Line 679: | Line 675: |
| ncurses-bin depends on libtinfo5 (>= 6.0+20151017). | ncurses-bin depends on libtinfo5 (>= 6.0+20170715). |
| Line 682: | Line 678: |
| libncursesw5:amd64 depends on libtinfo5 (= 6.0+20161126-1). | libncursesw5:amd64 depends on libtinfo5 (= 6.0+20170715-2). |
| Line 697: | Line 693: |
| ====== libustr-1.0-1:amd64 dpkg: dependency problems prevent removal of libustr-1.0-1:amd64: libsemanage1:amd64 depends on libustr-1.0-1 (>= 1.0.4). dpkg: error processing package libustr-1.0-1:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libustr-1.0-1:amd64 |
|
| Line 739: | Line 727: |
| libattr1:amd64 depends on multiarch-support. | |
| Line 755: | Line 742: |
| ====== passwd dpkg: dependency problems prevent removal of passwd: libuuid1:amd64 depends on passwd. dpkg: error processing package passwd (--purge): dependency problems - not removing Errors were encountered while processing: passwd |
|
| Line 811: | Line 790: |
| Here's a list of the installed packages sorted by size in a --variant=minbase chroot after trying to uninstall as much as possible (ie. appendix b): | Here's a list of the installed packages sorted by size in a --variant=minbase chroot after trying to deinstall as much as possible (ie. appendix b): |
| Line 815: | Line 794: |
| 15042 coreutils 10670 libc6 7538 perl-base 6664 dpkg |
15103 coreutils 10682 libc6 7543 perl-base 6745 dpkg |
| Line 820: | Line 800: |
| 3851 e2fsprogs 3552 util-linux 3362 libc-bin |
4022 e2fsprogs 3443 util-linux 3365 libc-bin |
| Line 824: | Line 804: |
| 2396 login 2345 passwd 1849 findutils |
2747 login 1880 findutils |
| Line 828: | Line 807: |
| 1319 diffutils 1238 libgcrypt20 1131 grep |
1327 diffutils 1263 libgcrypt20 1035 grep |
| Line 832: | Line 811: |
| 870 libpam-modules 785 sed |
874 libpam-modules 799 sed |
| Line 835: | Line 814: |
| 653 libsepol1 647 libsystemd0 572 libgpg-error0 558 debconf 532 ncurses-bin 478 libtinfo5 469 libfdisk1 445 e2fslibs 444 mount 403 libmount1 367 libblkid1 |
654 libsystemd0 576 libgpg-error0 561 debconf 556 ncurses-bin 488 libtinfo5 470 libfdisk1 449 e2fslibs 445 mount 404 libmount1 368 libblkid1 347 ncurses-base |
| Line 847: | Line 826: |
| 340 ncurses-base | |
| Line 849: | Line 827: |
| 291 libsemanage1 287 base-files 258 libustr-1.0-1 257 libsmartcols1 238 bsdutils |
333 base-files 258 libsmartcols1 239 gcc-7-base 239 bsdutils 231 gzip |
| Line 856: | Line 834: |
| 225 gzip | 220 multiarch-support |
| Line 858: | Line 836: |
| 218 multiarch-support 217 libudev1 |
214 libudev1 |
| Line 861: | Line 838: |
| 208 libselinux1 206 gcc-6-base 200 dash 198 mawk |
209 libselinux1 204 dash 183 mawk 157 libaudit1 |
| Line 866: | Line 843: |
| 149 libaudit1 130 init-system-helpers 110 sensible-utils |
131 init-system-helpers 110 sysvinit-utils |
| Line 870: | Line 846: |
| 107 libuuid1 106 sysvinit-utils |
106 libuuid1 96 libbz2-1.0 |
| Line 873: | Line 849: |
| 92 liblz4-1 | 93 liblz4-1 |
| Line 875: | Line 851: |
| 83 libbz2-1.0 | |
| Line 877: | Line 852: |
| 61 libacl1 42 libcap-ng0 42 hostname 39 libsemanage-common 30 libattr1 29 libaudit-common |
62 sensible-utils 62 libacl1 47 hostname 43 libcap-ng0 42 libattr1 32 libaudit-common |
| Line 884: | Line 860: |
== Appendix d - space of locales in minbase/required packages == The breakdown of all of the packages with locale files in the minbase set in Debian '''Jessie'''. The savings (in kilobytes of installed size) if we were to split out their locale files. The cummulative savings if we split the top N packages. || '''Package''' || '''Savings''' || '''Cummulative Savings''' || '''Percentage''' || || coreutils || 8052 || 8052 || 24.91 || || dpkg || 4620 || 12672 || 39.20 || || bash || 3744 || 16416 || 50.78 || || gnupg || 3424 || 19840 || 61.37 || || e2fsprogs || 1776 || 21616 || 66.86 || || tar || 1680 || 23296 || 72.06 || || shadow || 1632 || 24928 || 77.11 || || apt || 1528 || 26456 || 81.84 || || libapt-pkg4.12 || 1052 || 27508 || 85.09 || || Linux-PAM || 796 || 28304 || 87.55 || || findutils || 756 || 29060 || 89.89 || || grep || 636 || 29696 || 91.86 || || diffutils || 620 || 30316 || 93.78 || || debconf || 596 || 30912 || 95.62 || || adduser || 444 || 31356 || 96.99 || || sed || 428 || 31784 || 98.32 || || libgpg-error || 388 || 32172 || 99.52 || || systemd || 84 || 32256 || 99.78 || || acl || 72 || 32328 || 100.00 || Source: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=474540#77 |
This page to store ideas about the minimal base system for Buster development cycle.
Anything that's Essential: yes or has Priority: required will be installed in a debootstrap --variant=minbase - which is the smallest possible debian system. (A normal debian system does not have --variant=minbase and also includes Priority: important packages by default.)
One reason to make the smallest possible system as small as possible is to for example create containers that doesn't carry alot of unneccesary cruft. For Stretch it was made possible to create a debian installation without an init system for this purpose. For buster we can hopefully shrink it even more.... Here are some ideas and also some notes on why demoting something is not possible/trivial.
Related Proposals/EssentialOnDiet and Teams/Dpkg/Spec/ImportantField.
Questionable Essential: yes or Priority: required (part of minbase)
SKIP: diffutils is Essential
- dpkg uses diff on its conffile prompt.
DONE: sensible-utils is Priority: required, why not just important? 871262
DONE: e2fsprogs is Essential: why do I want fsck on a container? 474540
- this is one of the biggest packages in a minbase chroot
- making it deinstallable would also allow deinstalling e2fslibs, libss2, libcomerr2
MBF: https://bugs.debian.org/cgi-bin/pkgreport.cgi?users=helmutg@debian.org;tag=nonessentiale2fsprogs
- Consider splitting locales out of some/all of minbase/required packages
Originally suggested at https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=474540#77
- See 'util-linux' for a package where this scheme is already implemnted
- Reason would be to give a better "out of the box" minbase experience/size, while still relying on localepurge for the full generic solution (dpkg has built-in support to filter these, debootstrap or similar could intall a dpkg config file fragment with --exclude-path for minbase setups). Also the arguments presented in the e2fsprogs bug are not comparable to the reduction in Essential, as locales are self-contained data, to be used by a reduced set of packages, while the functionality from Essential can be used by anything else, and having no explicit depends makes it very difficult to know if something requires it or not.
DONE: lsb-base is tiny, but why not required -> optional? 871262
REMOVAL: multiarch-support is tiny, but it has served its purpose. 871262
- any remaining (Pre-)dependencies should be dropped, most come from debhelper, so a simple rebuild should do it.
-> demote to optional/oldlibs.
libpcre3 and libattr1 Pre-Depends on it, if they have the dependency hardcoded it should be dropped, otherwise a rebuild will do. (865987)
See also https://lintian.debian.org/tags/pre-depends-directly-on-multiarch-support.html
DD-list for hardcoded pre-deps: https://lists.debian.org/debian-devel/2017/07/msg00022.html
DONE: Downgrade all the libs to Priority: optional (with maybe an exception for libc6 just because
) - why are the login tools in prio: required ?
these were part of Essential because they were necessary to be able to boot a system, so making them hard to deinstall was important. A similar behavior can now be achieved now by using the Important: yes field, which dpkg does not honor, but apt does (but beware the field name and its semantics might change in the near future, see Teams/Dpkg/Spec/ImportantField).
- probably su? nologin?
See also 833256
- (u-l su is 96k, while login su is 40k. Entire login package is around 2,5MB installed size though.)
- Also, runuser is available as essential.... use that instead?
SKIP: and pam?
- su (and runuser, and pkg:passwd) uses pam.
sysvinit-utils is Essential: yes 851747
- if everything using init-d-script just adds a dep this should be possible to make non-essential. (Alternatively, sysvinit deps on sysvinit-utils and then everything shipping an init-d-script based init script *must* ship a masking native unit file.)
very commonly used "pidof" utility currently shipped in sysvinit-utils, move to using procps implementation and ship a separate essential procps-base package? 810018 ; What's the point of this shuffling (instead of a possible elimination) of Essential packages, besides possibly getting rid of sysvinit packages from the system?
DONE: Make passwd deinstallable
- passwd is Priority: required, so will be part of minbase. Currently not deinstallable because of libuuid1 depending on it.
- libuuid1 dependency is because of postinst migration code, which is obsolete. Drop the postinst migration code in libuuid1 (and uuid-runtime) and drop the passwd dependency.
- possibly also consider if passwd should be lowered to Priority: important
- Making passwd deinstallable would also allow deinstalling libsemanage1, libsemanage-common, libsepol1, libustr-1.0-1
Fixes pending in post-stretch branch: https://anonscm.debian.org/cgit/collab-maint/pkg-util-linux.git/log/?h=wip/master-cleanup
SKIP: libbz2-1.0
- Required by dpkg and libsemanage1
- dpkg recently had compressing in bz2 format deprecated:
dpkg seems to support launching external (de)compressors when built without native support: https://anonscm.debian.org/cgit/dpkg/dpkg.git/tree/lib/dpkg/compress.c#n50
- libsemanage1 doesn't seem to use bzip2 decompression in a couple of places and doesn't seem to have any fallback handling... but maybe possible to not need libsemanage1 at all, see passwd point above.
DONE: Consider splitting fdisk into separate package
- Splitting sfdisk, cfdisk and fdisk out of the util-linux package could allow for the fdisk tools to be deinstallable. This would then allow deinstalling libfdisk1.
Note: cfdisk and pg are the only util-linux tools needing libncursesw5 and pg is deprecated so we should probably consider stop shipping pg. This would allow also deinstalling libncursesw5.
- libsystemd0
- libsystemd0 brings in liblz4-1, libgcrypt20 + libgpg-error0 (and liblzma5 together with dpkg).
- libsystemd0 needed by lslogins (util-linux) and logger (bsdutils).
- lslogins is new and virtually unused, maybe it can be moved to a non-essential package to get rid of util-linux dep on libsystemd0.
- bsdutils maybe can be made non-essential, but logger is used by very many packages in the archive which would then need to add a dep on bsdutils.
- mawk
- awk is used in many scripts, including the libc6 preinst, so awk needs to be pseudo-essential. Hence base-files Pre-Depends: awk.
- debootstrap cannot resolve virtual dependencies, so mawk has Priority: required to ensure debootstrap downloads and installs it.
Could be replaced by original-awk, but debootstrap currently has mawk hardcoded (861343).
See also upstream shaming us under "Related Links": http://invisible-island.net/mawk/mawk.html
Other priority changes for regular installs (important is part of regular default install):
blends-tasks (846002)
debconf-i18n: important -> standard
- dmidecode
- gnupg could maybe also be downgraded again (standard or even optional). apt is back to gpgv.
Appendix a - complete list of packages in 'minbase':
adduser apt base-files base-passwd bash bsdutils coreutils dash debconf debian-archive-keyring debianutils diffutils dpkg e2fslibs:amd64 e2fsprogs findutils gcc-5-base:amd64 gcc-6-base:amd64 gpgv grep gzip hostname init-system-helpers libacl1:amd64 libapt-pkg5.0:amd64 libattr1:amd64 libaudit-common libaudit1:amd64 libblkid1:amd64 libbz2-1.0:amd64 libc-bin libc6:amd64 libcap-ng0:amd64 libcomerr2:amd64 libdb5.3:amd64 libdebconfclient0:amd64 libfdisk1:amd64 libgcc1:amd64 libgcrypt20:amd64 libgpg-error0:amd64 liblz4-1:amd64 liblzma5:amd64 libmount1:amd64 libncursesw5:amd64 libpam-modules:amd64 libpam-modules-bin libpam-runtime libpam0g:amd64 libpcre3:amd64 libselinux1:amd64 libsemanage-common libsemanage1:amd64 libsepol1:amd64 libsmartcols1:amd64 libss2:amd64 libstdc++6:amd64 libsystemd0:amd64 libtinfo5:amd64 libudev1:amd64 libustr-1.0-1:amd64 libuuid1:amd64 login lsb-base mawk mount multiarch-support ncurses-base ncurses-bin passwd perl-base sed sensible-utils sysvinit-utils tar tzdata util-linux zlib1g:amd64
Appendix b - easily deinstallable from minbase
These packages can be deinstalled and is gone from a minbase if you just dpkg --purge them:
adduser apt debian-archive-keyring gcc-5-base gcc-6-base gpgv libapt-pkg5.0 libffi6 libgmp10 libgnutls30 libhogweed4 libidn2-0 libnettle6 libp11-kit0 libsemanage-common libsemanage1 libsepol1 libstdc++6 libtasn1-6 libunistring2 libustr-1.0-1 lsb-base passwd tzdata
(ie. they are only installed in minbase because of their Priority: required status or debootstrap pulling them in specifically.)
These are the reasons dpkg lists for not being able to purge the remaining ones:
====== base-files dpkg: error processing package base-files (--purge): this is an essential package; it should not be removed Errors were encountered while processing: base-files ====== base-passwd dpkg: error processing package base-passwd (--purge): this is an essential package; it should not be removed Errors were encountered while processing: base-passwd ====== bash dpkg: error processing package bash (--purge): this is an essential package; it should not be removed Errors were encountered while processing: bash ====== bsdutils dpkg: error processing package bsdutils (--purge): this is an essential package; it should not be removed Errors were encountered while processing: bsdutils ====== coreutils dpkg: error processing package coreutils (--purge): this is an essential package; it should not be removed Errors were encountered while processing: coreutils ====== dash dpkg: error processing package dash (--purge): this is an essential package; it should not be removed Errors were encountered while processing: dash ====== debconf dpkg: dependency problems prevent removal of debconf: libpam0g:amd64 depends on debconf (>= 0.5) | debconf-2.0; however: Package debconf is to be removed. Package debconf-2.0 is not installed. Package debconf which provides debconf-2.0 is to be removed. libpam-modules:amd64 depends on debconf (>= 0.5) | debconf-2.0; however: Package debconf is to be removed. Package debconf-2.0 is not installed. Package debconf which provides debconf-2.0 is to be removed. libpam-runtime depends on debconf (>= 0.5) | debconf-2.0; however: Package debconf is to be removed. Package debconf-2.0 is not installed. Package debconf which provides debconf-2.0 is to be removed. libpam-runtime depends on debconf (>= 1.5.19) | cdebconf; however: Package debconf is to be removed. Package cdebconf is not installed. libpam-runtime depends on debconf (>= 0.5) | debconf-2.0; however: Package debconf is to be removed. Package debconf-2.0 is not installed. Package debconf which provides debconf-2.0 is to be removed. libpam-runtime depends on debconf (>= 1.5.19) | cdebconf; however: Package debconf is to be removed. Package cdebconf is not installed. libpam0g:amd64 depends on debconf (>= 0.5) | debconf-2.0; however: Package debconf is to be removed. Package debconf-2.0 is not installed. Package debconf which provides debconf-2.0 is to be removed. libpam-modules:amd64 depends on debconf (>= 0.5) | debconf-2.0; however: Package debconf is to be removed. Package debconf-2.0 is not installed. Package debconf which provides debconf-2.0 is to be removed. libpam-runtime depends on debconf (>= 0.5) | debconf-2.0; however: Package debconf is to be removed. Package debconf-2.0 is not installed. Package debconf which provides debconf-2.0 is to be removed. libpam-runtime depends on debconf (>= 1.5.19) | cdebconf; however: Package debconf is to be removed. Package cdebconf is not installed. dpkg: error processing package debconf (--purge): dependency problems - not removing Errors were encountered while processing: debconf ====== debianutils dpkg: error processing package debianutils (--purge): this is an essential package; it should not be removed Errors were encountered while processing: debianutils ====== diffutils dpkg: error processing package diffutils (--purge): this is an essential package; it should not be removed Errors were encountered while processing: diffutils ====== dpkg dpkg: error processing package dpkg (--purge): this is an essential package; it should not be removed Errors were encountered while processing: dpkg ====== e2fslibs:amd64 dpkg: dependency problems prevent removal of e2fslibs:amd64: e2fsprogs depends on e2fslibs (= 1.43.4-2). dpkg: error processing package e2fslibs:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: e2fslibs:amd64 ====== e2fsprogs dpkg: error processing package e2fsprogs (--purge): this is an essential package; it should not be removed Errors were encountered while processing: e2fsprogs ====== findutils dpkg: error processing package findutils (--purge): this is an essential package; it should not be removed Errors were encountered while processing: findutils ====== gcc-7-base:amd64 dpkg: dependency problems prevent removal of gcc-7-base:amd64: libgcc1:amd64 depends on gcc-7-base (= 7.1.0-9). dpkg: error processing package gcc-7-base:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: gcc-7-base:amd64 ====== grep dpkg: error processing package grep (--purge): this is an essential package; it should not be removed Errors were encountered while processing: grep ====== gzip dpkg: error processing package gzip (--purge): this is an essential package; it should not be removed Errors were encountered while processing: gzip ====== hostname dpkg: error processing package hostname (--purge): this is an essential package; it should not be removed Errors were encountered while processing: hostname ====== init-system-helpers dpkg: error processing package init-system-helpers (--purge): this is an essential package; it should not be removed Errors were encountered while processing: init-system-helpers ====== libacl1:amd64 dpkg: dependency problems prevent removal of libacl1:amd64: tar depends on libacl1 (>= 2.2.51-8). coreutils depends on libacl1 (>= 2.2.51-8). dpkg: error processing package libacl1:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libacl1:amd64 ====== libattr1:amd64 dpkg: dependency problems prevent removal of libattr1:amd64: libacl1:amd64 depends on libattr1 (>= 1:2.4.46-8). coreutils depends on libattr1 (>= 1:2.4.46-8). dpkg: error processing package libattr1:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libattr1:amd64 ====== libaudit-common dpkg: dependency problems prevent removal of libaudit-common: libaudit1:amd64 depends on libaudit-common (>= 1:2.7.7-1). dpkg: error processing package libaudit-common (--purge): dependency problems - not removing Errors were encountered while processing: libaudit-common ====== libaudit1:amd64 dpkg: dependency problems prevent removal of libaudit1:amd64: login depends on libaudit1 (>= 1:2.2.1). libpam0g:amd64 depends on libaudit1 (>= 1:2.2.1). libpam-modules:amd64 depends on libaudit1 (>= 1:2.2.1). libpam-modules-bin depends on libaudit1 (>= 1:2.2.1). dpkg: error processing package libaudit1:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libaudit1:amd64 ====== libblkid1:amd64 dpkg: dependency problems prevent removal of libblkid1:amd64: util-linux depends on libblkid1 (>= 2.25). libmount1:amd64 depends on libblkid1 (>= 2.17.2). e2fsprogs depends on libblkid1 (>= 2.17.2). libfdisk1:amd64 depends on libblkid1 (>= 2.24.2). mount depends on libblkid1 (>= 2.17.2). dpkg: error processing package libblkid1:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libblkid1:amd64 ====== libbz2-1.0:amd64 dpkg: dependency problems prevent removal of libbz2-1.0:amd64: dpkg depends on libbz2-1.0. dpkg: error processing package libbz2-1.0:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libbz2-1.0:amd64 ====== libc-bin dpkg: error processing package libc-bin (--purge): this is an essential package; it should not be removed Errors were encountered while processing: libc-bin ====== libc6:amd64 dpkg: dependency problems prevent removal of libc6:amd64: libsmartcols1:amd64 depends on libc6 (>= 2.17). sed depends on libc6 (>= 2.14). util-linux depends on libc6 (>= 2.15). libgcc1:amd64 depends on libc6 (>= 2.14). ncurses-bin depends on libc6 (>= 2.14). libacl1:amd64 depends on libc6 (>= 2.14). login depends on libc6 (>= 2.14). libmount1:amd64 depends on libc6 (>= 2.17). libcap-ng0:amd64 depends on libc6 (>= 2.8). libpam0g:amd64 depends on libc6 (>= 2.14). findutils depends on libc6 (>= 2.17). libcomerr2:amd64 depends on libc6 (>= 2.17). libpam-modules:amd64 depends on libc6 (>= 2.15). diffutils depends on libc6 (>= 2.17). dpkg depends on libc6 (>= 2.14). libselinux1:amd64 depends on libc6 (>= 2.14). libdebconfclient0:amd64 depends on libc6 (>= 2.4). sysvinit-utils depends on libc6 (>= 2.14). libc-bin depends on libc6 (>> 2.24). libc-bin depends on libc6 (<< 2.25). libc-bin depends on libc6 (>> 2.24). libc-bin depends on libc6 (<< 2.25). libgpg-error0:amd64 depends on libc6 (>= 2.15). libblkid1:amd64 depends on libc6 (>= 2.17). libbz2-1.0:amd64 depends on libc6 (>= 2.4). tar depends on libc6 (>= 2.17). e2fsprogs depends on libc6 (>= 2.14). coreutils depends on libc6 (>= 2.17). libpcre3:amd64 depends on libc6 (>= 2.14). libfdisk1:amd64 depends on libc6 (>= 2.17). libsystemd0:amd64 depends on libc6 (>= 2.17). mount depends on libc6 (>= 2.17). dash depends on libc6 (>= 2.14). bsdutils depends on libc6 (>= 2.16). gzip depends on libc6 (>= 2.17). mawk depends on libc6 (>= 2.14). multiarch-support depends on libc6 (>= 2.3.6-2). hostname depends on libc6 (>= 2.4). zlib1g:amd64 depends on libc6 (>= 2.14). libdb5.3:amd64 depends on libc6 (>= 2.17). libuuid1:amd64 depends on libc6 (>= 2.4). bash depends on libc6 (>= 2.15). libncursesw5:amd64 depends on libc6 (>= 2.14). libgcrypt20:amd64 depends on libc6 (>= 2.15). debianutils depends on libc6 (>= 2.15). liblz4-1:amd64 depends on libc6 (>= 2.14). e2fslibs:amd64 depends on libc6 (>= 2.17). base-passwd depends on libc6 (>= 2.8). grep depends on libc6 (>= 2.14). libpam-modules-bin depends on libc6 (>= 2.14). liblzma5:amd64 depends on libc6 (>= 2.17). libss2:amd64 depends on libc6 (>= 2.17). libattr1:amd64 depends on libc6 (>= 2.4). libudev1:amd64 depends on libc6 (>= 2.17). perl-base depends on libc6 (>= 2.23). libtinfo5:amd64 depends on libc6 (>= 2.16). libaudit1:amd64 depends on libc6 (>= 2.14). dpkg: error processing package libc6:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libc6:amd64 ====== libcap-ng0:amd64 dpkg: dependency problems prevent removal of libcap-ng0:amd64: libaudit1:amd64 depends on libcap-ng0. dpkg: error processing package libcap-ng0:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libcap-ng0:amd64 ====== libcomerr2:amd64 dpkg: dependency problems prevent removal of libcomerr2:amd64: e2fsprogs depends on libcomerr2 (>= 1.42~WIP-2011-10-05-1). libss2:amd64 depends on libcomerr2. dpkg: error processing package libcomerr2:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libcomerr2:amd64 ====== libdb5.3:amd64 dpkg: dependency problems prevent removal of libdb5.3:amd64: libpam-modules:amd64 depends on libdb5.3. dpkg: error processing package libdb5.3:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libdb5.3:amd64 ====== libdebconfclient0:amd64 dpkg: dependency problems prevent removal of libdebconfclient0:amd64: base-passwd depends on libdebconfclient0 (>= 0.145). dpkg: error processing package libdebconfclient0:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libdebconfclient0:amd64 ====== libfdisk1:amd64 dpkg: dependency problems prevent removal of libfdisk1:amd64: util-linux depends on libfdisk1 (>= 2.29~rc2). dpkg: error processing package libfdisk1:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libfdisk1:amd64 ====== libgcc1:amd64 dpkg: dependency problems prevent removal of libgcc1:amd64: libc6:amd64 depends on libgcc1. dpkg: error processing package libgcc1:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libgcc1:amd64 ====== libgcrypt20:amd64 dpkg: dependency problems prevent removal of libgcrypt20:amd64: libsystemd0:amd64 depends on libgcrypt20 (>= 1.7.0). dpkg: error processing package libgcrypt20:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libgcrypt20:amd64 ====== libgpg-error0:amd64 dpkg: dependency problems prevent removal of libgpg-error0:amd64: libgcrypt20:amd64 depends on libgpg-error0 (>= 1.14). dpkg: error processing package libgpg-error0:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libgpg-error0:amd64 ====== liblz4-1:amd64 dpkg: dependency problems prevent removal of liblz4-1:amd64: libsystemd0:amd64 depends on liblz4-1 (>= 0.0~r113). dpkg: error processing package liblz4-1:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: liblz4-1:amd64 ====== liblzma5:amd64 dpkg: dependency problems prevent removal of liblzma5:amd64: dpkg depends on liblzma5 (>= 5.2.2). libsystemd0:amd64 depends on liblzma5 (>= 5.1.1alpha+20120614). dpkg: error processing package liblzma5:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: liblzma5:amd64 ====== libmount1:amd64 dpkg: dependency problems prevent removal of libmount1:amd64: util-linux depends on libmount1 (>= 2.25). mount depends on libmount1 (>= 2.25). dpkg: error processing package libmount1:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libmount1:amd64 ====== libncursesw5:amd64 dpkg: dependency problems prevent removal of libncursesw5:amd64: util-linux depends on libncursesw5 (>= 6). dpkg: error processing package libncursesw5:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libncursesw5:amd64 ====== libpam-modules:amd64 dpkg: dependency problems prevent removal of libpam-modules:amd64: login depends on libpam-modules (>= 1.1.8-1). libpam-runtime depends on libpam-modules (>= 1.0.1-6). dpkg: error processing package libpam-modules:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libpam-modules:amd64 ====== libpam-modules-bin dpkg: dependency problems prevent removal of libpam-modules-bin: libpam-modules:amd64 depends on libpam-modules-bin (= 1.1.8-3.6). dpkg: error processing package libpam-modules-bin (--purge): dependency problems - not removing Errors were encountered while processing: libpam-modules-bin ====== libpam-runtime dpkg: dependency problems prevent removal of libpam-runtime: login depends on libpam-runtime. dpkg: error processing package libpam-runtime (--purge): dependency problems - not removing Errors were encountered while processing: libpam-runtime ====== libpam0g:amd64 dpkg: dependency problems prevent removal of libpam0g:amd64: util-linux depends on libpam0g (>= 0.99.7.1). login depends on libpam0g (>= 0.99.7.1). libpam-modules:amd64 depends on libpam0g (>= 1.1.3-2). libpam-modules-bin depends on libpam0g (>= 0.99.7.1). dpkg: error processing package libpam0g:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libpam0g:amd64 ====== libpcre3:amd64 dpkg: dependency problems prevent removal of libpcre3:amd64: libselinux1:amd64 depends on libpcre3. grep depends on libpcre3. dpkg: error processing package libpcre3:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libpcre3:amd64 ====== libselinux1:amd64 dpkg: dependency problems prevent removal of libselinux1:amd64: sed depends on libselinux1 (>= 1.32). util-linux depends on libselinux1 (>= 2.6-3~). libmount1:amd64 depends on libselinux1 (>= 2.6-3~). findutils depends on libselinux1 (>= 1.32). libpam-modules:amd64 depends on libselinux1 (>= 2.1.9). dpkg depends on libselinux1 (>= 2.3). tar depends on libselinux1 (>= 1.32). coreutils depends on libselinux1 (>= 2.1.13). libsystemd0:amd64 depends on libselinux1 (>= 2.1.9). mount depends on libselinux1 (>= 2.6-3~). libpam-modules-bin depends on libselinux1 (>= 1.32). dpkg: error processing package libselinux1:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libselinux1:amd64 ====== libsmartcols1:amd64 dpkg: dependency problems prevent removal of libsmartcols1:amd64: util-linux depends on libsmartcols1 (>= 2.28~rc1). mount depends on libsmartcols1 (>= 2.28~rc1). dpkg: error processing package libsmartcols1:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libsmartcols1:amd64 ====== libss2:amd64 dpkg: dependency problems prevent removal of libss2:amd64: e2fsprogs depends on libss2 (>= 1.34-1). dpkg: error processing package libss2:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libss2:amd64 ====== libsystemd0:amd64 dpkg: dependency problems prevent removal of libsystemd0:amd64: util-linux depends on libsystemd0. bsdutils depends on libsystemd0. dpkg: error processing package libsystemd0:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libsystemd0:amd64 ====== libtinfo5:amd64 dpkg: dependency problems prevent removal of libtinfo5:amd64: util-linux depends on libtinfo5 (>= 6). ncurses-bin depends on libtinfo5 (>= 6.0+20170715). ncurses-bin depends on libtinfo5 (<< 6.1~). ncurses-bin depends on libtinfo5 (>= 6.0+20170715). ncurses-bin depends on libtinfo5 (<< 6.1~). bash depends on libtinfo5 (>= 6). libncursesw5:amd64 depends on libtinfo5 (= 6.0+20170715-2). dpkg: error processing package libtinfo5:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libtinfo5:amd64 ====== libudev1:amd64 dpkg: dependency problems prevent removal of libudev1:amd64: util-linux depends on libudev1 (>= 183). mount depends on libudev1 (>= 183). dpkg: error processing package libudev1:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libudev1:amd64 ====== libuuid1:amd64 dpkg: dependency problems prevent removal of libuuid1:amd64: util-linux depends on libuuid1 (>= 2.16). libblkid1:amd64 depends on libuuid1 (>= 2.16). e2fsprogs depends on libuuid1 (>= 2.16). libfdisk1:amd64 depends on libuuid1 (>= 2.16). dpkg: error processing package libuuid1:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: libuuid1:amd64 ====== login dpkg: error processing package login (--purge): this is an essential package; it should not be removed Errors were encountered while processing: login ====== mawk dpkg: dependency problems prevent removal of mawk: base-files depends on awk; however: Package awk is not installed. Package mawk which provides awk is to be removed. dpkg: error processing package mawk (--purge): dependency problems - not removing Errors were encountered while processing: mawk ====== mount dpkg: error processing package mount (--purge): this is an essential package; it should not be removed Errors were encountered while processing: mount ====== multiarch-support dpkg: dependency problems prevent removal of multiarch-support: libpcre3:amd64 depends on multiarch-support. dpkg: error processing package multiarch-support (--purge): dependency problems - not removing Errors were encountered while processing: multiarch-support ====== ncurses-base dpkg: error processing package ncurses-base (--purge): this is an essential package; it should not be removed Errors were encountered while processing: ncurses-base ====== ncurses-bin dpkg: error processing package ncurses-bin (--purge): this is an essential package; it should not be removed Errors were encountered while processing: ncurses-bin ====== perl-base dpkg: error processing package perl-base (--purge): this is an essential package; it should not be removed Errors were encountered while processing: perl-base ====== sed dpkg: error processing package sed (--purge): this is an essential package; it should not be removed Errors were encountered while processing: sed ====== sensible-utils dpkg: dependency problems prevent removal of sensible-utils: debianutils depends on sensible-utils. dpkg: error processing package sensible-utils (--purge): dependency problems - not removing Errors were encountered while processing: sensible-utils ====== sysvinit-utils dpkg: error processing package sysvinit-utils (--purge): this is an essential package; it should not be removed Errors were encountered while processing: sysvinit-utils ====== tar dpkg: error processing package tar (--purge): this is an essential package; it should not be removed Errors were encountered while processing: tar ====== util-linux dpkg: error processing package util-linux (--purge): this is an essential package; it should not be removed Errors were encountered while processing: util-linux ====== zlib1g:amd64 dpkg: dependency problems prevent removal of zlib1g:amd64: util-linux depends on zlib1g (>= 1:1.1.4). dpkg depends on zlib1g (>= 1:1.1.4). dpkg: error processing package zlib1g:amd64 (--purge): dependency problems - not removing Errors were encountered while processing: zlib1g:amd64
Appendix c - remaining non-deinstallable packages
Here's a list of the installed packages sorted by size in a --variant=minbase chroot after trying to deinstall as much as possible (ie. appendix b):
# dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -nr
15103 coreutils
10682 libc6
7543 perl-base
6745 dpkg
5798 bash
4022 e2fsprogs
3443 util-linux
3365 libc-bin
2770 tar
2747 login
1880 findutils
1814 libdb5.3
1327 diffutils
1263 libgcrypt20
1035 grep
1016 libpam-runtime
874 libpam-modules
799 sed
668 libpcre3
654 libsystemd0
576 libgpg-error0
561 debconf
556 ncurses-bin
488 libtinfo5
470 libfdisk1
449 e2fslibs
445 mount
404 libmount1
368 libblkid1
347 ncurses-base
347 libncursesw5
338 liblzma5
333 base-files
258 libsmartcols1
239 gcc-7-base
239 bsdutils
231 gzip
229 libpam0g
229 base-passwd
220 multiarch-support
220 libpam-modules-bin
214 libudev1
213 debianutils
209 libselinux1
204 dash
183 mawk
157 libaudit1
156 zlib1g
131 init-system-helpers
110 sysvinit-utils
108 libgcc1
106 libuuid1
96 libbz2-1.0
95 libss2
93 liblz4-1
83 libcomerr2
67 libdebconfclient0
62 sensible-utils
62 libacl1
47 hostname
43 libcap-ng0
42 libattr1
32 libaudit-common
Appendix d - space of locales in minbase/required packages
The breakdown of all of the packages with locale files in the minbase set in Debian Jessie. The savings (in kilobytes of installed size) if we were to split out their locale files. The cummulative savings if we split the top N packages.
Package |
Savings |
Cummulative Savings |
Percentage |
coreutils |
8052 |
8052 |
24.91 |
dpkg |
4620 |
12672 |
39.20 |
bash |
3744 |
16416 |
50.78 |
gnupg |
3424 |
19840 |
61.37 |
e2fsprogs |
1776 |
21616 |
66.86 |
tar |
1680 |
23296 |
72.06 |
shadow |
1632 |
24928 |
77.11 |
apt |
1528 |
26456 |
81.84 |
libapt-pkg4.12 |
1052 |
27508 |
85.09 |
Linux-PAM |
796 |
28304 |
87.55 |
findutils |
756 |
29060 |
89.89 |
grep |
636 |
29696 |
91.86 |
diffutils |
620 |
30316 |
93.78 |
debconf |
596 |
30912 |
95.62 |
adduser |
444 |
31356 |
96.99 |
sed |
428 |
31784 |
98.32 |
libgpg-error |
388 |
32172 |
99.52 |
systemd |
84 |
32256 |
99.78 |
acl |
72 |
32328 |
100.00 |
Source: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=474540#77
