diff options
Diffstat (limited to 'sys-apps/systemd/systemd-37-r1.ebuild')
-rw-r--r-- | sys-apps/systemd/systemd-37-r1.ebuild | 144 |
1 files changed, 144 insertions, 0 deletions
diff --git a/sys-apps/systemd/systemd-37-r1.ebuild b/sys-apps/systemd/systemd-37-r1.ebuild new file mode 100644 index 000000000000..c1df28dc5cab --- /dev/null +++ b/sys-apps/systemd/systemd-37-r1.ebuild @@ -0,0 +1,144 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/systemd/systemd-37-r1.ebuild,v 1.1 2011/12/12 08:17:37 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.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="acl audit cryptsetup gtk pam plymouth selinux tcpd" + +COMMON_DEPEND=">=sys-apps/dbus-1.4.10 + >=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 ) + gtk? ( + dev-libs/dbus-glib + >=dev-libs/glib-2.26 + x11-libs/gtk+:2 + >=x11-libs/libnotify-0.7 ) + pam? ( virtual/pam ) + plymouth? ( sys-boot/plymouth ) + selinux? ( sys-libs/libselinux ) + tcpd? ( sys-apps/tcp-wrappers )" + +# Vala-0.10 doesn't work with libnotify 0.7.1 +VALASLOT="0.12" +# A little higher than upstream requires +# but I had real trouble with 2.6.37 and systemd. +MINKV="2.6.38" + +# dbus, udev versions because of systemd units +# blocker on old packages to avoid collisions with above +# openrc blocker to avoid udev rules starting openrc scripts +RDEPEND="${COMMON_DEPEND} + !<sys-apps/openrc-0.8.3" +DEPEND="${COMMON_DEPEND} + dev-util/gperf + dev-util/intltool + gtk? ( dev-lang/vala:${VALASLOT} ) + >=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_prepare() { + # Force the rebuild of .vala sources + touch src/*.vala || die + autotools-utils_src_prepare +} + +src_configure() { + local myeconfargs=( + --with-distro=gentoo + --with-rootdir= + --with-rootlibdir=/$(get_libdir) + --localstatedir=/var + --docdir=/tmp/docs + $(use_enable acl) + $(use_enable audit) + $(use_enable cryptsetup libcryptsetup) + $(use_enable gtk) + $(use_enable pam) + $(use_enable plymouth) + $(use_enable selinux) + $(use_enable tcpd tcpwrap) + ) + + if use gtk; then + export VALAC="$(type -p valac-${VALASLOT})" + fi + + autotools-utils_src_configure +} + +src_install() { + autotools-utils_src_install \ + bashcompletiondir=/tmp + + # move files as necessary + newbashcomp "${D}"/tmp/systemctl-bash-completion.sh ${PN} + dodoc "${D}"/tmp/docs/* + rm -rf "${D}"/tmp || die + + cd "${D}"/usr/share/man/man8/ + for i in halt poweroff reboot runlevel shutdown telinit; do + mv ${i}.8 systemd.${i}.8 || die + done + + keepdir /run + + # Create /run/lock as required by new baselay/OpenRC compat. + insinto /usr/lib/tmpfiles.d + doins "${FILESDIR}"/gentoo-run.conf +} + +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 " [$(has_version ${1} && echo I || echo ' ')] ${1} (${2})" +} + +pkg_postinst() { + 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' + 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." +} |