summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2012-02-23 16:16:53 +0000
committerMichał Górny <mgorny@gentoo.org>2012-02-23 16:16:53 +0000
commit80558776858c2611aa444877dcf50523a0a7d1e5 (patch)
tree6ca1f5b93ac49ca0e54ced25d1d2e6941cfecd49 /sys-apps/systemd
parentMarking di-4.31 ppc for bug 404855 (diff)
downloadgentoo-2-80558776858c2611aa444877dcf50523a0a7d1e5.tar.gz
gentoo-2-80558776858c2611aa444877dcf50523a0a7d1e5.tar.bz2
gentoo-2-80558776858c2611aa444877dcf50523a0a7d1e5.zip
Version bump.
(Portage version: 2.2.0_alpha85_p46/cvs/Linux x86_64)
Diffstat (limited to 'sys-apps/systemd')
-rw-r--r--sys-apps/systemd/ChangeLog7
-rw-r--r--sys-apps/systemd/systemd-43.ebuild158
2 files changed, 164 insertions, 1 deletions
diff --git a/sys-apps/systemd/ChangeLog b/sys-apps/systemd/ChangeLog
index 81afd0c62f3c..1282514d0e2f 100644
--- a/sys-apps/systemd/ChangeLog
+++ b/sys-apps/systemd/ChangeLog
@@ -1,6 +1,11 @@
# 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.22 2012/02/02 20:47:56 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/systemd/ChangeLog,v 1.23 2012/02/23 16:16:53 mgorny Exp $
+
+*systemd-43 (23 Feb 2012)
+
+ 23 Feb 2012; Michał Górny <mgorny@gentoo.org> +systemd-43.ebuild:
+ Version bump.
*systemd-39 (02 Feb 2012)
diff --git a/sys-apps/systemd/systemd-43.ebuild b/sys-apps/systemd/systemd-43.ebuild
new file mode 100644
index 000000000000..298a9a100357
--- /dev/null
+++ b/sys-apps/systemd/systemd-43.ebuild
@@ -0,0 +1,158 @@
+# 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-43.ebuild,v 1.1 2012/02/23 16:16:53 mgorny Exp $
+
+EAPI=4
+
+inherit autotools-utils bash-completion-r1 linux-info pam systemd
+
+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"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="acl audit cryptsetup lzma pam plymouth selinux tcpd"
+
+# We need to depend on sysvinit for sulogin which is used in the rescue
+# mode. Bug #399615.
+
+# A little higher than upstream requires
+# but I had real trouble with 2.6.37 and systemd.
+MINKV="2.6.38"
+
+# dbus version because of systemd units
+# sysvinit for sulogin
+RDEPEND=">=sys-apps/dbus-1.4.10
+ >=sys-apps/kmod-5
+ sys-apps/sysvinit
+ >=sys-apps/util-linux-2.19
+ >=sys-fs/udev-172
+ sys-libs/libcap
+ acl? ( sys-apps/acl )
+ audit? ( >=sys-process/audit-2 )
+ cryptsetup? ( sys-fs/cryptsetup )
+ lzma? ( app-arch/xz-utils )
+ pam? ( virtual/pam )
+ plymouth? ( sys-boot/plymouth )
+ selinux? ( sys-libs/libselinux )
+ tcpd? ( sys-apps/tcp-wrappers )"
+
+DEPEND="${RDEPEND}
+ app-arch/xz-utils
+ dev-util/gperf
+ dev-util/intltool
+ >=sys-kernel/linux-headers-${MINKV}"
+
+pkg_setup() {
+ enewgroup lock # used by var-lock.mount
+ enewgroup tty 5 # used by mount-setup for /dev/pts
+}
+
+src_configure() {
+ local myeconfargs=(
+ --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
+ --localstatedir=/var
+ # make sure we get /bin:/sbin in $PATH
+ --enable-split-usr
+ $(use_enable acl)
+ $(use_enable audit)
+ $(use_enable cryptsetup libcryptsetup)
+ $(use_enable lzma xz)
+ $(use_enable pam)
+ $(use_enable plymouth)
+ $(use_enable selinux)
+ $(use_enable tcpd tcpwrap)
+ # now in sys-apps/systemd-ui
+ --disable-gtk
+ )
+
+ 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
+
+ # Migration helpers.
+ exeinto /usr/libexec/systemd
+ doexe "${FILESDIR}"/update-etc-systemd-symlinks.sh
+ systemd_dounit "${FILESDIR}"/update-etc-systemd-symlinks.{service,path}
+ systemd_enable_service sysinit.target update-etc-systemd-symlinks.path
+}
+
+pkg_preinst() {
+ local CONFIG_CHECK="~AUTOFS4_FS ~CGROUPS ~DEVTMPFS ~FANOTIFY ~IPV6"
+ kernel_is -ge ${MINKV//./ } || ewarn "Kernel version at least ${MINKV} required"
+ check_extra_config
+}
+
+optfeature() {
+ elog " [\e[1m$(has_version ${1} && echo I || echo ' ')\e[0m] ${1} (${2})"
+}
+
+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 "You may need to perform some additional configuration for some programs"
+ elog "to work, see the systemd manpages for loading modules and handling tmpfiles:"
+ elog " $ man modules-load.d"
+ elog " $ man tmpfiles.d"
+ elog
+
+ elog "To get additional features, a number of optional runtime dependencies may"
+ elog "be installed:"
+ optfeature 'dev-python/dbus-python' 'for systemd-analyze'
+ optfeature 'dev-python/pycairo[svg]' 'for systemd-analyze plotting ability'
+ optfeature 'sys-apps/systemd-ui' 'for GTK+ systemadm UI and gnome-ask-password-agent'
+ 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."
+
+ # Don't run it if we're outta /
+ if [[ ! ${ROOT%/} ]]; then
+ # Update symlinks to moved units.
+ sh "${FILESDIR}"/update-etc-systemd-symlinks.sh
+
+ # Try to start migration unit.
+ ebegin "Trying to start migration helper path monitoring."
+ systemctl --system start update-etc-systemd-symlinks.path 2>/dev/null
+ eend ${?}
+ fi
+}