Hello all,
>Date: Mon, 2 Dec 2019 10:13:01 +0100
>From: Edward Bartolo via Dng <dng@???>
>Dear All,
>
>Inits need to understand unit files, give them that functionality.
>That is far more efficient compared to what you are doing.
>
>Pseudo Code:
>1) check for the presence of a unit file
>2) if it exists
>a) branch to function to read unit file and run daemon
>b) if NOT execute shell script to run daemon
>
>Programming allows to create a configuration text file which tells an
>init to be aware of the existence of unit files. This can be used to
>minimize the incidence of bugs for cases where no unit files are used.
>The extra functionality can be debugged in separate functions.
I believe you are talking about Situation 1)( Give SysVInit the Knowledge about SystemD unitFiles.. )?
Indeed it seems more eficient, at Same time, it could be more dificult, than what we think of..
I think it will have to "be the future..", at uncertain time.. Or Debian Understands the mistake they are doing..
But there are there good reasoning responses to this thread..to name a few, Massimo Coppola, Denis Roio,Hendrik Boom..
There are also( as a short time response.. ) , a option to maintain a colection of Scripts in the repos, by Arnt Karlsen, and Dimitris..
Taking Massimo Coppola, Dimitris Observations, and others by new order of priority,
1) Maintain a copy of all init Files in theDevuan repos, just in Case.. asked by Arnt Karlsen, and Dimitris..
2) Develop a Translation of UnitFiles from SystemD to SysvInit( This proces is already Ongoing by viverna ? ), and generally accepted by all, including me..
Test it, optimize it, and understand deep, the pros and cons, of porting, and translating of unit files..
When process working like we like, step into 3).. Generally supported by Massimo Coppola, Denis Roio, Hendrik Boom, and myself, maybe more even..?
3) Depending of the knowledge acquired in 2),
Implement that into SysVinit, the translation, or Interpretation, of the UnitFiles..
Turn SysVInit capable to launch SystemD daemons, control them..
Associate each "Runlevel type, etc" of SystemD, and translate them to {0..6..1} of SysVInit( So that Devuan could be resilient to InitChanges.. ).
-> Add: At Same time, when this infraestructure will be created into SysVInit,
**Make it Generic**, and capable to accept more Init Systems,let's say Abstract, or Generic..
Intermediate Language( IR ) ?
Like LSB Scripts Headers( proposed by William (Bill) Moss ), or a refinement of it.. ?
In This process, at least, I would need to go into references made by Denis Roio, quoting bellow,
a) a DSL parser for the conversion of unitfiles to shell scripts
say "systemd2sysv".
b) an easy way to test the shell scripts generated, which is also
crucial to the task: the quality of the testing environment.
c) optionally, a way to repackage and test semi-automatically an
existing deb package undergoing this conversion.
I have experience writing DSL parsers and recommend using either:
d) stb_c_lexer by Sean Barrett, part of the STB C lib collection
e) libhammer by Meredith Patterson, part of langsec.org
more complex, but way more secure, not sure if this level of
security is needed however
I don't know if this is the correct order or priority..
Some of them could even be developed at the same time( in parallel ),
At least at some extent, then 3) needs to wait feedback from 2) ( observed by Massimo Coppola ).
--
Best Regards,
tux <tuxd3v@???>