there are chown/chgrp functions in src_install() and those will fail if those users don't exist.This is a fixed version http://www.netswarm.net/sendmail.fix.ebuild.tar.gz It also uses the queue runner feature and starts it as user smmmp instead of just one task as root
Could you provide some info on what (if any) changes are necessary for users upgrading to this version of sendmail? I have to admit that I'm not familiar with queue running.
Thank you very much, by the way. One technical comment: For adding a user you want to use pkg_preinst{}, not pkg_setup{}. The reason is that pkg_setup{} is not run when a .tbz2 package is installed. I'm adding raker to the CC list in case he's interested. I have it working here, but I would like it to have a bit more testing. Also, do the changes in the conf.d and init files break earlier sendmail ebuilds? If so, those need to be fixed (given new names in the files directory).
Ok maybe pkg_setup{} is a bad place for the adduser but pkg_preinst{} simply wont work. As already written in the report "make install" *needs* the smmsp user and group to work otherwise the chown/chgrp operations all fail. Ok now the queue runner thing (which is the default way of running sendmail since 8.11.x). It does not need different .cf or .mc files. You only need to launch sendmail with different options. I've put those options in the conf.d and init.d directories. If you use those new init script it will run out of the box with your old setup. Ofcourse this security feature uses the smmsp user/group. So it's important that the "make install" phase has those users available. Btw. the best workaround for the whole issue is putting smmsp in the standard passwd/group file. There are already less important and more unknown users in there. Why not this one?
I believe that a sensible way of managing daemon users/groups is something that we're still working on. Azarah, do you know the current status? My understanding was that pkg_preinst was run before pkg_unpack, but I might be wrong about that. If so, then perhaps we should have pkg_setup modified so that it runs for both binary and source installs. Carpaski?
function order from the ebuild.sh: ... src_compile() src_install() pkg_preinst() ... src_install() (make install) needs the uid/gid but they aren't there before pkg_preinst() is started
Out of town; reassigning
azarah, I'd like to have this added to the default passwd and group files user: smmsp group: smmsp I am not sure what UID or GID should be used for either of these as they are specific to sendmail. There is no default value.
I was always a big fan of UID/GID == bind port. Like 53 for bind, 21 for ftp or 22 for ssh but 25 has already been wasted to "at" :). Well technicaly it doesn't matter what smmsp has as long as it's available.
as soon as the users are added to the next baselayout release I will post on this bug and add the smmsp support to the ebuild.
-------------- azarah@nosferatu rc-scripts $ grep smmsp etc/* etc/group:smmsp:x:209:smmsp etc/passwd:smmsp:x:209:209:smmsp::/bin/false azarah@nosferatu rc-scripts $ -------------- What should home be ?
Nick, is this ok??
the smmsp user and group are now in the baselayout. Sendmail 8.12.7 will be out soon. That ebuild will have the smmsp hooks removed.
sendmail-8.12.7 has been marked stable in portage.