Re: RFS: GNU mcron, alternative cron, can run as normal user
First of all, I'm not a DD so I can't upload your package. But I have
some suggestions for your package.
David D. Smith wrote:
> Hi, GNU mcron is a 100% Vixie compatible cron daemon that can also be
> run on a per-user basis without setuid programs with many other useful
> features. I'm looking for a sponsor to examine and upload my packaging
> of mcron. My package is configured to completely replace the existing
> cron package.
> It may be said that Vixie cron isn't too bad and doesn't _need_ to be
> replaced, or that we have other cron replacements in Debian already
> and this one isn't needed. I disagree. My reasoning for packaging this
> alternative is that Vixie cron is difficult to audit software,
> i.e. there are clear security benefits from eliminating the
> system-wide crontab spool directory and setuid programs used to
> manipulate it. And the only other alternatives to Vixie cron currently
> available in Debian are fcron, which does not fully replace Vixie
> cron, and bcron, which also does not fully replace Vixie, has a very
> non-standard architecture prohibiting adoption, and doesn't even have
> a current maintainer.
> I've uploaded to mentors.debian.net. Here is the info from the ITP:
> * Package name : mcron
> Version : 1.0.1
> Upstream Author : Dale Mellor <email@example.com>
> * URL or Web page : http://www.gnu.org/software/mcron/
> * License : GNU GPL
> Description : Vixie cron replacement written in Guile.
> Mellor's cron is a 100% compatible replacement for Vixie cron. It
> supports Vixie cron's crontab files as well as a pure Scheme format
> for far greater flexibility in specifying when jobs should be
> run. Examples of specific features:
> * Supports finer time-points, i.e. seconds.
> * Times can be more or less regular, e.g. a job that runs every 17
> hours or a job that runs on the first Sunday of every month.
> * Times can be dynamic. Arbitrary Guile code can be provided to
> compute the next time that a job should be run. This could, for
> example, take system load into consideration.
> * User's crontabs can stay in their own home directories and each
> user can maintain multiple crontab files if desired.
> * Each user can run the daemon for himself if desired, removing the
> need for setuid programs to manipulate crontabs.
* I tried to build it in pbuilder and there is a missing dependency. It
is recommended to use pbuilder to see if you have all the dependencies
in Build-Depends in debian/control. ed and probably texinfo are missing.
* Did you run lintian on it ? There is a warning and a error.
* You have in Recommands mail-transfer-daemon, shouldn't that be
I am a bit worried about these things in the build log:
./mkinstalldirs -m 'u=rwx' /var/cron
mkdir -m u=rwx -p -- /var/cron
./mkinstalldirs -m 'u=rwx,og=rx' /var/run
./mkinstalldirs -m 'u=rwx,og=rx' /usr/share/guile/site
mkdir -m u=rwx,og=rx -p -- /usr/share/guile/site
./mkinstalldirs -m 'u=rwx,og=rx' /usr/share/guile/site/mcron
mkdir -m u=rwx,og=rx -p -- /usr/share/guile/site/mcron
You are installing these directories by doing dh_installdirs. And also
by this install target. And as I see, I think the install target does it
with hardcoded paths and not relative to the debian directory.
As far as I can see only the postinst is used, why then installing also
postrm, preinst and prerm ?
Take also a look at the debhelper programs that you use. There are some
that are unneeded for example: dh_installexamples.
Advice: Take a look at dh_install. You then can specify which files you
want to install and where. (I see a rm $(CURDIR)/debian/usr/bin/mcron
and then you install it in usr/sbin/)
Would be a nice program to see in debian.