openrc: in sync with gentoo

This commit is contained in:
Anton Bolshakov 2012-12-01 03:01:27 +00:00
parent 56012fe0e8
commit 29ee08da9d
2 changed files with 157 additions and 112 deletions

View file

@ -1,6 +1,6 @@
AUX openrc.logrotate 71 SHA256 0b44210db9770588bd491cd6c0ac9412d99124c6be4c9d3f7d31ec8746072f5c SHA512 690612fddfb2c4cf8f6b5ba7239b9faf29eb3d9b152ab4dcf62694aa2852780440d08cee56d98a9597607f446b3697c911269562821a8402bb5747cbbae34bd9 WHIRLPOOL 8678c51583c77a4985760e4ea2082e7214f28b68cad460b362d683db71067cf6031e1f3275e83ac7959b0973cdafd0a4102525fe7b0d975798ec2182d1fd2769
AUX start-stop-daemon.pam 63 SHA256 2681da17e4a122656b5303b7c7eca82b8fb182641290b153fdbe96b63638086d SHA512 85cf440611b8f87f51bf24bdd9fa03639a75b950f00096d81b8826c21ae85ff9784b8c56b8ddb482e70f08bce933d4561b30750346d51fb2cef3be34acc065cb WHIRLPOOL 4abc9f051155a62d3033258a06003a4ca3909d8104deca84d5c1605bc1c7e56167fd82b2b4b72fe7b707070de98a7628730de1ad3f14b924b5b1480fba5ef854
DIST openrc-0.10.5.tar.bz2 171742 SHA256 27677142a7aa47a1c7e863fd4bce0d092aca7870012812e4f7a690a14f1e242c SHA512 f855d5f1b115cc4387585b9533fba78d22b7c54379a26e3d26995c1ff5b3bbe11bb6e6adc715d35710fcff77449d23bcdbbd4fbb5ea74e66a2ba224dfe2746e3 WHIRLPOOL f39a88e1f44f741f8eb31db07e5bb199253912d5c3cc7d9006467d52e07d5b814c1e3d2d652e1b503a5a81b953be094d2c95a50397812301f76abef6e44c608f
DIST openrc-0.11.5.tar.bz2 174650 SHA256 f0c3ff6e51adc5fd10c355d76d1ee20773154da6b8415f461f5dab9ff75d6453 SHA512 0f35dc8940f577c863de659813ee296f002fd7038d953fa7eeb4bdbd793cc853c43f0dd7f0fda5fa81bcfed9efccbee2e26dbc78955ed98a7600644c80320af2 WHIRLPOOL b89c75143d0ec69be59f272197b48b4df50bc2cfd581de81e17641ae0abc6165f43151947be47b84000c7f7cb07ca3e80f87d9ee5a7f93822a6e5f613953e78e
EBUILD openrc-0.10.5-r1.ebuild 14497 SHA256 40e9d61027220ff0ab5d984ef0b0b7de3a43e3d39db4484a13d54a320e0d6334 SHA512 9fcfeba3de6a7247755c28805bf3c8a674a265393497aa975c75e122fbda1a76503888e35e2709bed5e2ebc1267904a57d4c3cd77c4973fd088aca5d9df0ca72 WHIRLPOOL 89554eecef3d578bf29abc95633f7451dd2d161055980706136b298027e3c5da8056e02f48bb1b5be017b41e32a5729573684ed47a5021f64be60a58db7f4c74
DIST openrc-0.11.6.tar.bz2 174888 SHA256 60b409d2236d531e45ebd82ef258859249a703f8994076cee560735f95ee6e9b SHA512 9f6c4335704d441dd0cd014ab2c1a44dd409d25be478a704ca432fa2d21697a6f4f93876c251c30f675183dbd55292c04e450884f0d2ea2c13d24fcaec3008f9 WHIRLPOOL f1017ebeb9188cdef15c469486157e9aec51afc8568bd7eea02cc0cf42981baa408d2fc011104058afc1b43f3b07e4ea2088ef4dff28f07281994cd6c28748e3
EBUILD openrc-0.11.5.ebuild 16270 SHA256 84fb7d0c7add4235b5ef0b6d88f95b51c1b47c92e66083e9de4d178ce148c47d SHA512 3077ef30db687e8918699d09b3cdb6326ed1764e77c2c9994bef1b559b7135d7a001c79516e190c555587e9999031200649ff5980e6fef7801a1e59be039ca18 WHIRLPOOL 8681d85292acc3e2062e3795577b286bae62c43ea378bb53c396a7acd0856fbffeae52ef49b0e634b9b802213c7153027d620d5e32c44b9574bf922210f61676
EBUILD openrc-0.11.6.ebuild 16305 SHA256 a93a48f7a7ccede6ad9a38933a2924d1cc352495cecce176ff7e6cc9cd56c45a SHA512 74d73c20f848abc69333d951143a176313dd328c09af1c73d7dc2a3b5dc953d3871eda496499366bb12cfab7c51b5305c222de1508b9d8a9e5c3f2811c11f743 WHIRLPOOL 66791b04ef693c9479809d176f1d7c0c3f0d7fe1f8654cfaa63c19e2a91da816f4532ef2f2951272727fa5ef7722ebcbef2643b66eab3c7239713cec9764a738

