On Tue, Aug 26, 2014 at 07:15:46PM +0100, Peter Robinson wrote: > >> > What's the rationale here? I mean, we have so many dependencies, if > >> > you want to minimize them, you have a loooong way to go... > >> > >> When I bootstrapped Fedora for ARM way back when, I had to deal with > >> these dependencies. A lot. Finding a minimal set of RPMs to > > > > Well, Fedora is not a distribution that cares about whether it is easily > > bootstrappable. It never was a goal to be one. If you want to make it > > one, then that's fine, but that'd be something to make an official goal > > first, by going through FESCO... > > > > If you want a distro that is bootstrappable, the way that Gentoo is, or > > that Debian tries to be then that's OK. I personally don't think it is > > worth the effort though, as we don't have to bootstrap new archs every > > other week... > > I believe that's something that the Base working group is actually > actively trying to achieve, Phil or one of the members might be able > to comment further on their exact plans for this. I think splitting out a subpackage (let's call it systemd-filesystem for now) to reduce the dependencies would be useful. But it would have to be done properly, in a way that behaviour is preserved, i.e. that macros provided by /usr/lib/rpm/macros.d/macros.systemd continue to do something sensible. Currently the dependency ensures that when the system is bootstrapped, those packages are installed after systemd. The macros would have to be modified to give an identical result if systemd is installed later. Looking at the list, those macros call udevadm, journalctl, systemd-tmpfiles, systemd-sysusers, systemd-sysctl, systemd-binfmt. If systemd was not installed the calls to systemctl stop/daemon-reload/try-restart and udevadm control should become noops. Calls to systemd-binfmt, systemd-sysctl, systemd-tmpfiles --create can be noops too, with the understanding that the functionality will not be available until systemd is installed and those services (systemd-tmpfiles.service, systemd-binfmt.service, systemd-sysctl.service) are started. Calls to systemctl preset/disable and udevadm hwdb --update, systemd-sysusers, journalctl --update-catalog would have to tweaked so that they run without systemd. They already either do that or support that functionality with some switches, so it would be possible to tweak the macros to do that. If systemd was installed later, it would pick up the updated configuration from the filesystem. I'm rejecting the idea of reimplementing the functionality. I think it only makes sense is possible with existing binaries. With this assumption, it seems feasible to split out "systemd-filesystem", but it would have to contain systemctl, journalctl, udevadm, and systemd-sysusers binaries. It's hard to say exactly what dependencies would be shared with the main package, but probably almost all of the libraries, including cryptographic and compression and selinux... So I think that the savings would be modest. Probably the most important: dbus, pam, seccomp, audit. Also, this would not help the problem with arch bootstrapping, since everything would still be built from one source package. I'm not sure if people would still find that useful. Zbyszek -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct