Found this on the PclinuxOS forum, I thought it may be the same person.
PCLinuxOS-Forums
Fun => Software Discussion => Topic started by: NoIBnds on March 26, 2018, 07:58:04 AM
Title: SysV init - Init's alive!
Post by: NoIBnds on March 26, 2018, 07:58:04 AM
Saw this, thought it might be helpful.
http://distrowatch.org/weekly.php?issue ... 26#opinion (
http://distrowatch.org/weekly.php?issue ... 26#opinion)
Now, whether you like SysV init (hereafter referred to as simply "init" to separate it from OpenRC or systemd) you can probably appreciate that I was curious as to who, if anyone, was maintaining init's ageing codebase. There had not been a new, official release of init for several years. Was this because init was small and old with a codebase that got so much attention that any bugs were squashed years ago? Were the developers quietly pushing out patches for old versions without publishing a new release? Was the code simply being left to rot? I decided that I should find out since init was at the core of several distributions I was using.
At first glance, the upstream project appeared to be dead. Development had continued in the code repositories for a time after the last release (version 2.88), but the bug tracker and mailing list painted a picture of a project which had gradually run out of stream a few years ago. However, people had continued checking the code and writing patches. I found that several Linux distributions maintained multiple patches to fix small bugs, clean up documentation or improve performance. People had gone looking through the code and fixed problems. Then, without activity upstream, the developers had added their patches to their distributions' init packages and moved on.
The result was that there were several distributions running init, but some were running slightly different versions of init. Logs from init might look a little different across Linux distributions, manual pages might have different explanations for certain features. While it was good people had been fixing init as needed, those fixes were not being picked up and shared by the rest of the Linux ecosystem.
I wanted to improved on this situation. Relatively few Linux distributions may be running SysV init these days, but projects like antiX, Devuan and others continue to ship the classic init software. Other projects still use init, if only as a jumping off point for OpenRC to run. I thought it would be best if these conservative systems could all benefit from bug fixes, documentation improvements and new features. Since I hoped to unify the various branches of changes that were forming, I wanted to avoid forking init, so I approached the upstream team. They were welcoming and I became the newest member of their team. Then, with some guidance and kind words from developers who had worked on init in the past, I got to work combing through the patches and bug reports.
It was slow going working on an unfamiliar codebase and trying to stitch fixes together. Sometimes distributions had fixed the same problem, but had done it differently and I tried to put together the best solutions from the bug reports and patches available. At the end of February I was able to upload a new beta package of init for testing. Trying out the new beta on various test systems, both x86 and ARM, has gone well and a stable release should be available soon.
There are a few reasons I'm bringing the new work going into init to light. The first is I am hoping Linux distributions will test and adopt the new release that is about to be published. It would be nice to get everyone using the same code with the same fixes. That will hopefully make it easier to distributions to share improvements in the future and for users to submit bug reports.
The second reason is working on projects like this takes time. Working on patches and trying to find (and test) speed improvements on init takes resources and effort and it would go more smoothly if the project was funded, by either individuals, companies or downstream distributions that use the code. The work will get done with or without help, but I hope it can be done quicker with the support of people who are still using init for one reason or another.
The third reason is I would like to invite people to submit issue reports and feature requests to the upstream bug tracker. SysV init was sleeping, but it's not dead and can be improved to suit its users' needs. I think something which put people off using systemd was that it introduced a revolution in init software while many people prefer a gradual evolution of technology, with small improvements rather than radical new designs. I would like to find out what people who are using init, or are considering using it, want from their init software.
EDIT: Sorry did not realise that this post is a copy of the distrowatch item from Jesse Smith.