Lots of changes behind the scenes. Not as many new definitions, although things will return to "normal" in the next month.

Done:
- - - - - - - -
+ New! Internal framework-neutral command grammar. Upon selecting a given framework, all scripts automatically use the correct start and check commands.

+ New! "Broken" daemon support. Daemons without proper "background" support now have a warning written to the daemon's log, and the run script aborts. If you want to continue with the daemon, remove the ./broken file from the definition and the script will launch. Typically this is used for services that don't support foreground operation.

+ New! Optional framework-neutral peer-level dependency handling.All dependencies will be included out-of-the-box. Dependencies are defined as any external program required to be running before the daemon defined can launch. It is recommended that it only be used when no dependency manager is available older frameworks, and you desire automatic start-up of dependent definitions. It is disabled by default, because it comes with certain caveats, notably: (a) you cannot change definition names and expect it to work, and (b) it provides a weak guarantee that dependencies are running, so it is possible to have race conditions or other failure states.

+ New! Dynamic run state directory creation. Definitions will now create /var/run/{daemon-name} upon startup with the correct permissions.

+ New definitions: ypbind, autofs, rsyslog, mini-httpd, rpcbind, shellinabox, slpd, gdomap, rarpd

+ Reworked definitions: forked-daapd, avahi-daemon, dbus, mpd, mouseemu, ntpd, munin-node (broken)

+ Several tweaks to the README file, including a compatibility chart for user-land tools.


In Progress:
- - - - - - - -
+ Merged all run templates that utilize /bin/sh into a single, master template. This was done after much deliberation - why spend time figuring out which one of a half-dozen different template scripts will have the feature you need, when you could just link one script and get on with life?

+ Use double indirection for ./run files to allow switching of template environments, i.e. it makes it possible to switch between /bin/sh and another arrangement. The ./run file in the definition will point to ../.run/run, which itself points to the actual template.

+ Look at supporting execline in parallel, although features like script-based dependency management will stop working.

+ Revisit all fgetty/agetty/mingetty and re-code them to support ./env settings.

+ Revisit all existing one-off scripts and see if they now qualify to be used with a template instead, and re-write them if possible.

+ Examine nosh to see if it can be supported as well.

+ Final push for 0.1 release, which will include 10% of defined definitions in Debian 7, all run templates stabilized, and all logging stabilized.


To-Do / Experimental:
- - - - - - - -
+ Think about ways to incorporate perp, which uses a different format of ./run file.

... plus all of the To-Do stuff from last month

As always, suggestions, comments, and ideas are welcome.

Reply via email to