summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2012-09-03 21:50:59 +0000
committerMichał Górny <mgorny@gentoo.org>2012-09-03 21:50:59 +0000
commit6163766acb16a3591d5478662513fddb796b6e46 (patch)
tree2a3639e732d2e9a9f62f8f0ddcaa86d909e5c339 /sys-apps/systemd
parentStable ppc, bug #433263 (diff)
downloadgentoo-2-6163766acb16a3591d5478662513fddb796b6e46.tar.gz
gentoo-2-6163766acb16a3591d5478662513fddb796b6e46.tar.bz2
gentoo-2-6163766acb16a3591d5478662513fddb796b6e46.zip
Fix missing /var/lock & /var/run mountpoints, bug #433607.
(Portage version: 2.2.0_alpha124_p1/cvs/Linux x86_64)
Diffstat (limited to 'sys-apps/systemd')
-rw-r--r--sys-apps/systemd/ChangeLog9
-rw-r--r--sys-apps/systemd/files/var-lock.mount19
-rw-r--r--sys-apps/systemd/files/var-run.mount19
-rw-r--r--sys-apps/systemd/systemd-188-r1.ebuild179
-rw-r--r--sys-apps/systemd/systemd-189-r1.ebuild (renamed from sys-apps/systemd/systemd-189.ebuild)8
5 files changed, 51 insertions, 183 deletions
diff --git a/sys-apps/systemd/ChangeLog b/sys-apps/systemd/ChangeLog
index be17d3c70849..7e9e6d8148cc 100644
--- a/sys-apps/systemd/ChangeLog
+++ b/sys-apps/systemd/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for sys-apps/systemd
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/systemd/ChangeLog,v 1.44 2012/08/28 16:53:42 zmedico Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/systemd/ChangeLog,v 1.45 2012/09/03 21:50:59 mgorny Exp $
+
+*systemd-189-r1 (03 Sep 2012)
+
+ 03 Sep 2012; Michał Górny <mgorny@gentoo.org> +files/var-lock.mount,
+ +files/var-run.mount, +systemd-189-r1.ebuild, -systemd-188-r1.ebuild,
+ -systemd-189.ebuild:
+ Fix missing /var/lock & /var/run mountpoints, bug #433607.
28 Aug 2012; Zac Medico <zmedico@gentoo.org> systemd-188-r1.ebuild,
systemd-189.ebuild:
diff --git a/sys-apps/systemd/files/var-lock.mount b/sys-apps/systemd/files/var-lock.mount
new file mode 100644
index 000000000000..07277adac3a2
--- /dev/null
+++ b/sys-apps/systemd/files/var-lock.mount
@@ -0,0 +1,19 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Lock Directory
+Before=local-fs.target
+# skip mounting if the directory does not exist or is a symlink
+ConditionPathIsDirectory=/var/lock
+ConditionPathIsSymbolicLink=!/var/lock
+
+[Mount]
+What=/run/lock
+Where=/var/lock
+Type=bind
+Options=bind
diff --git a/sys-apps/systemd/files/var-run.mount b/sys-apps/systemd/files/var-run.mount
new file mode 100644
index 000000000000..ab4da424c966
--- /dev/null
+++ b/sys-apps/systemd/files/var-run.mount
@@ -0,0 +1,19 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Runtime Directory
+Before=local-fs.target
+# skip mounting if the directory does not exist or is a symlink
+ConditionPathIsDirectory=/var/run
+ConditionPathIsSymbolicLink=!/var/run
+
+[Mount]
+What=/run
+Where=/var/run
+Type=bind
+Options=bind
diff --git a/sys-apps/systemd/systemd-188-r1.ebuild b/sys-apps/systemd/systemd-188-r1.ebuild
deleted file mode 100644
index 57870a388e31..000000000000
--- a/sys-apps/systemd/systemd-188-r1.ebuild
+++ /dev/null
@@ -1,179 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/systemd/systemd-188-r1.ebuild,v 1.2 2012/08/28 16:53:42 zmedico Exp $
-
-EAPI=4
-
-inherit autotools-utils bash-completion-r1 linux-info pam systemd user
-
-DESCRIPTION="System and service manager for Linux"
-HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
-SRC_URI="http://www.freedesktop.org/software/systemd/${P}.tar.xz"
-
-LICENSE="GPL-2 LGPL-2.1 MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="acl audit cryptsetup lzma pam selinux tcpd"
-
-# We need to depend on sysvinit for sulogin which is used in the rescue
-# mode. Bug #399615.
-
-MINKV="2.6.39"
-
-COMMON_DEPEND=">=sys-apps/dbus-1.4.10
- >=sys-apps/kmod-5
- >=sys-apps/util-linux-2.20
- ~sys-fs/udev-188
- sys-libs/libcap
- acl? ( sys-apps/acl )
- audit? ( >=sys-process/audit-2 )
- cryptsetup? ( >=sys-fs/cryptsetup-1.4.2 )
- lzma? ( app-arch/xz-utils )
- pam? ( virtual/pam )
- selinux? ( sys-libs/libselinux )
- tcpd? ( sys-apps/tcp-wrappers )"
-
-# sysvinit for sulogin
-RDEPEND="${COMMON_DEPEND}
- sys-apps/hwids
- sys-apps/sysvinit
- !<sys-libs/glibc-2.10
- !~sys-fs/udev-187"
-DEPEND="${COMMON_DEPEND}
- app-arch/xz-utils
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
- dev-util/gperf
- dev-util/intltool
- >=sys-kernel/linux-headers-${MINKV}"
-
-AUTOTOOLS_IN_SOURCE_BUILD=1
-
-pkg_setup() {
- enewgroup lock # used by var-lock.mount
- enewgroup tty 5 # used by mount-setup for /dev/pts
-}
-
-src_prepare() {
- # systemd-analyze is for python2.7 only nowadays.
- sed -i -e '1s/python/&2.7/' src/analyze/systemd-analyze
-
- # link against external udev.
- sed -i -e 's:libudev\.la:-ludev:' Makefile.am
-
- local PATCHES=(
- "${FILESDIR}"/0001-Disable-udev-targets-for-udev-188.patch
- )
-
- autotools-utils_src_prepare
-
- # XXX: support it within eclass
- eautomake
-}
-
-src_configure() {
- local myeconfargs=(
- --localstatedir=/var
- --with-distro=gentoo
- # install everything to /usr
- --with-rootprefix=/usr
- --with-rootlibdir=/usr/$(get_libdir)
- # but pam modules have to lie in /lib*
- --with-pamlibdir=/$(get_libdir)/security
- # this avoids dep on pciutils & usbutils
- --with-pci-ids-path=/usr/share/misc/pci.ids
- --with-usb-ids-path=/usr/share/misc/usb.ids
- # make sure we get /bin:/sbin in $PATH
- --enable-split-usr
- # udev parts
- --disable-introspection
- --disable-gtk-doc
- --disable-gudev
- $(use_enable acl)
- $(use_enable audit)
- $(use_enable cryptsetup libcryptsetup)
- $(use_enable lzma xz)
- $(use_enable pam)
- $(use_enable selinux)
- $(use_enable tcpd tcpwrap)
- )
-
- autotools-utils_src_configure
-}
-
-src_install() {
- autotools-utils_src_install \
- bashcompletiondir=/tmp
-
- # compat for init= use
- dosym ../usr/lib/systemd/systemd /bin/systemd
- dosym ../lib/systemd/systemd /usr/bin/systemd
- # rsyslog.service depends on it...
- dosym ../usr/bin/systemctl /bin/systemctl
-
- # move files as necessary
- newbashcomp "${D}"/tmp/systemd-bash-completion.sh ${PN}
- rm -r "${D}"/tmp || die
-
- # we just keep sysvinit tools, so no need for the mans
- rm "${D}"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8 \
- || die
- rm "${D}"/usr/share/man/man1/init.1 || die
-
- # Create /run/lock as required by new baselay/OpenRC compat.
- insinto /usr/lib/tmpfiles.d
- doins "${FILESDIR}"/gentoo-run.conf
-
- # Check whether we won't break user's system.
- [[ -x "${D}"/bin/systemd ]] || die '/bin/systemd symlink broken, aborting.'
- [[ -x "${D}"/usr/bin/systemd ]] || die '/usr/bin/systemd symlink broken, aborting.'
-}
-
-pkg_preinst() {
- local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS ~DEVTMPFS
- ~FANOTIFY ~HOTPLUG ~INOTIFY_USER ~IPV6 ~NET ~PROC_FS ~SIGNALFD
- ~SYSFS ~!IDE ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2"
- kernel_is -ge ${MINKV//./ } || ewarn "Kernel version at least ${MINKV} required"
- check_extra_config
-}
-
-optfeature() {
- local i desc=${1} text
- shift
-
- text=" [\e[1m$(has_version ${1} && echo I || echo ' ')\e[0m] ${1}"
- shift
-
- for i; do
- elog "${text}"
- text="& [\e[1m$(has_version ${1} && echo I || echo ' ')\e[0m] ${1}"
- done
- elog "${text} (${desc})"
-}
-
-pkg_postinst() {
- mkdir -p "${ROOT}"/run || ewarn "Unable to mkdir /run, this could mean trouble."
- if [[ ! -L "${ROOT}"/etc/mtab ]]; then
- ewarn "Upstream suggests that the /etc/mtab file should be a symlink to /proc/mounts."
- ewarn "It is known to cause users being unable to unmount user mounts. If you don't"
- ewarn "require that specific feature, please call:"
- ewarn " $ ln -sf '${ROOT}proc/self/mounts' '${ROOT}etc/mtab'"
- ewarn
- fi
-
- elog "To get additional features, a number of optional runtime dependencies may"
- elog "be installed:"
- optfeature 'for systemd-analyze' \
- 'dev-lang/python:2.7' 'dev-python/dbus-python'
- optfeature 'for systemd-analyze plotting ability' \
- 'dev-python/pycairo[svg]'
- optfeature 'for GTK+ systemadm UI and gnome-ask-password-agent' \
- 'sys-apps/systemd-ui'
- elog
-
- ewarn "Please note this is a work-in-progress and many packages in Gentoo"
- ewarn "do not supply systemd unit files yet. You are testing it on your own"
- ewarn "responsibility. Please remember than you can pass:"
- ewarn " init=/sbin/init"
- ewarn "to your kernel to boot using sysvinit / OpenRC."
-}
diff --git a/sys-apps/systemd/systemd-189.ebuild b/sys-apps/systemd/systemd-189-r1.ebuild
index 7fe7f51c0680..c6817f397b3d 100644
--- a/sys-apps/systemd/systemd-189.ebuild
+++ b/sys-apps/systemd/systemd-189-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/systemd/systemd-189.ebuild,v 1.3 2012/08/28 16:53:42 zmedico Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/systemd/systemd-189-r1.ebuild,v 1.1 2012/09/03 21:50:59 mgorny Exp $
EAPI=4
@@ -127,8 +127,10 @@ src_install() {
rm "${D}"/usr/share/man/man1/init.1 || die
# Create /run/lock as required by new baselay/OpenRC compat.
- insinto /usr/lib/tmpfiles.d
- doins "${FILESDIR}"/gentoo-run.conf
+ systemd_dotmpfilesd "${FILESDIR}"/gentoo-run.conf
+
+ # Add mount-rules for /var/lock and /var/run, bug #433607
+ systemd_dounit "${FILESDIR}"/var-{lock,run}.mount
# Check whether we won't break user's system.
[[ -x "${D}"/bin/systemd ]] || die '/bin/systemd symlink broken, aborting.'