diff options
-rw-r--r-- | sys-apps/openrc/openrc-0.1.ebuild | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sys-apps/openrc/openrc-0.1.ebuild b/sys-apps/openrc/openrc-0.1.ebuild index b436d73..4452782 100644 --- a/sys-apps/openrc/openrc-0.1.ebuild +++ b/sys-apps/openrc/openrc-0.1.ebuild @@ -63,13 +63,15 @@ src_install() { } pkg_preinst() { - local x= - # baselayout bootmisc init script has been split out in OpenRC # so handle upgraders if ! has_version sys-apps/openrc; then - for x in procfs swap sysctl; do - ln -s ../../init.d/"${x}" "${ROOT}"etc/runlevels/boot/"${x}" + local x= xtra= + use kernel_linux && xtra="${xtra} procfs sysctl" + use kernel_FreeBSD && xtra="${xtra} savecore dumpon" + for x in swap ${xtra}; do + [ -e "${ROOT}"etc/runlevels/boot/"${x}" ] && continue + ln -snf /etc/init.d/"${x}" "${ROOT}"etc/runlevels/boot/"${x}" done fi } |