[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#614708: libc6 could just Recommends libc-bin



Package: libc6
Version: 2.11.2-11
Severity: wishlist

Looking carefully at the contents of libc-bin, it appears that libc6
could just Recommends libc-bin, rather than having a Depends on it.
Specifically, taking the contents of libc-bin piece by piece:

/etc/bindresvport.blacklist

Not required to run programs, just a workaround for a conflict between
RPC and a handful of services.

/etc/ld.so.conf.d/libc.conf

Just adds /usr/local/lib; not a required component of a system.

/etc/gai.conf

Consists entirely of commented-out defaults.

/sbin/ldconfig

Maintaining ld.so.cache makes the system run faster, but the system will
run without it.  The only caveat: any library packages would need to
only run it if it exists.

/usr/bin/catchsegv
/usr/bin/getconf
/usr/bin/getent
/usr/bin/iconv
/usr/bin/ldd
/usr/bin/localedef
/usr/bin/locale
/usr/bin/tzselect
/usr/bin/rpcinfo
/usr/bin/zdump

None required for a running system, just generally useful.

/usr/lib
/usr/lib/pt_chown

Not required for a running system, just useful.

/usr/sbin/iconvconfig
/usr/sbin/zic

Not required for a running system, just useful.

/usr/share/man/*

Helpful documentation but not required to run.

/usr/share/doc/libc-bin/*

Helpful documentation but not required to run.

/usr/share/lintian/overrides/libc-bin

Obviously not required.


So, in general, nothing in libc-bin has to exist for the system to work,
and only one thing (ldconfig) needs some extra care to make sure the
system can cope without its presence.

On the flipside, though, libc-bin probably needs "Depends: libc6", since
it includes various programs that need libc6.

(Related to this: neither libc6 nor libc-bin has "Essential: yes", so
programs already can't count on them without a dependency.)


This came up when trying to build a *very* minimal system with
debootstrap, and auditing all the dependencies very carefully.

- Josh Triplett and Jamey Sharp

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.37-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages libc6 depends on:
ii  libc-bin                      2.11.2-11  Embedded GNU C Library: Binaries
ii  libgcc1                       1:4.4.5-12 GCC support library

libc6 recommends no packages.

Versions of packages libc6 suggests:
ii  debconf [debconf-2.0]         1.5.38     Debian configuration management sy
ii  glibc-doc                     2.11.2-11  Embedded GNU C Library: Documentat
ii  locales                       2.11.2-11  Embedded GNU C Library: National L

-- debconf information excluded



Reply to: