Generating in debian/rules, maybe?

Joachim Breitner nomeata at debian.org
Thu May 10 20:29:42 UTC 2007


Hi,

just a thought: Instead of setting up some install-time mechanism on the
user’s machine that creates the various init script files from our
meta-init-information, why not do it at build time?

I’d imagine some dh_metainit script that, givin a meta-init file,
creates all currently known init scripts, and just puts them in the
package. The benefit would be that we can rely on dpkg to install and
uninstall these very critical files and we don’t introduce a new point
of failure in the users’ systems.

One disadvantage is that we’d have several init script files in every
package. But that’s not too bad, as there will probably not be that many
init systems and init scripts tend to be rather short.

One advantage would be that people who set up embedded systems or
similar, and do not want the metainit infrastructure on their system,
would not have to create the init scripts themselves and copy it to the
embedded system, but just have to remove those files they don’t want
(which they are probably doing anyway, e.g. docs).

One disadvantage is that for a change in dh_metainit, a package
recompile with the new dh_metainit is necessary (but not necessarily a
new version). But I don’t think this is too bad, especially as we can
ask the buildd’s to do that, if necessary, or so I’ve heard.

One advantage is that debugging user problems is easier. Instead of
having to find out what version of the daemon, of metainit and of
everything that might influence the way metainit works, we have exactly
one init script per daemon version package. Makes stuff easier.

One disadvantage would be that new init system scheme have a harder time
to be implemented everywhere: A new version of metainit would have to be
uploaded, and then we have to wait for every package to be uploaded
newly (or recompiled). For experimental init systems, though, the
maintainers can “just” grab all meta-init files from the source packages
(given a proper infrastructure), create them all and put them in one
package. 


So the bottom line is that we should rather burden ourself with the init
script creation and handling, and keep the user side simple.

Comments?

Greetings,
Joachim


-- 
Joachim "nomeata" Breitner
Debian Developer
  nomeata at debian.org | ICQ# 74513189 | GPG-Keyid: 4743206C
  JID: joachimbreitner at amessage.de | http://people.debian.org/~nomeata




More information about the initscripts-ng-devel mailing list