On 28/09/2013 22:58, Alon Bar-Lev wrote: > As far as I read, the problem is with bluetooth keyboards? and some > other devices and locales, which are minor for this decision of > removing supportability. Especially for servers and for most of > workstations. Most sane configuration can be supported with separate > /. > > And of course there is the hidden systemd agenda, which is what I > suspect had more impact.
No, the problem is not bluetooth keyboards per se. That just happens to be a convenient example of the kind of problem anticipated. There is a tendency to use it as the only example, which reinforces the idea that BT keyboards are problem to be solved. The actual problem is better stated something like this: In the early stages of user-land setup (around the time when udev is getting it's act together), arbitrary code can run and that code can be in any arbitrary place, but there is no guarantee that that code is even accessible at the point when it is needed. The actual cause of this mess is the lack of standards on where to put stuff on Linux systems, and it forms a classic bootstrap problem. There has only ever been one way around that problem - define an exact entry point that is guaranteed to be in a specific state. For current userland this effectively means that everything that has traditionally been in bin, sbin and lib in / and /usr must be available as step 1. Technically, you could include /var/lib/ and maybe even /opt in there. but we can safely exclude those at this time as only a brain-dead moron would ever put init-critical code there. It's a fact of history that Linux packager and package devs have never managed to make up their minds where to put stuff. Just have a look at coreutils binaries - why are 60% of them in /usr? It's coreutils! And core isn't in the name because of a whim. So you have two choices: enforce a decent separation so that the problem doesn't happen, or enforce that all binaries are in one place where we can call it "the system". Every major OS out there does the latter, it's only Linux that tolerates this free for all wild wild west approach of stick anything anywhere and still expect it to work. Hint: it doesn't work. Duct-tape and bubblegum don't actually hold stuff together, no matter how much we try convince ourselves it does. This should actually have been done when MAKEDEV was phased out in favour of the now-defunct devfs, but it's never too late to fix design flaws that date back 30 years or more. So this brings us back to the essential technical problem that still needs to be solved on your machines: /usr needs to be available (and not only for BT keyboards) at the earliest possible opportunity - this is a technical constraint. To guarantee that, you need to either merge /usr with /, or use an initramfs to guarantee that /usr is available before anything else happens in userland. It *really* is that simple. If you have a better solution than my last two choices, then I am all ears. -- Alan McKinnon alan.mckin...@gmail.com