View file

@ -1,24 +1,26 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-apps/openrc/openrc-0.10.5.ebuild,v 1.1 2012/07/04 14:36:33 williamh Exp $
# $Header: /var/cvsroot/gentoo-x86/sys-apps/openrc/openrc-0.11.6.ebuild,v 1.1 2012/11/30 19:17:52 williamh Exp $
EAPI=4
EGIT_REPO_URI="git://git.overlays.gentoo.org/proj/${PN}.git"
[[ ${PV} == "9999" ]] && SCM_ECLASS="git-2"
inherit eutils flag-o-matic multilib pam toolchain-funcs ${SCM_ECLASS}
unset SCM_ECLASS
inherit eutils flag-o-matic multilib pam toolchain-funcs
DESCRIPTION="OpenRC manages the services, startup and shutdown of a host"
HOMEPAGE="http://www.gentoo.org/proj/en/base/openrc/"
if [[ ${PV} != "9999" ]] ; then
SRC_URI="mirror://gentoo/${P}.tar.bz2"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
if [[ ${PV} == "9999" ]]; then
EGIT_REPO_URI="git://git.overlays.gentoo.org/proj/${PN}.git"
inherit git-2
else
SRC_URI="http://dev.gentoo.org/~williamh/dist/${P}.tar.bz2"
KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
fi
LICENSE="BSD-2"
SLOT="0"
IUSE="debug elibc_glibc ncurses pam pentoo selinux static-libs unicode kernel_linux kernel_FreeBSD"
IUSE="debug elibc_glibc ncurses pam pentoo newnet prefix selinux static-libs unicode
kernel_linux kernel_FreeBSD"
RDEPEND="virtual/init
kernel_FreeBSD? ( || ( >=sys-freebsd/freebsd-ubin-9.0_rc sys-process/fuser-bsd ) )
@ -29,14 +31,30 @@ RDEPEND="virtual/init
kernel_linux? (
sys-process/psmisc
)
!<sys-fs/udev-init-scripts-17
!<sys-fs/udev-133"
DEPEND="${RDEPEND}
virtual/os-headers"
make_args() {
src_prepare() {
sed -i 's:0444:0644:' mk/sys.mk || die
sed -i "/^DIR/s:/openrc:/${PF}:" doc/Makefile || die #241342
if [[ ${PV} == "9999" ]] ; then
local ver="git-${EGIT_VERSION:0:6}"
sed -i "/^GITVER[[:space:]]*=/s:=.*:=${ver}:" mk/git.mk || die
fi
# Allow user patches to be applied without modifying the ebuild
epatch_user
}
src_compile() {
unset LIBDIR #266688
MAKE_ARGS="${MAKE_ARGS} LIBNAME=$(get_libdir) LIBEXECDIR=/$(get_libdir)/rc"
MAKE_ARGS="${MAKE_ARGS}
LIBNAME=$(get_libdir)
LIBEXECDIR=${EPREFIX}/$(get_libdir)/rc"
local brand="Unknown"
if use kernel_linux ; then
@ -57,29 +75,11 @@ make_args() {
if ! use static-libs; then
MAKE_ARGS="${MAKE_ARGS} MKSTATICLIBS=no"
fi
}
pkg_setup() {
use newnet || MAKE_ARGS="${MAKE_ARGS} MKNET=oldnet"
use prefix && MAKE_ARGS="${MAKE_ARGS} MKPREFIX=yes PREFIX=${EPREFIX}"
export DEBUG=$(usev debug)
export MKPAM=$(usev pam)
export MKTERMCAP=$(usev ncurses)
}
src_prepare() {
sed -i 's:0444:0644:' mk/sys.mk || die
sed -i "/^DIR/s:/openrc:/${PF}:" doc/Makefile || die #241342
if [[ ${PV} == "9999" ]] ; then
local ver="git-${EGIT_VERSION:0:6}"
sed -i "/^GITVER[[:space:]]*=/s:=.*:=${ver}:" mk/git.mk || die
fi
# Allow user patches to be applied without modifying the ebuild
epatch_user
}
src_compile() {
make_args
tc-export CC AR RANLIB
emake ${MAKE_ARGS}
@ -88,7 +88,7 @@ src_compile() {
# set_config <file> <option name> <yes value> <no value> test
# a value of "#" will just comment out the option
set_config() {
local file="${D}/$1" var=$2 val com
local file="${ED}/$1" var=$2 val com
eval "${@:5}" && val=$3 || val=$4
[[ ${val} == "#" ]] && com="#" && val='\2'
sed -i -r -e "/^#?${var}=/{s:=([\"'])?([^ ]*)\1?:=\1${val}\1:;s:^#?:${com}:}" "${file}"
@ -99,13 +99,12 @@ set_config_yes_no() {
}
src_install() {
make_args
emake ${MAKE_ARGS} DESTDIR="${D}" install
# move the shared libs back to /usr so ldscript can install
# more of a minimal set of files
# disabled for now due to #270646
#mv "${D}"/$(get_libdir)/lib{einfo,rc}* "${D}"/usr/$(get_libdir)/ || die
#mv "${ED}"/$(get_libdir)/lib{einfo,rc}* "${ED}"/usr/$(get_libdir)/ || die
#gen_usr_ldscript -a einfo rc
gen_usr_ldscript libeinfo.so
gen_usr_ldscript librc.so
@ -117,8 +116,8 @@ src_install() {
# Backup our default runlevels
dodir /usr/share/"${PN}"
cp -PR "${D}"/etc/runlevels "${D}"/usr/share/${PN} || die
rm -rf "${D}"/etc/runlevels
cp -PR "${ED}"/etc/runlevels "${ED}"/usr/share/${PN} || die
rm -rf "${ED}"/etc/runlevels
# Install the default net configuration
doconfd conf.d/net
@ -131,7 +130,7 @@ src_install() {
# On HPPA, do not run consolefont by default (bug #222889)
if use hppa; then
rm -f "${D}"/usr/share/openrc/runlevels/boot/consolefont
rm -f "${ED}"/usr/share/openrc/runlevels/boot/consolefont
fi
# Support for logfile rotation
@ -147,24 +146,24 @@ add_boot_init() {
local runlevel=${2:-boot}
# if the initscript is not going to be installed and is not
# currently installed, return
[[ -e ${D}/etc/init.d/${initd} || -e ${ROOT}/etc/init.d/${initd} ]] \
[[ -e "${ED}"/etc/init.d/${initd} || -e "${EROOT}"etc/init.d/${initd} ]] \
|| return
[[ -e ${ROOT}/etc/runlevels/${runlevel}/${initd} ]] && return
[[ -e "${EROOT}"etc/runlevels/${runlevel}/${initd} ]] && return
# if runlevels dont exist just yet, then create it but still flag
# to pkg_postinst that it needs real setup #277323
if [[ ! -d ${ROOT}/etc/runlevels/${runlevel} ]] ; then
mkdir -p "${ROOT}"/etc/runlevels/${runlevel}
touch "${ROOT}"/etc/runlevels/.add_boot_init.created
if [[ ! -d "${EROOT}"etc/runlevels/${runlevel} ]] ; then
mkdir -p "${EROOT}"etc/runlevels/${runlevel}
touch "${EROOT}"etc/runlevels/.add_boot_init.created
fi
elog "Auto-adding '${initd}' service to your ${runlevel} runlevel"
ln -snf /etc/init.d/${initd} "${ROOT}"/etc/runlevels/${runlevel}/${initd}
ln -snf "${EROOT}"etc/init.d/${initd} "${EROOT}"etc/runlevels/${runlevel}/${initd}
}
add_boot_init_mit_config() {
local config=$1 initd=$2
if [[ -e ${ROOT}${config} ]] ; then
if [[ -n $(sed -e 's:#.*::' -e '/^[[:space:]]*$/d' "${ROOT}"/${config}) ]] ; then
if [[ -e ${EROOT}${config} ]] ; then
if [[ -n $(sed -e 's:#.*::' -e '/^[[:space:]]*$/d' "${EROOT}"${config}) ]] ; then
add_boot_init ${initd}
fi
fi
@ -178,54 +177,55 @@ pkg_preinst() {
# manager doesnt go throwing etc-update crap at us -- postinst is
# too late to prevent that. this behavior also lets us keep the
# file in the CONTENTS for binary packages.
[[ -e ${ROOT}/etc/conf.d/net ]] && cp "${ROOT}"/etc/conf.d/net "${D}"/etc/conf.d/
[[ -e "${EROOT}"etc/conf.d/net ]] && \
cp "${EROOT}"etc/conf.d/net "${ED}"/etc/conf.d/
# avoid default thrashing in conf.d files when possible #295406
if [[ -e ${ROOT}/etc/conf.d/hostname ]] ; then
if [[ -e "${EROOT}"etc/conf.d/hostname ]] ; then
(
unset hostname HOSTNAME
source "${ROOT}"/etc/conf.d/hostname
source "${EROOT}"etc/conf.d/hostname
: ${hostname:=${HOSTNAME}}
[[ -n ${hostname} ]] && set_config /etc/conf.d/hostname hostname "${hostname}"
)
fi
# upgrade timezone file ... do it before moving clock
if [[ -e ${ROOT}/etc/conf.d/clock && ! -e ${ROOT}/etc/timezone ]] ; then
if [[ -e ${EROOT}etc/conf.d/clock && ! -e ${EROOT}/etc/timezone ]] ; then
(
unset TIMEZONE
source "${ROOT}"/etc/conf.d/clock
[[ -n ${TIMEZONE} ]] && echo "${TIMEZONE}" > "${ROOT}"/etc/timezone
source "${EROOT}"etc/conf.d/clock
[[ -n ${TIMEZONE} ]] && echo "${TIMEZONE}" > "${EROOT}"etc/timezone
)
fi
# /etc/conf.d/clock moved to /etc/conf.d/hwclock
local clock
use kernel_FreeBSD && clock="adjkerntz" || clock="hwclock"
if [[ -e ${ROOT}/etc/conf.d/clock ]] ; then
mv "${ROOT}"/etc/conf.d/clock "${ROOT}"/etc/conf.d/${clock}
if [[ -e "${EROOT}"etc/conf.d/clock ]] ; then
mv "${EROOT}"etc/conf.d/clock "${EROOT}"etc/conf.d/${clock}
fi
if [[ -e ${ROOT}/etc/init.d/clock ]] ; then
rm -f "${ROOT}"/etc/init.d/clock
if [[ -e "${EROOT}"etc/init.d/clock ]] ; then
rm -f "${EROOT}"etc/init.d/clock
fi
if [[ -L ${ROOT}/etc/runlevels/boot/clock ]] ; then
rm -f "${ROOT}"/etc/runlevels/boot/clock
ln -snf /etc/init.d/${clock} "${ROOT}"/etc/runlevels/boot/${clock}
if [[ -L "${EROOT}"etc/runlevels/boot/clock ]] ; then
rm -f "${EROOT}"etc/runlevels/boot/clock
ln -snf /etc/init.d/${clock} "${EROOT}"etc/runlevels/boot/${clock}
fi
if [[ -L ${ROOT}${LIBDIR}/rc/init.d/started/clock ]] ; then
rm -f "${ROOT}${LIBDIR}"/rc/init.d/started/clock
ln -snf /etc/init.d/${clock} "${ROOT}${LIBDIR}"/rc/init.d/started/${clock}
if [[ -L "${EROOT}"${LIBDIR}/rc/init.d/started/clock ]] ; then
rm -f "${EROOT}"${LIBDIR}/rc/init.d/started/clock
ln -snf /etc/init.d/${clok} "${EROOT}"${LIBDIR}/rc/init.d/started/${clock}
fi
# /etc/conf.d/rc is no longer used for configuration
if [[ -e ${ROOT}/etc/conf.d/rc ]] ; then
if [[ -e "${EROOT}"etc/conf.d/rc ]] ; then
elog "/etc/conf.d/rc is no longer used for configuration."
elog "Please migrate your settings to /etc/rc.conf as applicable"
elog "and delete /etc/conf.d/rc"
fi
# force net init.d scripts into symlinks
for f in "${ROOT}"/etc/init.d/net.* ; do
for f in "${EROOT}"etc/init.d/net.* ; do
[[ -e ${f} ]] || continue # catch net.* not matching anything
[[ ${f} == */net.lo ]] && continue # real file now
[[ ${f} == *.openrc.bak ]] && continue
@ -243,11 +243,19 @@ pkg_preinst() {
# swapfiles was added in 0.9.9 and needed in boot (february 2012)
has_version ">=sys-apps/openrc-0.9.9" || add_boot_init swapfiles
if ! has_version ">=sys-apps/openrc-0.11"; then
add_boot_init sysfs sysinit
fi
# set default interactive shell to sulogin if it exists
set_config /etc/rc.conf rc_shell /sbin/sulogin "#" test -e /sbin/sulogin
has_version sys-apps/openrc || migrate_from_baselayout_1
has_version ">=sys-apps/openrc-0.4.0" || migrate_udev_init_script
if ! has_version ">=sys-apps/openrc-0.11.3" ; then
migrate_udev_mount_script
add_boot_init tmpfiles.setup boot
fi
}
# >=openrc-0.4.0 no longer loads the udev addon
@ -271,9 +279,18 @@ migrate_udev_init_script() {
fi
}
# >=OpenRC-0.11.3 requires udev-mount to be in the sysinit runlevel with udev.
migrate_udev_mount_script() {
if [ -e "${EROOT}"etc/runlevels/sysinit/udev -a \
! -e "${EROOT}"etc/runlevels/sysinit/udev-mount ]; then
add_boot_init udev-mount sysinit
fi
return 0
}
migrate_from_baselayout_1() {
# baselayout boot init scripts have been split out
for f in $(cd "${D}"/usr/share/${PN}/runlevels/boot || exit; echo *) ; do
for f in $(cd "${ED}"/usr/share/${PN}/runlevels/boot || exit; echo *) ; do
# baselayout-1 is always "old" net, so ignore "new" net
[[ ${f} == "network" ]] && continue
@ -285,40 +302,40 @@ migrate_from_baselayout_1() {
add_boot_init_mit_config /etc/conf.d/dmcrypt dmcrypt
add_boot_init_mit_config /etc/mdadm.conf mdraid
add_boot_init_mit_config /etc/evms.conf evms
[[ -e ${ROOT}/sbin/dmsetup ]] && add_boot_init device-mapper
[[ -e ${ROOT}/sbin/vgscan ]] && add_boot_init lvm
[[ -e "${EROOT}"sbin/dmsetup ]] && add_boot_init device-mapper
[[ -e "${EROOT}"sbin/vgscan ]] && add_boot_init lvm
elog "Add on services (such as RAID/dmcrypt/LVM/etc...) are now stand alone"
elog "init.d scripts. If you use such a thing, make sure you have the"
elog "required init.d scripts added to your boot runlevel."
# Upgrade our state for baselayout-1 users
if [[ ! -e ${ROOT}${LIBDIR}/rc/init.d/started ]] ; then
if [[ ! -e "${EROOT}"${LIBDIR}/rc/init.d/started ]] ; then
(
[[ -e ${ROOT}/etc/conf.d/rc ]] && source "${ROOT}"/etc/conf.d/rc
[[ -e "${EROOT}"etc/conf.d/rc ]] && source "${EROOT}"/etc/conf.d/rc
svcdir=${svcdir:-/var/lib/init.d}
if [[ ! -d ${ROOT}${svcdir}/started ]] ; then
if [[ ! -d "${EROOT}"${svcdir}/started ]] ; then
ewarn "No state found, and no state exists"
elog "You should reboot this host"
else
mkdir -p "${ROOT}${LIBDIR}/rc/init.d"
einfo "Moving state from ${ROOT}${svcdir} to ${ROOT}${LIBDIR}/rc/init.d"
mv "${ROOT}${svcdir}"/* "${ROOT}${LIBDIR}"/rc/init.d
rm -rf "${ROOT}${LIBDIR}"/rc/init.d/daemons \
"${ROOT}${LIBDIR}"/rc/init.d/console
umount "${ROOT}${svcdir}" 2>/dev/null
rm -rf "${ROOT}${svcdir}"
mkdir -p "${EROOT}"${LIBDIR}/rc/init.d
einfo "Moving state from ${EROOT}${svcdir} to ${EROOT}${LIBDIR}/rc/init.d"
mv "${EROOT}${svcdir}"/* "${EROOT}${LIBDIR}"/rc/init.d
rm -rf "${EROOT}${LIBDIR}"/rc/init.d/daemons \
"${EROOT}${LIBDIR}"/rc/init.d/console
umount "${EROOT}${svcdir}" 2>/dev/null
rm -rf "${EROOT}${svcdir}"
fi
)
fi
# Handle the /etc/modules.autoload.d -> /etc/conf.d/modules transition
if [[ -d ${ROOT}/etc/modules.autoload.d ]] ; then
if [[ -d "${EROOT}"etc/modules.autoload.d ]] ; then
elog "Converting your /etc/modules.autoload.d/ files to /etc/conf.d/modules"
rm -f "${ROOT}"/etc/modules.autoload.d/.keep*
rmdir "${ROOT}"/etc/modules.autoload.d 2>/dev/null
if [[ -d ${ROOT}/etc/modules.autoload.d ]] ; then
rm -f "${EROOT}"etc/modules.autoload.d/.keep*
rmdir "${EROOT}"etc/modules.autoload.d 2>/dev/null
if [[ -d "${EROOT}"etc/modules.autoload.d ]] ; then
local f v
for f in "${ROOT}"/etc/modules.autoload.d/* ; do
for f in "${EROOT}"etc/modules.autoload.d/* ; do
v=${f##*/}
v=${v#kernel-}
v=${v//[^[:alnum:]]/_}
@ -339,10 +356,10 @@ migrate_from_baselayout_1() {
print
}
END { print "\n### END: Auto-converted from " f "\n" }
' "${f}" >> "${D}"/etc/conf.d/modules
' "${f}" >> "${ED}"/etc/conf.d/modules
done
rm -f "${f}"
rmdir "${ROOT}"/etc/modules.autoload.d 2>/dev/null
rmdir "${EROOT}"etc/modules.autoload.d 2>/dev/null
fi
fi
}
@ -351,29 +368,29 @@ pkg_postinst() {
local LIBDIR=$(get_libdir)
# Remove old baselayout links
rm -f "${ROOT}"/etc/runlevels/boot/{check{fs,root},rmnologin}
rm -f "${ROOT}"/etc/init.d/{depscan,runscript}.sh
rm -f "${EROOT}"etc/runlevels/boot/{check{fs,root},rmnologin}
rm -f "${EROOT}"etc/init.d/{depscan,runscript}.sh
# Make our runlevels if they don't exist
if [[ ! -e ${ROOT}/etc/runlevels ]] || [[ -e ${ROOT}/etc/runlevels/.add_boot_init.created ]] ; then
if [[ ! -e "${EROOT}"etc/runlevels ]] || [[ -e "${EROOT}"etc/runlevels/.add_boot_init.created ]] ; then
einfo "Copying across default runlevels"
cp -RPp "${ROOT}"/usr/share/${PN}/runlevels "${ROOT}"/etc
rm -f "${ROOT}"/etc/runlevels/.add_boot_init.created
cp -RPp "${EROOT}"usr/share/${PN}/runlevels "${EROOT}"etc
rm -f "${EROOT}"etc/runlevels/.add_boot_init.created
else
if [[ ! -e ${ROOT}/etc/runlevels/sysinit/devfs ]] ; then
mkdir -p "${ROOT}"/etc/runlevels/sysinit
cp -RPp "${ROOT}"/usr/share/${PN}/runlevels/sysinit/* \
"${ROOT}"/etc/runlevels/sysinit
if [[ ! -e "${EROOT}"etc/runlevels/sysinit/devfs ]] ; then
mkdir -p "${EROOT}"etc/runlevels/sysinit
cp -RPp "${EROOT}"usr/share/${PN}/runlevels/sysinit/* \
"${EROOT}"etc/runlevels/sysinit
fi
if [[ ! -e ${ROOT}/etc/runlevels/shutdown/mount-ro ]] ; then
mkdir -p "${ROOT}"/etc/runlevels/shutdown
cp -RPp "${ROOT}"/usr/share/${PN}/runlevels/shutdown/* \
"${ROOT}"/etc/runlevels/shutdown
if [[ ! -e "${EROOT}"etc/runlevels/shutdown/mount-ro ]] ; then
mkdir -p "${EROOT}"etc/runlevels/shutdown
cp -RPp "${EROOT}"usr/share/${PN}/runlevels/shutdown/* \
"${EROOT}"etc/runlevels/shutdown
fi
fi
# /etc/conf.d/net.example is no longer valid
local NET_EXAMPLE="${ROOT}/etc/conf.d/net.example"
local NET_EXAMPLE="${EROOT}etc/conf.d/net.example"
local NET_MD5='8ebebfa07441d39eb54feae0ee4c8210'
if [[ -e "${NET_EXAMPLE}" ]] ; then
if [[ $(md5sum "${NET_EXAMPLE}") == ${NET_MD5}* ]]; then
@ -383,11 +400,11 @@ pkg_postinst() {
sed -i '1i# This file is obsolete.\n' "${NET_EXAMPLE}"
elog "${NET_EXAMPLE} should be removed."
fi
elog "The new file is ${ROOT}/usr/share/doc/${PF}/net.example"
elog "The new file is ${EROOT}usr/share/doc/${PF}/net.example"
fi
# /etc/conf.d/wireless.example is no longer valid
local WIRELESS_EXAMPLE="${ROOT}/etc/conf.d/wireless.example"
local WIRELESS_EXAMPLE="${EROOT}etc/conf.d/wireless.example"
local WIRELESS_MD5='d1fad7da940bf263c76af4d2082124a3'
if [[ -e "${WIRELESS_EXAMPLE}" ]] ; then
if [[ $(md5sum "${WIRELESS_EXAMPLE}") == ${WIRELESS_MD5}* ]]; then
@ -398,11 +415,11 @@ pkg_postinst() {
elog "${WIRELESS_EXAMPLE} is deprecated and should be removed."
fi
elog "If you are using the old style network scripts,"
elog "Configure wireless settings in ${ROOT}/etc/conf.d/net"
elog "after reviewing ${ROOT}/usr/share/doc/${PF}/net.example"
elog "Configure wireless settings in ${EROOT}etc/conf.d/net"
elog "after reviewing ${EROOT}usr/share/doc/${PF}/net.example"
fi
if [[ -d ${ROOT}/etc/modules.autoload.d ]] ; then
if [[ -d "${EROOT}"etc/modules.autoload.d ]] ; then
ewarn "/etc/modules.autoload.d is no longer used. Please convert"
ewarn "your files to /etc/conf.d/modules and delete the directory."
fi
@ -414,15 +431,15 @@ pkg_postinst() {
fi
# Handle the conf.d/local.{start,stop} -> local.d transition
if path_exists -o "${ROOT}"etc/conf.d/local.{start,stop} ; then
elog "Moving your ${ROOT}etc/conf.d/local.{start,stop}"
elog "files to ${ROOT}etc/local.d"
mv "${ROOT}"etc/conf.d/local.start "${ROOT}"etc/local.d/baselayout1.start
mv "${ROOT}"etc/conf.d/local.stop "${ROOT}"etc/local.d/baselayout1.stop
chmod +x "${ROOT}"etc/local.d/*{start,stop}
if path_exists -o "${EROOT}"etc/conf.d/local.{start,stop} ; then
elog "Moving your ${EROOT}etc/conf.d/local.{start,stop}"
elog "files to ${EROOT}etc/local.d"
mv "${EROOT}"etc/conf.d/local.start "${EROOT}"etc/local.d/baselayout1.start
mv "${EROOT}"etc/conf.d/local.stop "${EROOT}"etc/local.d/baselayout1.stop
chmod +x "${EROOT}"etc/local.d/*{start,stop}
fi
if use kernel_linux && [[ "${ROOT}" = "/" ]]; then
if use kernel_linux && [[ "${EROOT}" = "/" ]]; then
if ! /$(get_libdir)/rc/sh/migrate-to-run.sh; then
ewarn "The dependency data could not be migrated to /run/openrc."
ewarn "This means you need to reboot your system."
@ -430,7 +447,35 @@ pkg_postinst() {
fi
# update the dependency tree after touching all files #224171
[[ "${ROOT}" = "/" ]] && "${ROOT}/${LIBDIR}"/rc/bin/rc-depend -u
[[ "${EROOT}" = "/" ]] && "${EROOT}/${LIBDIR}"/rc/bin/rc-depend -u
if use newnet; then
local netscript=network
else
local netscript=net.lo
fi
if [ ! -e "${EROOT}"etc/runlevels/boot/${netscript} ]; then
ewarn "Please add the $netscript script to your boot runlevel"
ewarn "as soon as possible. Not doing so could leave you with a system"
ewarn "without networking."
fi
ewarn "In this version of OpenRC, the loopback interface no longer"
ewarn "satisfies the net virtual."
ewarn "If you have services now which do not start because of this,"
ewarn "They can be fixed by adding rc_need=\"!net\""
ewarn "to the ${EROOT}etc/conf.d/<servicename> file."
ewarn "You should also file a bug against the service asking that"
ewarn "need net be dropped from the dependencies."
ewarn "The bug you file should block the following tracker:"
ewarn "https://bugs.gentoo.org/show_bug.cgi?id=439092"
ewarn "This version of OpenRC doesn't enable nfs mounts automatically any"
ewarn "longer. In order to mount nfs file systems, you must use the"
ewarn "nfsmount service from the nfs-utils package."
ewarn "See bug https://bugs.gentoo.org/show_bug.cgi?id=427996 for"
ewarn "more information on this."
elog "You should now update all files in /etc, using etc-update"
elog "or equivalent before restarting any services or this host."