Johannes Schauer writes: > With how merged-/usr is getting deployed via debootstrap, we are placing more > of the instructions of how a Debian system is supposed to be setup *outside* > of > the packages themselves (and into debootstrap). It would make a cleaner design > if we could have all necessary definitions of how to create a Debian chroot > from scratch (on a Debian system) in the packages *themselves* instead of > requiring code around the packages that is doing some magic setup (usually > debootstrap).
One could drop the magic setup if merged-/usr was mandatory: (1) have /bin -> /usr/bin symlinks shipped in base-files (2) have all packages install to /usr The additional complexity of having to setup symlinks outside the packaging system comes from supporting both merged and nonmerged setups. debootstrap or the usrmerge package implement some way to setup the symlink which would not be necessary if they were included in the packages; it would not be necessary if (1) was implemented (plus handling system upgrades from legacy installations). On merged-/usr systems, packages could just switch install location gradually; they would install to the same location anyway, no compat symlinks or maintainer script logic required. Ansgar