Enrico Zini http://www.enricozini.org/ Enrico Zini Released launchtool 0.8 http://www.enricozini.org/sw/launchtool/launchtool-0.8/ http://www.enricozini.org/sw/launchtool/launchtool-0.8/ sw/launchtool tags/eng tags/pdo tags/sw Wed, 08 Jul 2009 14:23:30 +0200 2009-07-08T12:23:30Z <h1>Released launchtool 0.8</h1> <p>I have released <a href="http://www.enricozini.org/./sw/launchtool/launchtool-0.8.tar.gz">version 0.8</a> of <a href="http://www.enricozini.org/./sw/launchtool/">launchtool</a>. Changes are minor, mostly fixes to the autotools packaging.</p> <p>It is a good opportunity to document my intentions for future development: <a href="http://www.enricozini.org/./sw/launchtool/">launchtool</a> is a bit like start-stop-daemon. The differences are:</p> <ul> <li>launchtool is more featureful;</li> <li>start-stop-daemon is more tested.</li> </ul> <p>Ideally, everything should be reorganised so that one can use start-stop-daemon instead of <a href="http://www.enricozini.org/./sw/launchtool/">launchtool</a>, without losing features.</p> <p>The best way to do so, is to remove from <a href="http://www.enricozini.org/./sw/launchtool/">launchtool</a> those features that are in start-stop-daemon, and turn what remains into an application wrapper that handles restart policies and logging.</p> <p>Features that are already in start-stop-daemon:</p> <pre><code> -k, --kill[=signal] --check -d, --daemon, “daemon” -n, --no-daemon --pidfile, “pidfile” --no-pidfile --piddir=dir, “piddir” --chroot=dir, “root dir” --chdir=dir, “start dir” -u, --user=user, “user” -g, --group=group, “group” --umask=mask, “umask” </code></pre> <p>Features that can be implemented in a simple wrapper/supervisor command:</p> <pre><code> -L, --infinite-runs, “infinite runs” --no-infinite-runs --wait-times=t1,t2,... , “wait times” --good-running-time=seconds, “good running time” --forwarded-signals=sig1,sig2,... , “forwarded signals” --blocked-signals=sig1,sig2,... , “blocked signals” --limit-cpu=seconds, “cpu limit” --limit-file-size=1024b-blocks, “file size limit” --limit-data-memory=1024b-blocks, “data memory limit” --limit-process-count=count, “process count limit” --limit-open-files=count, “open files limit” --limit-core-size=1024b-blocks, “core size limit” --restrict-environment, “restrict environment” --no-restrict-environment --allowed-env-vars=var1,var2,... , “allowed env vars” --log-launchtool-output=target, “launchtool output” --log-launchtool-errors=target, “launchtool errors” --log-child-output=target, “command output” --log-child-errors=target, “command errors” --silent-restart-status=value, “silent restart status” --silent-restart-time=seconds, “silent restart time” --stats, “stats” --no-stats </code></pre> <p>I do not know when I will have time to dedicate to launchtool. Most of the work should be rather straightforward, as it's based on the existing code.</p> <p>Also, most of the code in common/ has now been cleaned up and is now maintained in the wibble library, so <a href="http://www.enricozini.org/./sw/launchtool/">launchtool</a>'s code can be made to shrink considerably.</p> <p>My time to work on it is limited, but I welcome patches, offers of group maintenance or offers to take over maintainership.</p>