diff --git a/app-admin/sysklogd/files/sysklogd.rc8 b/app-admin/sysklogd/files/sysklogd.rc8 index a6590d725a69e..920ab96332646 100644 --- a/app-admin/sysklogd/files/sysklogd.rc8 +++ b/app-admin/sysklogd/files/sysklogd.rc8 @@ -34,7 +34,7 @@ start_daemon() { ebegin "sysklogd -> start: ${daemon}" start-stop-daemon --start --exec /usr/sbin/"${daemon}" \ -b -m --pidfile /var/run/"${daemon}".pid \ - -- ${fg_opt} ${options} + -- ${options} ${fg_opt} retval=$? eend ${retval} "Failed to start ${daemon}" diff --git a/app-admin/sysklogd/sysklogd-2.0.ebuild b/app-admin/sysklogd/sysklogd-2.0-r1.ebuild similarity index 87% rename from app-admin/sysklogd/sysklogd-2.0.ebuild rename to app-admin/sysklogd/sysklogd-2.0-r1.ebuild index c69300ca428a7..d7a0750798823 100644 --- a/app-admin/sysklogd/sysklogd-2.0.ebuild +++ b/app-admin/sysklogd/sysklogd-2.0-r1.ebuild @@ -41,6 +41,11 @@ src_prepare() { src_configure() { local myeconfargs=( + # Required for correct pid file location. (bug #701048) + # syslogd appends "/run/syslogd.pid" to the localstatedir + # path, and tries to write to that file even when being + # started in foreground. So we need to pin this to / + --localstatedir="${EPREFIX}"/ $(use_with klogd) $(use_with logger) $(use_with systemd systemd $(systemd_get_systemunitdir))