Frederic Crozat
b10ca15552
* Bugfixes * optionaly apply cgroup attributes to cgroups systemd creates * honour sticky bit when trimming cgroup trees * improve readahead - Add libacl-devel as BuildRequires (needed for systemd-uaccess) - Add some %{nil} to systemd.macros to fix some build issues. - Fix dbus assertion - move gtk part to its own package, to reduce bootstrapping (bnc#713981). old: Base:System/systemd new: home:fcrozat:systemd/systemd rev NoneIndex: macros.systemd =================================================================== --- macros.systemd (revision 186) +++ macros.systemd (revision 29) @@ -39,7 +39,8 @@ if [ $FIRST_ARG -eq 1 ]; then \ # Initial installation \ /bin/systemctl daemon-reload >/dev/null 2>&1 || : \ -fi +fi \ +%{nil} # On uninstall, disable and stop services %service_del_preun() \ @@ -48,7 +49,8 @@ # Package removal, not upgrade \ /bin/systemctl --no-reload disable %{?*} > /dev/null 2>&1 || : \ /bin/systemctl stop %{?*} > /dev/null 2>&1 || : \ -fi +fi \ +%{nil} # On uninstall, tell systemd to reload its unit files %service_del_postun() \ @@ -57,7 +59,8 @@ if [ $FIRST_ARG -ge 1 ]; then \ # Package upgrade, not uninstall \ /bin/systemctl try-restart %{?*} >/dev/null 2>&1 || : \ -fi +fi \ +%{nil} %service_migrate_to_systemd_pre() \ test -n "$FIRST_ARG" || FIRST_ARG=$1 \ @@ -75,7 +78,8 @@ if [ -n "$services_to_migrate" ]; then \ /usr/sbin/systemd-sysv-convert --save $services_to_migrate >/dev/null 2>&1 || : \ fi \ -fi +fi \ +%{nil} %service_migrate_to_systemd_post() \ for service in %{?*} ; do \ @@ -88,6 +92,7 @@ /usr/sbin/systemd-sysv-convert --apply $services_to_migrate >/dev/null 2>&1 || : \ /bin/systemctl daemon-reload >/dev/null 2>&1 || : \ fi \ +%{nil} %service_migrate_to_systemd_postun() \ test -n "$FIRST_ARG" || FIRST_ARG=$1 \ @@ -95,5 +100,6 @@ for service in %{?*} ; do \ rm -f "/var/lib/systemd/migrated/$service" 2> /dev/null \ done \ -fi +fi \ +%{nil} Index: systemd.changes =================================================================== --- systemd.changes (revision 186) +++ systemd.changes (revision 29) @@ -1,4 +1,18 @@ ------------------------------------------------------------------- +Thu Sep 1 09:25:40 UTC 2011 - fcrozat@novell.com + +- Update to version 34: + * Bugfixes + * optionaly apply cgroup attributes to cgroups systemd creates + * honour sticky bit when trimming cgroup trees + * improve readahead +- Add libacl-devel as BuildRequires (needed for systemd-uaccess) +- Add some %{nil} to systemd.macros to fix some build issues. +- Fix dbus assertion +- move gtk part to its own package, to reduce bootstrapping + (bnc#713981). + +------------------------------------------------------------------- Fri Aug 26 14:10:30 UTC 2011 - fcrozat@suse.com - Update compose_table patch to use two separate loadkeys call, Index: systemd.spec =================================================================== --- systemd.spec (revision 186) +++ systemd.spec (revision 29) @@ -21,8 +21,8 @@ Name: systemd Url: http://www.freedesktop.org/wiki/Software/systemd -Version: 33 -Release: 17 +Version: 34 +Release: 1 License: GPLv2+ Group: System/Base Summary: A System and Session Manager @@ -32,11 +32,11 @@ BuildRequires: audit-devel BuildRequires: gperf BuildRequires: libcap-devel +BuildRequires: libacl-devel BuildRequires: tcpd-devel BuildRequires: pam-devel BuildRequires: libcryptsetup-devel BuildRequires: pkg-config -BuildRequires: gtk2-devel libnotify-devel libxslt-devel BuildRequires: libselinux-devel libsepol-devel BuildRequires: intltool Requires: udev >= 172 @@ -62,18 +62,7 @@ # Never add any patches to this package without the upstream commit id # in the patch. Any patches added here without a very good reason to make # an exception will be silently removed with the next version update. -# PATCH-FIX-UPSTREAM aj@suse.de gperf: Include missing.h -Patch2: gperf-missing.patch -# PATCH-FIX-UPSTREAM fcrozat@suse.com -- accept none option in crypttab -Patch3: systemd-cryptsetup.patch -# PATCH-FIX-UPSTREAM fcrozat@suse.com -- don't set getty before passphrase is typed -Patch4: systemd-cryptsetup-query.patch -# PATCH-FIX-UPSTREAM aj@suse.com -- fix crash on systemctl enable -Patch5: fix-crash.patch -# PATCH-FIX-UPSTREAM fcrozat@suse.com bnc671673 -- fix kexec support -Patch7: 0001-initctl-check-for-kexec_loaded-when-reboot-is-reques.patch -# PATCH-FIX-UPSTREAM fcrozat@suse.com -- don't look for system manager configuration when running user manager -Patch9: 0001-path-lookup-monitor-etc-systemd-user-for-user-manage.patch +Patch9: 0001-execute-fix-bus-serialization-for-commands.patch %description Systemd is a system and service manager, compatible with SysV and LSB @@ -95,15 +84,6 @@ %description devel Development headers and auxiliary files for developing applications for systemd. -%package gtk -License: GPLv2+ -Group: System/Base -Summary: Graphical front-end for systemd -Requires: %{name} = %{version} - -%description gtk -Graphical front-end for systemd system and service manager. - %package sysvinit License: GPLv2+ Group: System/Base @@ -134,12 +114,7 @@ %prep %setup -q %patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 %patch6 -p1 -%patch7 -p1 %patch8 -p1 %patch9 -p1 @@ -153,6 +128,7 @@ --with-distro=suse \ --docdir=%{_docdir}/systemd \ --with-rootdir= \ + --disable-gtk \ CFLAGS="%{optflags}" make %{?_smp_mflags} @@ -185,6 +161,7 @@ ln -s /dev/null %{buildroot}/lib/systemd/system/clock.service ln -s /dev/null %{buildroot}/lib/systemd/system/crypto.service ln -s /dev/null %{buildroot}/lib/systemd/system/crypto-early.service +ln -s /dev/null %{buildroot}/lib/systemd/system/device-mapper.service ln -s /dev/null %{buildroot}/lib/systemd/system/earlysyslog.service ln -s /dev/null %{buildroot}/lib/systemd/system/kbd.service ln -s /dev/null %{buildroot}/lib/systemd/system/ldconfig.service @@ -334,11 +311,6 @@ %dir /var/lib/systemd/sysv-convert %dir /var/lib/systemd/migrated -%files gtk -%defattr(-,root,root,-) -%{_bindir}/systemadm -%{_bindir}/systemd-gnome-ask-password-agent -%{_mandir}/man1/systemadm.1* %files devel %defattr(-,root,root,-) Index: 0001-execute-fix-bus-serialization-for-commands.patch =================================================================== --- 0001-execute-fix-bus-serialization-for-commands.patch (added) +++ 0001-execute-fix-bus-serialization-for-commands.patch (revision 29) @@ -0,0 +1,44 @@ +From 7daa9e6e29b546275566084512ea4e547bc79b91 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering <lennart@poettering.net> +Date: Mon, 29 Aug 2011 19:44:52 +0200 +Subject: [PATCH] execute: fix bus serialization for commands + +--- + src/dbus-execute.c | 7 +++++-- + 1 files changed, 5 insertions(+), 2 deletions(-) + +diff --git a/src/dbus-execute.c b/src/dbus-execute.c +index 6ceffc5..201f6b5 100644 +--- a/src/dbus-execute.c ++++ b/src/dbus-execute.c +@@ -308,13 +308,14 @@ int bus_execute_append_command(DBusMessageIter *i, const char *property, void *d + assert(i); + assert(property); + +- if (!dbus_message_iter_open_container(i, DBUS_TYPE_ARRAY, "(sasbttuii)", &sub)) ++ if (!dbus_message_iter_open_container(i, DBUS_TYPE_ARRAY, "(sasbttttuii)", &sub)) + return -ENOMEM; + + LIST_FOREACH(command, c, c) { + char **l; + uint32_t pid; + int32_t code, status; ++ dbus_bool_t b; + + if (!c->path) + continue; +@@ -332,8 +333,10 @@ int bus_execute_append_command(DBusMessageIter *i, const char *property, void *d + code = (int32_t) c->exec_status.code; + status = (int32_t) c->exec_status.status; + ++ b = !!c->ignore; ++ + if (!dbus_message_iter_close_container(&sub2, &sub3) || +- !dbus_message_iter_append_basic(&sub2, DBUS_TYPE_BOOLEAN, &c->ignore) || ++ !dbus_message_iter_append_basic(&sub2, DBUS_TYPE_BOOLEAN, &b) || + !dbus_message_iter_append_basic(&sub2, DBUS_TYPE_UINT64, &c->exec_status.start_timestamp.realtime) || + !dbus_message_iter_append_basic(&sub2, DBUS_TYPE_UINT64, &c->exec_status.start_timestamp.monotonic) || + !dbus_message_iter_append_basic(&sub2, DBUS_TYPE_UINT64, &c->exec_status.exit_timestamp.realtime) || +-- +1.7.3.4 + Index: pre_checkin.sh =================================================================== --- pre_checkin.sh (added) +++ pre_checkin.sh (revision 29) @@ -0,0 +1,6 @@ +#!/bin/sh + +VERSION=`sed -e '/^Version:/!d' -e 's/Version: *//' systemd.spec` +RELEASE=`sed -e '/^Release:/!d' -e 's/Release: *//' systemd.spec` +sed -i -e "s,^\(Version:[ tab]*\).*,\1$VERSION," -e "s,^\(Release:[ tab]*\).*,\1$RELEASE," systemd-gtk.spec +cp systemd.changes systemd-gtk.changes Index: systemd-34.tar.bz2 =================================================================== Binary files systemd-34.tar.bz2 (revision 29) added Index: systemd-gtk.changes =================================================================== --- systemd-gtk.changes (added) +++ systemd-gtk.changes (revision 29) @@ -0,0 +1,1640 @@ +------------------------------------------------------------------- +Thu Sep 1 09:25:40 UTC 2011 - fcrozat@novell.com + +- Update to version 34: + * Bugfixes + * optionaly apply cgroup attributes to cgroups systemd creates + * honour sticky bit when trimming cgroup trees + * improve readahead +- Add libacl-devel as BuildRequires (needed for systemd-uaccess) +- Add some %{nil} to systemd.macros to fix some build issues. +- Fix dbus assertion +- move gtk part to its own package, to reduce bootstrapping + (bnc#713981). + +------------------------------------------------------------------- +Fri Aug 26 14:10:30 UTC 2011 - fcrozat@suse.com + +- Update compose_table patch to use two separate loadkeys call, + compose table overflows otherwise (spotted by Werner Fink). + +------------------------------------------------------------------- +Wed Aug 24 13:02:12 UTC 2011 - fcrozat@novell.com + +- Add tty1.patch: ensure passphrase are handled before starting + gettty on tty1. +- Add inittab generator, creating default.target at startup based + on /etc/inittab value. +- No longer try to create /etc/systemd/system/default.target at + initial package install (bnc#707418) +- Fix configuration path used for systemd user manager. +- Ensure pam-config output is no display in install script. +- Remove buildrequires on vala, no longer needed. + +------------------------------------------------------------------- +Fri Aug 19 15:29:49 UTC 2011 - fcrozat@suse.com + +- Handle disable_capslock, compose table and kbd_rate +- Add rpm macros.systemd file. +- Do not disable klogd, it has its own service now. +- Handle kexec correctly (bnc#671673). +- Disable preload services, they are conflicting with systemd. + +------------------------------------------------------------------- +Fri Aug 19 08:15:15 UTC 2011 - fcrozat@suse.com + +- enable pam_systemd module, using pam-config. + +------------------------------------------------------------------- +Thu Aug 18 07:31:12 UTC 2011 - aj@suse.de + +- Fix crash with systemctl enable. + +------------------------------------------------------------------- +Tue Aug 16 17:02:27 UTC 2011 - fcrozat@suse.com + +- Fix localfs.service to no cause cycle and starts it after + local-fs.target. + +------------------------------------------------------------------- +Thu Aug 4 15:59:58 UTC 2011 - fcrozat@suse.com + +- Remove root-fsck.patch, mkinitrd will use the same path as + dracut. +- Add systemd-cryptsetup.patch: don't complain on "none" option in + crypttab. +- Add systemd-cryptsetup-query.patch: block boot until passphrase + is typed. + +------------------------------------------------------------------- +Wed Aug 3 16:03:25 UTC 2011 - fcrozat@suse.com + +- Add root-fsck.patch: do not run fsck on / if it is rw +- Ship a non null localfs.service, fixes static mount points not + being mounted properly. + +------------------------------------------------------------------- +Wed Aug 3 07:11:33 UTC 2011 - aj@suse.de + +- Update to version 33: + * optimizations and bugfixes. + * New PrivateNetwork= service setting which allows you to shut off + networking for a specific service (i.e. all routable network + interfaces will disappear for that service). + * Merged insserv-parsing.patch and bash-completion-restart.patch + patches. + +------------------------------------------------------------------- +Tue Aug 2 08:29:30 UTC 2011 - fcrozat@suse.com + +- Add insserv-parsing.patch: read/parse insserv.conf. +- Add bash-completion-restart.patch: fix restart service list + (bnc#704782). + +------------------------------------------------------------------- +Mon Aug 1 09:04:53 UTC 2011 - aj@suse.de + +- Split up devel package. +- restart logind after upgrade. +- Adjust rpmlintrc for changes. + +------------------------------------------------------------------- +Fri Jul 29 10:48:20 UTC 2011 - aj@suse.de + +- Update to version 32: + * bugfixes + * improve selinux setup + +------------------------------------------------------------------- +Thu Jul 28 07:27:32 UTC 2011 - aj@suse.de + +- Update to version 31: + * rewrite of enable/disable code: New features systemctl --runtime, + systemctl mask, systemctl link and presets. + * sd-daemon is now shared library. + +------------------------------------------------------------------- +Tue Jul 19 11:56:43 UTC 2011 - aj@suse.de + +- Update to version 30: + + Logic from pam_systemd has been moved to new systemd-login. + + VT gettys are autospawn only when needed + + Handle boot.local/halt.local on SUSE distribution + + add support for systemctl --root + +------------------------------------------------------------------- +Wed Jun 29 12:54:24 UTC 2011 - fcrozat@suse.com + +- Make sure to not start kbd initscript, it is handled by systemd + natively. + +------------------------------------------------------------------- +Fri Jun 17 09:34:24 UTC 2011 - fcrozat@novell.com + +- version 29: + + enable chkconfig support in systemctl for openSUSE. + + systemctl: plug a leak upon create_symlink mismatch + + mount /run without MS_NOEXEC + + dbus: fix name of capability property + + systemctl: fix double unref of a dbus message + + cryptsetup-generator: fix /etc/cryptsetup options + + selinux: selinuxfs can be mounted on /sys/fs/selinux + + readahead-common: fix total memory size detection + + systemctl: fix 'is-enabled' for native units under /lib + + systemctl: fix a FILE* leak + + pam-module: add debug= parameter + + remote-fs.target: do not order after network.target +- update tarball url. + +------------------------------------------------------------------- +Wed Jun 15 10:00:29 UTC 2011 - saschpe@suse.de + +- Use RPM macros instead of $RPM_FOO variables +- Don't require %{version}-%{release} of the base package, + %{version} is sufficient + +------------------------------------------------------------------- +Tue Jun 14 15:10:41 CEST 2011 - kay.sievers@novell.com + +- new snapshot + - mount /run without MS_NOEXEC + - readahead-common: fix total memory size detection + - enable chkconfig support in systemctl for openSUSE + - selinux: selinuxfs can be mounted on /sys/fs/selinux + - cryptsetup-generator: fix /etc/cryptsetup options + - systemctl: fix double unref of a dbus message +- drop merged chkconfig patch + +------------------------------------------------------------------- +Tue Jun 14 12:39:25 UTC 2011 - fcrozat@novell.com + +- Add sysv chkconfig patch to be able to enable / disable sysv + initscripts with systemctl. +- Ensure plymouth support is buildable conditionnally. + +------------------------------------------------------------------- +Thu May 26 21:16:06 CEST 2011 - kay.sievers@novell.com + +- version 28 + - drop hwclock-save.service + - fix segfault when a DBus message has no interface + - man: update the list of unit search locations + - readahead-collect: ignore EACCES for fanotify + - rtc in localtime: use settimeofday(NULL, tz) + instead of hwclock(8) + +------------------------------------------------------------------- +Sat May 21 23:57:30 CEST 2011 - kay.sievers@novell.com + +- new snapshot + - fix crash in D-Bus code + +------------------------------------------------------------------- +Sat May 21 18:17:59 CEST 2011 - kay.sievers@novell.com + +- new snapshot + - socket: always use SO_{RCV,SND}BUFFORCE to allow larger values + - util: use new VT ESC sequence to clear scrollback buffer + - sd-daemon: move _sd_hidden_ from .h to .c file + - missing: add IP_TRANSPARENT (1441 more lines skipped) Index: systemd-gtk.spec =================================================================== --- systemd-gtk.spec (added) +++ systemd-gtk.spec (revision 29) @@ -0,0 +1,83 @@ +# +# spec file for package systemd-gtk +# +# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + +# norootforbuild + +Name: systemd-gtk +Url: http://www.freedesktop.org/wiki/Software/systemd +Version: 34 +Release: 1 +License: GPLv2+ +Group: System/Base +BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildRequires: libudev-devel udev +BuildRequires: dbus-1-devel +BuildRequires: audit-devel +BuildRequires: gperf +BuildRequires: libcap-devel +BuildRequires: libacl-devel +BuildRequires: tcpd-devel +BuildRequires: pam-devel +BuildRequires: libcryptsetup-devel +BuildRequires: pkg-config +BuildRequires: libselinux-devel libsepol-devel +BuildRequires: intltool +BuildRequires: gtk2-devel libnotify-devel +Summary: Graphical front-end for systemd +Requires: systemd = %{version} +Source0: http://www.freedesktop.org/software/systemd/systemd-%{version}.tar.bz2 +Source1: systemd-rpmlintrc + +# Upstream First - Policy: +# Never add any patches to this package without the upstream commit id +# in the patch. Any patches added here without a very good reason to make +# an exception will be silently removed with the next version update. + +%description +Graphical front-end for systemd system and service manager. + +%prep +%setup -q -n systemd-%{version} + +%build +autoreconf -fiv +# prevent pre-generated and distributed files from re-building +find . -name "*.[1-8]" -exec touch '{}' \; +touch src/systemadm.c +export V=1 +%configure \ + --with-distro=suse \ + --docdir=%{_docdir}/systemd \ + --with-rootdir= \ + CFLAGS="%{optflags}" +make %{?_smp_mflags} + +%install +%makeinstall +# remove everything but systemadm and password agent +find %{buildroot} -not -type d -not -name 'systemadm*' -not -name systemd-gnome-ask-password-agent -delete + +%clean +rm -rf %{buildroot} + +%files +%defattr(-,root,root,-) +%{_bindir}/systemadm +%{_bindir}/systemd-gnome-ask-password-agent +%{_mandir}/man1/systemadm.1* + +%changelog Index: 0001-initctl-check-for-kexec_loaded-when-reboot-is-reques.patch =================================================================== --- 0001-initctl-check-for-kexec_loaded-when-reboot-is-reques.patch (revision 186) +++ 0001-initctl-check-for-kexec_loaded-when-reboot-is-reques.patch (deleted) @@ -1,82 +0,0 @@ -From b1e304bb59e1a80abacfd6f0377ae14c3c1a10cc Mon Sep 17 00:00:00 2001 -From: Frederic Crozat <fcrozat@suse.com> -Date: Mon, 22 Aug 2011 14:58:50 +0200 -Subject: [PATCH] initctl: check for kexec_loaded when reboot is requested through initctl - ---- - src/initctl.c | 2 ++ - src/systemctl.c | 12 ------------ - src/util.c | 12 ++++++++++++ - src/util.h | 2 ++ - 4 files changed, 16 insertions(+), 12 deletions(-) - -diff --git a/src/initctl.c b/src/initctl.c -index f36f1cc..eaa717a 100644 ---- a/src/initctl.c -+++ b/src/initctl.c -@@ -93,6 +93,8 @@ static const char *translate_runlevel(int runlevel, bool *isolate) { - for (i = 0; i < ELEMENTSOF(table); i++) - if (table[i].runlevel == runlevel) { - *isolate = table[i].isolate; -+ if (runlevel == '6' && kexec_loaded()) -+ return SPECIAL_KEXEC_TARGET; - return table[i].special; - } - -diff --git a/src/systemctl.c b/src/systemctl.c -index bb998d3..0ff9221 100644 ---- a/src/systemctl.c -+++ b/src/systemctl.c -@@ -4403,18 +4403,6 @@ static int parse_time_spec(const char *t, usec_t *_u) { - return 0; - } - --static bool kexec_loaded(void) { -- bool loaded = false; -- char *s; -- -- if (read_one_line_file("/sys/kernel/kexec_loaded", &s) >= 0) { -- if (s[0] == '1') -- loaded = true; -- free(s); -- } -- return loaded; --} -- - static int shutdown_parse_argv(int argc, char *argv[]) { - - enum { -diff --git a/src/util.c b/src/util.c -index 8d54049..247156d 100644 ---- a/src/util.c -+++ b/src/util.c -@@ -5680,3 +5680,15 @@ static const char *const signal_table[] = { - }; - - DEFINE_STRING_TABLE_LOOKUP(signal, int); -+ -+bool kexec_loaded(void) { -+ bool loaded = false; -+ char *s; -+ -+ if (read_one_line_file("/sys/kernel/kexec_loaded", &s) >= 0) { -+ if (s[0] == '1') -+ loaded = true; -+ free(s); -+ } -+ return loaded; -+} -diff --git a/src/util.h b/src/util.h -index 407160d..8b31e5b 100644 ---- a/src/util.h -+++ b/src/util.h -@@ -497,4 +497,6 @@ int signal_from_string_try_harder(const char *s); - extern int saved_argc; - extern char **saved_argv; - -+bool kexec_loaded(void); -+ - #endif --- -1.7.3.4 - Index: 0001-path-lookup-monitor-etc-systemd-user-for-user-manage.patch =================================================================== --- 0001-path-lookup-monitor-etc-systemd-user-for-user-manage.patch (revision 186) +++ 0001-path-lookup-monitor-etc-systemd-user-for-user-manage.patch (deleted) @@ -1,25 +0,0 @@ -From 1cf32c016f97b2c99d7df06ce5d5b858f86c507a Mon Sep 17 00:00:00 2001 -From: Frederic Crozat <fcrozat@suse.com> -Date: Wed, 24 Aug 2011 13:39:06 +0200 -Subject: [PATCH] path-lookup: monitor /etc/systemd/user for user manager - ---- - src/path-lookup.c | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/src/path-lookup.c b/src/path-lookup.c -index bed9175..5f5ad8c 100644 ---- a/src/path-lookup.c -+++ b/src/path-lookup.c -@@ -209,7 +209,7 @@ int lookup_paths_init(LookupPaths *p, ManagerRunningAs running_as, bool personal - * the arrays in user_dirs() above! */ - "/run/systemd/user", - USER_CONFIG_UNIT_PATH, -- "/etc/systemd/system", -+ "/etc/systemd/user", - "/usr/local/lib/systemd/user", - "/usr/local/share/systemd/user", - USER_DATA_UNIT_PATH, --- -1.7.3.4 - Index: fix-crash.patch =================================================================== --- fix-crash.patch (revision 186) +++ fix-crash.patch (deleted) @@ -1,19 +0,0 @@ -commit e191553d1dc80cd6d65d05f0cb29f8967fab6983 -Author: Kay Sievers <kay.sievers@vrfy.org> -Date: Wed Aug 17 19:38:07 2011 +0200 - - convert int to boolean for dbus_bool_t - -diff --git a/src/dbus-manager.c b/src/dbus-manager.c -index ae88895..cfc2afc 100644 ---- a/src/dbus-manager.c -+++ b/src/dbus-manager.c -@@ -444,7 +444,7 @@ static DBusMessage *message_from_file_changes( - if (carries_install_info >= 0) { - dbus_bool_t b; - -- b = carries_install_info; -+ b = !!carries_install_info; - if (!dbus_message_iter_append_basic(&iter, DBUS_TYPE_BOOLEAN, &b)) - goto oom; - } Index: gperf-missing.patch =================================================================== --- gperf-missing.patch (revision 186) +++ gperf-missing.patch (deleted) @@ -1,25 +0,0 @@ -From: Thierry Reding <thierry.reding@avionic-design.de> -To: systemd-devel@lists.freedesktop.org -Date: Wed, 3 Aug 2011 08:40:27 +0200 -Subject: [systemd-devel] [PATCH] gperf: Include missing.h. - -Older GNU C libraries don't define RLIMIT_RTTIME, so including the -missing.h is required to fix the build. ---- - src/load-fragment-gperf.gperf.m4 | 1 + - 1 files changed, 1 insertions(+), 0 deletions(-) - -diff --git a/src/load-fragment-gperf.gperf.m4 b/src/load-fragment-gperf.gperf.m4 -index 650f444..8e52890 100644 ---- a/src/load-fragment-gperf.gperf.m4 -+++ b/src/load-fragment-gperf.gperf.m4 -@@ -2,6 +2,7 @@ - #include <stddef.h> - #include "conf-parser.h" - #include "load-fragment.h" -+#include "missing.h" - %} - struct ConfigPerfItem; - %null_strings --- -1.7.6 Index: systemd-33.tar.bz2 =================================================================== Binary files systemd-33.tar.bz2 (revision 186) deleted Index: systemd-cryptsetup-query.patch =================================================================== --- systemd-cryptsetup-query.patch (revision 186) +++ systemd-cryptsetup-query.patch (deleted) @@ -1,28 +0,0 @@ -From d58446e4b3217f97baca7961154813a563ccdd19 Mon Sep 17 00:00:00 2001 -From: Frederic Crozat <fcrozat@suse.com> -Date: Thu, 4 Aug 2011 16:46:33 +0200 -Subject: [PATCH] cryptsetup-generator: block boot when querying passphrase. - -Ensure we wait for passphrase before starting tty1 or graphical display. -Needed when not using plymouth. ---- - src/cryptsetup-generator.c | 3 ++- - 1 files changed, 2 insertions(+), 1 deletions(-) - -diff --git a/src/cryptsetup-generator.c b/src/cryptsetup-generator.c -index a340218..6f3aa78 100644 ---- a/src/cryptsetup-generator.c -+++ b/src/cryptsetup-generator.c -@@ -112,7 +112,8 @@ static int create_disk( - "DefaultDependencies=no\n" - "BindTo=%s dev-mapper-%%i.device\n" - "After=systemd-readahead-collect.service systemd-readahead-replay.service %s\n" -- "Before=umount.target\n", -+ "Before=umount.target\n" -+ "Before=local-fs.target\n", - d, d); - - if (!nofail) --- -1.7.3.4 - Index: systemd-cryptsetup.patch =================================================================== --- systemd-cryptsetup.patch (revision 186) +++ systemd-cryptsetup.patch (deleted) @@ -1,25 +0,0 @@ -From aa5f34f2109a02db7887c220c5a35b6a8ee3e6c8 Mon Sep 17 00:00:00 2001 -From: Frederic Crozat <fcrozat@suse.com> -Date: Thu, 4 Aug 2011 16:04:43 +0200 -Subject: [PATCH] cryptsetup: accept "none" option - ---- - src/cryptsetup.c | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/src/cryptsetup.c b/src/cryptsetup.c -index cf288de..ac7b6d6 100644 ---- a/src/cryptsetup.c -+++ b/src/cryptsetup.c -@@ -110,7 +110,7 @@ static int parse_one_option(const char *option) { - return 0; - } - -- } else -+ } else if (!streq(option, "none")) - log_error("Encountered unknown /etc/crypttab option '%s', ignoring.", option); - - return 0; --- -1.7.3.4 - OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=187
353 lines
12 KiB
RPMSpec
353 lines
12 KiB
RPMSpec
#
|
|
# spec file for package systemd
|
|
#
|
|
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
#
|
|
|
|
# norootforbuild
|
|
|
|
%define build_plymouth 0
|
|
|
|
Name: systemd
|
|
Url: http://www.freedesktop.org/wiki/Software/systemd
|
|
Version: 34
|
|
Release: 1
|
|
License: GPLv2+
|
|
Group: System/Base
|
|
Summary: A System and Session Manager
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
BuildRequires: libudev-devel udev
|
|
BuildRequires: dbus-1-devel
|
|
BuildRequires: audit-devel
|
|
BuildRequires: gperf
|
|
BuildRequires: libcap-devel
|
|
BuildRequires: libacl-devel
|
|
BuildRequires: tcpd-devel
|
|
BuildRequires: pam-devel
|
|
BuildRequires: libcryptsetup-devel
|
|
BuildRequires: pkg-config
|
|
BuildRequires: libselinux-devel libsepol-devel
|
|
BuildRequires: intltool
|
|
Requires: udev >= 172
|
|
Requires: dbus-1 >= 1.4.0
|
|
Requires: kbd
|
|
Requires: util-linux >= 2.19
|
|
Requires: pam-config
|
|
Conflicts: filesystem < 11.5
|
|
Conflicts: mkinitrd < 2.7.0
|
|
Source0: http://www.freedesktop.org/software/systemd/%{name}-%{version}.tar.bz2
|
|
Source1: systemd-rpmlintrc
|
|
Source2: localfs.service
|
|
Source3: systemd-sysv-convert
|
|
Source4: macros.systemd
|
|
Source5: systemd-inittab
|
|
Patch1: 0001-Add-bootsplash-handling-for-password-dialogs.patch
|
|
# handle SUSE specific kbd settings
|
|
Patch6: 0001-handle-disable_caplock-and-compose_table-and-kbd_rat.patch
|
|
# don't start getty on tty1 until all password request are done
|
|
Patch8: tty1.patch
|
|
|
|
# Upstream First - Policy:
|
|
# Never add any patches to this package without the upstream commit id
|
|
# in the patch. Any patches added here without a very good reason to make
|
|
# an exception will be silently removed with the next version update.
|
|
Patch9: 0001-execute-fix-bus-serialization-for-commands.patch
|
|
|
|
%description
|
|
Systemd is a system and service manager, compatible with SysV and LSB
|
|
init scripts for Linux. systemd provides aggressive parallelization
|
|
capabilities, uses socket and D-Bus activation for starting services,
|
|
offers on-demand starting of daemons, keeps track of processes using
|
|
Linux cgroups, supports snapshotting and restoring of the system state,
|
|
maintains mount and automount points and implements an elaborate
|
|
transactional dependency-based service control logic. It can work as a
|
|
drop-in replacement for sysvinit.
|
|
|
|
%package devel
|
|
License: GPLv2+
|
|
Group: Development/Libraries/C and C++
|
|
Summary: Development headers for systemd
|
|
Requires: %{name} = %{version}
|
|
Requires: pkg-config
|
|
|
|
%description devel
|
|
Development headers and auxiliary files for developing applications for systemd.
|
|
|
|
%package sysvinit
|
|
License: GPLv2+
|
|
Group: System/Base
|
|
Summary: System V init tools
|
|
Requires: %{name} = %{version}
|
|
Provides: sbin_init
|
|
Conflicts: sysvinit
|
|
Conflicts: upstart
|
|
|
|
%description sysvinit
|
|
Drop-in replacement of System V init tools.
|
|
|
|
%if %{build_plymouth}
|
|
|
|
%package plymouth
|
|
|
|
|
|
License: GPLv2+
|
|
Group: System/Base
|
|
Summary: Plymouth support for systemd
|
|
Requires: %{name} = %{version}
|
|
Requires: plymouth
|
|
|
|
%description plymouth
|
|
Plymouth integration for systemd
|
|
%endif
|
|
|
|
%prep
|
|
%setup -q
|
|
%patch1 -p1
|
|
%patch6 -p1
|
|
%patch8 -p1
|
|
%patch9 -p1
|
|
|
|
%build
|
|
autoreconf -fiv
|
|
# prevent pre-generated and distributed files from re-building
|
|
find . -name "*.[1-8]" -exec touch '{}' \;
|
|
touch src/systemadm.c
|
|
export V=1
|
|
%configure \
|
|
--with-distro=suse \
|
|
--docdir=%{_docdir}/systemd \
|
|
--with-rootdir= \
|
|
--disable-gtk \
|
|
CFLAGS="%{optflags}"
|
|
make %{?_smp_mflags}
|
|
|
|
%install
|
|
%makeinstall
|
|
mkdir -p %{buildroot}%{_sysconfdir}/rpm
|
|
install -m644 %{S:4} %{buildroot}%{_sysconfdir}/rpm
|
|
find %{buildroot} -type f -name '*.la' -exec rm -f {} ';'
|
|
mkdir -p %{buildroot}/{sbin,var/lib/systemd/sysv-convert,var/lib/systemd/migrated}
|
|
install -m755 %{S:3} -D %{buildroot}%{_sbindir}/systemd-sysv-convert
|
|
install -m755 %{S:5} %{buildroot}/lib/systemd/system-generators
|
|
ln -s ../bin/systemd %{buildroot}/sbin/init
|
|
ln -s ../bin/systemctl %{buildroot}/sbin/reboot
|
|
ln -s ../bin/systemctl %{buildroot}/sbin/halt
|
|
ln -s ../bin/systemctl %{buildroot}/sbin/shutdown
|
|
ln -s ../bin/systemctl %{buildroot}/sbin/poweroff
|
|
ln -s ../bin/systemctl %{buildroot}/sbin/telinit
|
|
ln -s ../bin/systemctl %{buildroot}/sbin/runlevel
|
|
rm -rf %{buildroot}/etc/systemd/system/*.target.wants
|
|
rm -f %{buildroot}/etc/systemd/system/default.target
|
|
rm -f %{buildroot}/lib/systemd/system/default.target
|
|
%if !%{build_plymouth}
|
|
rm -f %{buildroot}/lib/systemd/system/plymouth-*.service
|
|
rm -f %{buildroot}/lib/systemd/system/*.wants/plymouth-*.service
|
|
rm -f %{buildroot}/lib/systemd/system/systemd-ask-password-plymouth.*
|
|
%endif
|
|
# aliases for /etc/init.d/*
|
|
ln -s /dev/null %{buildroot}/lib/systemd/system/cgroup.service
|
|
ln -s systemd-tmpfiles-setup.service %{buildroot}/lib/systemd/system/cleanup.service
|
|
ln -s /dev/null %{buildroot}/lib/systemd/system/clock.service
|
|
ln -s /dev/null %{buildroot}/lib/systemd/system/crypto.service
|
|
ln -s /dev/null %{buildroot}/lib/systemd/system/crypto-early.service
|
|
ln -s /dev/null %{buildroot}/lib/systemd/system/device-mapper.service
|
|
ln -s /dev/null %{buildroot}/lib/systemd/system/earlysyslog.service
|
|
ln -s /dev/null %{buildroot}/lib/systemd/system/kbd.service
|
|
ln -s /dev/null %{buildroot}/lib/systemd/system/ldconfig.service
|
|
ln -s /dev/null %{buildroot}/lib/systemd/system/loadmodules.service
|
|
install -m644 %{S:2} %{buildroot}/lib/systemd/system/localfs.service
|
|
ln -s /dev/null %{buildroot}/lib/systemd/system/localnet.service
|
|
ln -s /dev/null %{buildroot}/lib/systemd/system/proc.service
|
|
ln -s fsck-root.service %{buildroot}/lib/systemd/system/rootfsck.service
|
|
ln -s /dev/null %{buildroot}/lib/systemd/system/swap.service
|
|
ln -s /dev/null %{buildroot}/lib/systemd/system/startpreload.service
|
|
ln -s /dev/null %{buildroot}/lib/systemd/system/stoppreload.service
|
|
ln -s /dev/null %{buildroot}/lib/systemd/system/earlyxdm.service
|
|
ln -s systemd-sysctl.service %{buildroot}/lib/systemd/system/sysctl.service
|
|
ln -s systemd-random-seed-load.service %{buildroot}/lib/systemd/system/random.service
|
|
%if %{build_plymouth}
|
|
(cd %{buildroot} && find . -name '*plymouth*') > files.plymouth
|
|
%endif
|
|
|
|
%post
|
|
/usr/sbin/pam-config -a --systemd >/dev/null 2>&1 || :
|
|
/sbin/ldconfig
|
|
/bin/systemd-machine-id-setup >/dev/null 2>&1 || :
|
|
/bin/systemctl daemon-reexec >/dev/null 2>&1 || :
|
|
|
|
# Create default config in /etc at first install.
|
|
# Later package updates should not overwrite these settings.
|
|
if [ "$1" -eq 1 ]; then
|
|
# Enable these services by default.
|
|
/bin/systemctl enable \
|
|
getty@.service \
|
|
systemd-readahead-collect.service \
|
|
systemd-readahead-replay.service \
|
|
remote-fs.target >/dev/null 2>&1 || :
|
|
fi
|
|
|
|
%postun
|
|
/sbin/ldconfig
|
|
if [ $1 -ge 1 ]; then
|
|
/bin/systemctl try-restart systemd-logind.service >/dev/null 2>&1 || :
|
|
fi
|
|
if [ $1 -eq 0 ]; then
|
|
/usr/sbin/pam-config -d --systemd >/dev/null 2>&1 || :
|
|
fi
|
|
|
|
%preun
|
|
if [ $1 -eq 0 ]; then
|
|
/bin/systemctl disable \
|
|
getty@.service \
|
|
systemd-readahead-collect.service \
|
|
systemd-readahead-replay.service \
|
|
remote-fs.target >/dev/null 2>&1 || :
|
|
rm -f /etc/systemd/system/default.target 2>&1 || :
|
|
fi
|
|
|
|
%clean
|
|
rm -rf %{buildroot}
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
/bin/systemd
|
|
/bin/systemctl
|
|
/bin/systemd-notify
|
|
/bin/systemd-ask-password
|
|
/bin/systemd-loginctl
|
|
/bin/systemd-tty-ask-password-agent
|
|
/bin/systemd-tmpfiles
|
|
/bin/systemd-machine-id-setup
|
|
/usr/bin/systemd-nspawn
|
|
/usr/bin/systemd-stdio-bridge
|
|
/usr/bin/systemd-analyze
|
|
%{_sbindir}/systemd-sysv-convert
|
|
%{_libdir}/libsystemd-daemon.so.*
|
|
%{_libdir}/libsystemd-login.so.*
|
|
%{_bindir}/systemd-cgls
|
|
/lib/systemd/systemd-*
|
|
%dir /lib/systemd/system-shutdown
|
|
/%{_lib}/security/pam_systemd.so
|
|
%dir %{_sysconfdir}/systemd/system
|
|
%dir %{_sysconfdir}/systemd/user
|
|
%dir %{_sysconfdir}/xdg/systemd
|
|
%dir %{_sysconfdir}/xdg/systemd/user
|
|
|
|
%dir /usr/lib/modules-load.d
|
|
%dir %{_sysconfdir}/modules-load.d
|
|
%dir /usr/lib/tmpfiles.d
|
|
%dir %{_sysconfdir}/tmpfiles.d
|
|
%dir /usr/lib/binfmt.d
|
|
%dir %{_sysconfdir}/binfmt.d
|
|
%dir /usr/lib/sysctl.d
|
|
%dir %{_sysconfdir}/sysctl.d
|
|
/usr/lib/tmpfiles.d/*.conf
|
|
%config(noreplace) %{_sysconfdir}/systemd/system.conf
|
|
%config(noreplace) %{_sysconfdir}/systemd/systemd-logind.conf
|
|
%config(noreplace) %{_sysconfdir}/systemd/user.conf
|
|
%config(noreplace) %{_sysconfdir}/systemd/system.conf
|
|
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.locale1.conf
|
|
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.login1.conf
|
|
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.systemd1.conf
|
|
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.hostname1.conf
|
|
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.timedate1.conf
|
|
%{_datadir}/dbus-1/interfaces/org.freedesktop.hostname1.xml
|
|
%{_datadir}/dbus-1/interfaces/org.freedesktop.locale1.xml
|
|
%{_datadir}/dbus-1/interfaces/org.freedesktop.systemd1.*.xml
|
|
%{_datadir}/dbus-1/interfaces/org.freedesktop.timedate1.xml
|
|
%{_datadir}/dbus-1/services/org.freedesktop.systemd1.service
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.systemd1.service
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.locale1.service
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.login1.service
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.hostname1.service
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.timedate1.service
|
|
%{_datadir}/polkit-1
|
|
%{_datadir}/polkit-1/actions
|
|
%{_datadir}/polkit-1/actions/org.freedesktop.systemd1.policy
|
|
%if %{build_plymouth}
|
|
# Packaged in plymouth subpackage
|
|
%exclude /lib/systemd/system/plymouth-*.service
|
|
%exclude /lib/systemd/system/*.wants/plymouth-*.service
|
|
%exclude /lib/systemd/system/systemd-ask-password-plymouth.*
|
|
%endif
|
|
# Packaged in gtk subpackage
|
|
%exclude %{_mandir}/man1/systemadm.1*
|
|
# Packaged in sysvinit subpackage
|
|
%exclude %{_mandir}/man1/init.1*
|
|
%exclude %{_mandir}/man8/halt.8*
|
|
%exclude %{_mandir}/man8/reboot.8*
|
|
%exclude %{_mandir}/man8/shutdown.8*
|
|
%exclude %{_mandir}/man8/poweroff.8*
|
|
%exclude %{_mandir}/man8/telinit.8*
|
|
%exclude %{_mandir}/man8/runlevel.8*
|
|
%{_mandir}/man1/*.1*
|
|
%{_mandir}/man3/*.3*
|
|
%{_mandir}/man5/*.5*
|
|
%{_mandir}/man7/*.7*
|
|
%{_mandir}/man8/*.8*
|
|
%{_docdir}/systemd
|
|
/lib/udev/rules.d/*.rules
|
|
%dir /lib/systemd
|
|
/lib/systemd/system
|
|
/lib/systemd/system-generators
|
|
%dir /usr/lib/systemd
|
|
/usr/lib/systemd/user
|
|
%dir %{_sysconfdir}/systemd
|
|
%dir %{_sysconfdir}/bash_completion.d
|
|
/etc/bash_completion.d/systemctl-bash-completion.sh
|
|
/etc/rpm/macros.systemd
|
|
%dir /var/lib/systemd
|
|
%dir /var/lib/systemd/sysv-convert
|
|
%dir /var/lib/systemd/migrated
|
|
|
|
|
|
%files devel
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/libsystemd-daemon.so
|
|
%{_libdir}/libsystemd-login.so
|
|
%dir %{_includedir}/systemd
|
|
%{_includedir}/systemd/sd-login.h
|
|
%{_includedir}/systemd/sd-daemon.h
|
|
%{_datadir}/pkgconfig/systemd.pc
|
|
%{_libdir}/pkgconfig/libsystemd-daemon.pc
|
|
%{_libdir}/pkgconfig/libsystemd-login.pc
|
|
|
|
%if %{build_plymouth}
|
|
|
|
%files plymouth
|
|
%defattr(-,root,root,-)
|
|
/lib/systemd/system/plymouth-*.service
|
|
/lib/systemd/system/*.wants/plymouth-*.service
|
|
/lib/systemd/system/systemd-ask-password-plymouth.*
|
|
%endif
|
|
|
|
%files sysvinit
|
|
%defattr(-,root,root,-)
|
|
/sbin/init
|
|
/sbin/reboot
|
|
/sbin/halt
|
|
/sbin/shutdown
|
|
/sbin/poweroff
|
|
/sbin/telinit
|
|
/sbin/runlevel
|
|
%{_mandir}/man1/init.1*
|
|
%{_mandir}/man8/halt.8*
|
|
%{_mandir}/man8/reboot.8*
|
|
%{_mandir}/man8/shutdown.8*
|
|
%{_mandir}/man8/poweroff.8*
|
|
%{_mandir}/man8/telinit.8*
|
|
%{_mandir}/man8/runlevel.8*
|
|
|
|
%changelog
|