After installing =app-admin/puppetserver-5.0.0-r1, systemd prints the following errors in the journal: [/etc/systemd/system/puppetserver.service.d/gentoo.conf:6] Assignment outside of section. Ignoring. [/etc/systemd/system/puppetserver.service.d/gentoo.conf:9] Assignment outside of section. Ignoring. [/etc/systemd/system/puppetserver.service.d/gentoo.conf:12] Assignment outside of section. Ignoring. [/etc/systemd/system/puppetserver.service.d/gentoo.conf:13] Assignment outside of section. Ignoring. [/etc/systemd/system/puppetserver.service.d/gentoo.conf:14] Assignment outside of section. Ignoring. [/etc/systemd/system/puppetserver.service.d/gentoo.conf:15] Assignment outside of section. Ignoring. [/etc/systemd/system/puppetserver.service.d/gentoo.conf:18] Assignment outside of section. Ignoring. [/etc/systemd/system/puppetserver.service.d/gentoo.conf:23] Assignment outside of section. Ignoring. [/etc/systemd/system/puppetserver.service.d/gentoo.conf:29] Assignment outside of section. Ignoring. [/etc/systemd/system/puppetserver.service.d/gentoo.conf:34] Assignment outside of section. Ignoring. This is because /etc/systemd/system/puppetserver.service.d/gentoo.conf is shell syntax, and not a systemd unit syntax as expected by files in that location.
For the record, quite a few packages are still using /etc/conf.d for *environment* file locations. > grep -r ^EnvironmentFile=.*conf.d /usr/lib/systemd /usr/lib/systemd/system/saslauthd.service:EnvironmentFile=/etc/conf.d/saslauthd /usr/lib/systemd/system/timidity.service:EnvironmentFile=-/etc/conf.d/timidity /usr/lib/systemd/system/apache2.service:EnvironmentFile=/etc/conf.d/apache2 I really see nothing wrong with that. And apache being a very important package for Gentoo, why would you not follow its style. ;)
If I may summarize the options I see for solving this issue: a) Just use /etc/conf.d/puppetserver file as it is b) Move the /etc/systemd/system/puppetserver.service.d/gentoo.conf file somewhere else. (/etc/systemd/system is excepted to hold unit files and you are putting an environment file in there; not good) c) (1) Remove EnvironmentFile= from puppetserver.service and (2) prefix every assignment in /etc/systemd/system/puppetserver.service.d/gentoo.conf with "Environment=". E.g., Environment=JAVA_BIN=/usr/bin/java (some of these are probably not needed, e.g. START_TIMEOUT).
Looked more into it. It does seem that the correct action is to 1) Move the configuration file from /etc/conf.d/puppetserver to /etc/default/puppetserver 2) Remove references to the environment from /usr/lib/systemd/system/puppetserver.service I am basing this one the fact that the wrapper already sources this configuration file: $ head /opt/puppetlabs/server/apps/puppetserver/bin/puppetserver #!/bin/bash #set default privileges to -rw-r----- umask 027 set -a if [ -r "/etc/default/puppetserver" ] ; then . /etc/default/puppetserver elif [ -r "/etc/systemd/system/puppetserver.service.d/gentoo.conf" ] ; then . /etc/systemd/system/puppetserver.service.d/gentoo.conf And as mentioned already, there is no need for the "elif", simply remove that file.
Created attachment 490768 [details, diff] fix fixed in 5.0.0-r2