Hi Laurent, First and foremost, thank you for working on s6! I see your point about the drop-in replacement. I was not familiar with the efforts of uselessd. It seems I am not the first one trying to have a usable system without systemd. :) If I understand your suggestion correctly you are thinking about having s6 as the init and using s6-rc for running the services. Would this approach keep systemd installed just to provide for services directly depending on it?
# rpm -q --requires openssh-server | grep systemd | sort -u libsystemd.so.0()(64bit) libsystemd.so.0(LIBSYSTEMD_209)(64bit) systemd-units I am not sure why any service would depend on these. Is there functionality in libsystemd.so.0 that an ssh service actually needs? I. On Mon, Jun 26, 2017 at 4:48 PM, Laurent Bercot <ska-supervis...@skarnet.org > wrote: > I have a crazy question about s6. Would it be possible to make systemd >> compatible? >> > > It all depends on what you mean by "compatible". > > There will never be full drop-in compatibility, because only systemd > can be drop-in compatible with systemd. It has been designed this way, > its architecture is a way of ensuring vendor lock-in. The most > successful "compatible systemd replacement" so far was uselessd, and > its author decided to put an end to the project when they realized how > infeasible, and pointless, the work was: when you follow the systemd > architecture, you end up with systemd, no way around it. > > What *would be* feasible, on the other hand, is a conversion tool > from systemd unit files to a s6 + s6-rc database. It is still a lot > of work, especially if one wants to implement all the systemd > idiosyncrasies, but it is doable. I can't guarantee the output of > such a conversion tool would be 100% compatible with the observed > behaviour under systemd (in particular, bug-compatibility would not > be ensured ;)) but it could probably be made to be close. nosh > already has such a converter; I haven't tested it. > > I am currently thinking of implementing a file format for > s6 + s6-rc + s6-linux-init service definition, in order to make it > easier for people used to OpenRC or systemd to implement services > with s6. This format probably cannot be systemd unit files, because > unit files follow the systemd architecture too closely; but it could > be a first step to a systemd-to-s6 conversion tool. > > > - the previous alternatives all failed to gain traction because there was >> too much effort to change systems around to use them >> > > That's not an argument, especially given the following one: > > - there is already too much effort went into systemd >> > > If people actually did the effort to write systemd unit files, there > is no reason why they can't do the effort to write service definitions > under a better format in order to have a better init system. The format > just needs to be friendlier than what the current s6 suite provides. > > Working on conversion tools is currently my priority with s6. As usual, > the limitation is my available free time. > > -- > Laurent > > -- *Istvan Szukacs* CTO +31647081521 <//+31647081521> +36 70 229 20 59 <http://+36702292059/> ist...@streambrightdata.com