From: Stefan Schantl Date: Mon, 21 Mar 2011 18:56:18 +0000 (+0100) Subject: systemd: New package. X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=c8ef6deffa60806ef77422f5f7512f6535613ea9;p=ipfire-3.x.git systemd: New package. Initial commit for systemd, TODO: * splitt package into base and units * boot and shutdown a working system * replace /sbin/init with systemd - still use working upstart as possible backup * remove upstart and only use systemd as init system. Reference #149. --- diff --git a/pkgs/systemd/patches/systemd-20-no-manpages.patch b/pkgs/systemd/patches/systemd-20-no-manpages.patch new file mode 100644 index 000000000..8cae75cbc --- /dev/null +++ b/pkgs/systemd/patches/systemd-20-no-manpages.patch @@ -0,0 +1,76 @@ +diff -Nur a/Makefile.am b/Makefile.am +--- a/Makefile.am 2011-03-08 19:47:36.000000000 +0100 ++++ b/Makefile.am 2011-03-20 20:27:24.126714001 +0100 +@@ -505,55 +505,8 @@ + src/readahead-common.h \ + src/ask-password-api.h + +-MANPAGES = \ +- man/systemd.1 \ +- man/systemctl.1 \ +- man/systemadm.1 \ +- man/systemd-cgls.1 \ +- man/systemd-tmpfiles.8 \ +- man/systemd-notify.1 \ +- man/sd_notify.3 \ +- man/sd_readahead.3 \ +- man/sd_booted.3 \ +- man/sd_listen_fds.3 \ +- man/sd_is_fifo.3 \ +- man/systemd.unit.5 \ +- man/systemd.service.5 \ +- man/systemd.socket.5 \ +- man/systemd.mount.5 \ +- man/systemd.automount.5 \ +- man/systemd.swap.5 \ +- man/systemd.timer.5 \ +- man/systemd.path.5 \ +- man/systemd.target.5 \ +- man/systemd.device.5 \ +- man/systemd.snapshot.5 \ +- man/systemd.exec.5 \ +- man/daemon.7 \ +- man/sd-daemon.7 \ +- man/sd-readahead.7 \ +- man/runlevel.8 \ +- man/telinit.8 \ +- man/halt.8 \ +- man/shutdown.8 \ +- man/pam_systemd.8 \ +- man/systemd.conf.5 \ +- man/tmpfiles.d.5 \ +- man/hostname.5 \ +- man/machine-id.5 \ +- man/vconsole.conf.5 \ +- man/locale.conf.5 \ +- man/os-release.5 \ +- man/modules-load.d.5 +- +-MANPAGES_ALIAS = \ +- man/reboot.8 \ +- man/poweroff.8 \ +- man/sd_is_socket.3 \ +- man/sd_is_socket_unix.3 \ +- man/sd_is_socket_inet.3 \ +- man/sd_notifyf.3 \ +- man/init.1 ++MANPAGES = ++MANPAGES_ALIAS = + + man/reboot.8: man/halt.8 + man/poweroff.8: man/halt.8 +@@ -563,12 +516,8 @@ + man/sd_notifyf.3: man/sd_notify.3 + man/init.1: man/systemd.1 + +-dist_man_MANS = \ +- $(MANPAGES) \ +- $(MANPAGES_ALIAS) +- +-nodist_man_MANS = \ +- man/systemd.special.7 ++dist_man_MANS = ++nodist_man_MANS = + + XML_FILES = \ + ${patsubst %.1,%.xml,${patsubst %.3,%.xml,${patsubst %.5,%.xml,${patsubst %.7,%.xml,${patsubst %.8,%.xml,$(MANPAGES)}}}}} diff --git a/pkgs/systemd/systemd.nm b/pkgs/systemd/systemd.nm new file mode 100644 index 000000000..a47f231a5 --- /dev/null +++ b/pkgs/systemd/systemd.nm @@ -0,0 +1,96 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007, 2008 Michael Tremer & Christian Schmidt # +# # +# This program 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 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see . # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include $(PKGROOT)/Include + +PKG_NAME = systemd +PKG_VER = 20 +PKG_REL = 1 + +PKG_MAINTAINER = Stefan Schantl +PKG_GROUP = System/Base +PKG_URL = http://www.freedesktop.org/wiki/Software/systemd +PKG_LICENSE = GPLv2+ +PKG_SUMMARY = A System and Service Manager. + +PKG_BUILD_DEPS+= audit-devel automake autoconf cryptsetup-luks-devel dbus-devel \ + libcap-devel libselinux-devel libtool libudev-devel pam-devel + +define PKG_DESCRIPTION + systemd is a system and service manager for Linux, compatible with \ + SysV and LSB init scripts. +endef + +PKG_TARBALL = $(THISAPP).tar.bz2 + +PKG_PACKAGES += $(PKG_NAME)-devel + +CONFIGURE_OPTIONS += \ + --sysconfdir=/etc \ + --with-rootdir= \ + --with-distro=other \ + --with-syslog-service=syslog-ng.service \ + --with-sysvinit-path= \ + --with-sysvrcd-path= \ + --with-udevrulesdir=/lib/udev + +define STAGE_PREPARE_CMDS + cd $(DIR_APP) && ./autogen.sh ac +endef + +define STAGE_TEST + cd $(DIR_APP) && make check +endef + +define STAGE_INSTALL_CMDS + # Create sysv compatible symlinks. + -mkdir -pv $(BUILDROOT)/sbin + #ln -svf ../bin/systemd $(BUILDROOT)/sbin/init + ln -svf ../bin/systemctl $(BUILDROOT)/sbin/reboot + ln -svf ../bin/systemctl $(BUILDROOT)/sbin/halt + ln -svf ../bin/systemctl $(BUILDROOT)/sbin/poweroff + ln -svf ../bin/systemctl $(BUILDROOT)/sbin/shutdown + #ln -svf ../bin/systemctl $(BUILDROOT)/sbin/telinit + #ln -svf ../bin/systemctl $(BUILDROOT)/sbin/runlevel + + # Create empty machine-id file. + touch $(BUILDROOT)/etc/machine-id + + rm -rfv $(BUILDROOT)/etc/systemd/system/*.target.wants + -mkdir -pv $(BUILDROOT)/lib/systemd/system/basic.target.wants + -mkdir -pv $(BUILDROOT)/lib/systemd/system/default.target.wants + -mkdir -pv $(BUILDROOT)/lib/systemd/system/dbus.target.wants + -mkdir -pv $(BUILDROOT)/lib/systemd/system/syslog.target.wants + + # Replace absolute symlinks by relative ones. + cd $(BUILDROOT)/usr/share/systemd/user/ && ln -svf ../../../../lib/systemd/system/bluetooth.target bluetooth.target + cd $(BUILDROOT)/usr/share/systemd/user/ && ln -svf ../../../../lib/systemd/system/local-fs.target local-fs.target + cd $(BUILDROOT)/usr/share/systemd/user/ && ln -svf ../../../../lib/systemd/system/printer.target printer.target + cd $(BUILDROOT)/usr/share/systemd/user/ && ln -svf ../../../../lib/systemd/system/shutdown.target shutdown.target + cd $(BUILDROOT)/usr/share/systemd/user/ && ln -svf ../../../../lib/systemd/system/sockets.target sockets.target + cd $(BUILDROOT)/usr/share/systemd/user/ && ln -svf ../../../../lib/systemd/system/sound.target sound.target + cd $(BUILDROOT)/usr/share/systemd/user/ && ln -svf ../../../../lib/systemd/system/swap.target swap.target + + ln -svf ../../systemd/user $(BUILDROOT)/etc/xdg/systemd/user +endef