Hi Arthur, Thanks for looking at this, and taking the time to give your feedback. - If Upstart isn't part of the base Debian install, I'd agree that dropping the init script doesn't make sense, although the race conditions that the Upstart scripts aim to address wouldn't be addressed. Do you know if an equivalent to the "wait-for-start" Upstart script is available in Debian? I don't think Upstart has any direct knowledge of other service management systems, but I think the only affected functionality would be the `service` command. The Ubuntu manpage for `service` indicates that the Upstart job will take precedence over a System V init script: http://manpages.ubuntu.com/manpages/precise/man8/service.8.html. Looks like the Debian version of `service` would simply ignore the Upstart script: http://manpages.debian.net/cgi-bin/man.cgi?query=service I'm going to have to do some research on how the two service management systems might co-exist. I think the minimum requirement for co-existence would be a high-level lock to make sure Upstart didn't try to start nslcd while the System V script was running, and vice versa. - I'm not sure I understand flock's -c option well enough to know what failure modes would result from its absence, although the manpage certainly seems to indicate it's necessary. It bothers me that my tests haven't failed with the -c option absent. From what I'm reading in the manpages, I'd expect to get a pretty noisy failure without the -c option present, since the `start` obviously not a valid file descriptor. I think I need to run more tests... The "start" command is indeed part of Upstart, though. - the libsasl2-modules-gssapi-mit | libsasl2-modules-gssapi-heimdal recommendation is present because one of those modules is required to perform GSS-API (in our case, Kerberos) authentication to an LDAP server. So, it's actually a requirement (not just a recommendation) for Kerberos authentication to the LDAP server. I think the ideal solution would a separate `nslcd-kerberos` package with Kerberos-related scripts and those recommendations as requirements. That change seemed outside the scope of the original bug report, though, so I didn't include it in the patch. I'm not sure my initial assessment is correct, though--thoughts? - good point regarding the checks for /etc/init.d/nscd: fixed - good point regarding the stopping of nscd in the post-stop script: it's been dropped. - leftover date commmand: fixed - if-up.d script's lack of non-Upstart environments noted. I think the fix will depend on how the service management system co-existence is implemented. - NSLCD_STATEDIR created before parsing: fixed - I'm not sure what you mean by "prestart or start missing". Are you thinking a pre-start script stanza is mandatory? - debian/rules tries to install nslcd-kerberos.upstart: fixed - Debian's lack of --upstart-only noted. (see comments regarding co-existence) - Passing --noscripts preventing nscld restart noted. (see comments regarding co-existence) - the post-start script in nslcd-k5start is invoked immediately after the main script starts, because we aren't using the `expect` stanza and daemonizing k5start (k5start doesn't seem to play nicely with Upstart's `expect` stanzas). So, if k5start is needed, the main script should continue running until the service is stopped. If k5start is not needed, the main script will terminate, which should cause the post-start script to terminate as well (see the clause that starts with "statusnow=`status`"). - tabs to spaces: changed. You and I obviously have different opinions of tabs vs. spaces, but there's much more important technical issues to be solved here. :)