From 2ce609fe247e1bc6d87bf5b52dcac7286be1bc0949ed12ae666e39008a98698b Mon Sep 17 00:00:00 2001 From: Stephan Kulow Date: Fri, 2 Aug 2013 05:26:48 +0000 Subject: [PATCH] Accepting request 185496 from Base:System - Ensure /usr/lib/systemd/system/shutdown.target.wants is created and owned by systemd package. (forwarded request 185494 from fcrozat) OBS-URL: https://build.opensuse.org/request/show/185496 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/systemd?expand=0&rev=151 --- ...urnal-letting-interleaved-seqnums-go.patch | 74 -------- ...nt_dump-don-t-segfault-if-mount-is-n.patch | 34 ++++ ...-last-direction-of-search-and-keep-o.patch | 122 -------------- ...ups-release-agent-when-shutting-down.patch | 74 ++++++++ ...lculate-the-ACL-mask-but-only-if-it-.patch | 87 ---------- ...move-ancient-fallback-code-turn-conn.patch | 53 ++++++ ...message-output-at-shutdown-when-quie.patch | 69 ++++++++ ...llow-nuking-of-symlinks-to-removed-u.patch | 36 ---- ...port-alien-child-as-alive-when-it-s-.patch | 29 ---- ...ing-about-the-root-mount-from-mounti.patch | 33 ---- ...t-to-connect-to-a-session-bus-if-one.patch | 34 ---- ...enable-by_path-links-for-ata-devices.patch | 10 +- ...ate-by-id-scsi-links-for-ATA-devices.patch | 8 +- 1003-udev-netlink-null-rules.patch | 8 +- 1004-fix-devname-prefix.patch | 22 --- ...fault-links-for-primary-cd_dvd-drive.patch | 8 +- 1006-udev-always-rename-network.patch | 6 +- 1007-physical-hotplug-cpu-and-memory.patch | 12 +- 1008-add-msft-compability-rules.patch | 12 +- ...es-permissions-to-follow-openSUSE-po.patch | 6 +- ...-suspend-hibernate-calls-to-pm-utils.patch | 16 +- ...pport-for-SysV-scripts-for-the-early.patch | 20 +-- Start-ctrl-alt-del.target-irreversibly.patch | 27 --- allow-multiple-sulogin-to-be-started.patch | 18 +- apply-ACL-for-nvidia-device-nodes.patch | 14 +- ...alid-address-familily-is-passed-to-g.patch | 8 +- ...etup-after-md-dmraid-lvm-are-started.patch | 12 +- ...le-nss-myhostname-warning-bnc-783841.patch | 6 +- ...e-started-before-local-fs-pre-target.patch | 6 +- ...assword-wall-starts-after-getty-tty1.patch | 6 +- ...rtname-is-set-as-hostname-bnc-820213.patch | 8 +- ...are-applied-after-modules-are-loaded.patch | 8 +- fix-owner-of-var-log-btmp.patch | 6 +- ...-boot-prefixed-initscript-bnc-746506.patch | 8 +- ...t-after-cryptsetup-target-is-reached.patch | 8 +- ...STEMCTL_OPTIONS-environment-variable.patch | 8 +- ...plock-and-compose_table-and-kbd_rate.patch | 10 +- handle-etc-HOSTNAME.patch | 22 +-- ...lock-value-in-etc-sysconfig-keyboard.patch | 28 +-- ...lang-value-in-etc-sysconfig-language.patch | 41 +++-- insserv-generator.patch | 23 +-- macros.systemd.upstream | 5 + ...USE-etc-sysconfig-kernel-module-list.patch | 14 +- ...lly-warn-if-nss-myhostname-is-called.patch | 20 +-- ...script-heuristic-and-add-new-LSB-hea.patch | 20 +-- ...r-lock-bind-mount-if-they-aren-t-sym.patch | 24 +-- ...vice-with-detected-pid-as-RemainAfte.patch | 8 +- ...ndle-boot-sysctl.conf-kernel_release.patch | 12 +- ...oes-not-expand-u-so-revert-back-to-I.patch | 27 --- systemd-204.tar.xz | 3 - systemd-206.tar.xz | 3 + systemd-insserv_conf | 34 ---- systemd-mini-rpmlintrc | 2 + systemd-mini.changes | 159 ++++++++++++++++++ systemd-mini.spec | 101 ++++++----- systemd-rpm-macros.changes | 5 + systemd-rpm-macros.spec | 2 +- systemd-rpmlintrc | 2 + systemd-tmp-safe-defaults.patch | 6 +- systemd.changes | 159 ++++++++++++++++++ systemd.spec | 101 ++++++----- ...or-openSUSE-version-of-etc-sysconfig.patch | 6 +- ...r-sbin-sulogin-for-emergency-service.patch | 27 +++ 63 files changed, 877 insertions(+), 903 deletions(-) delete mode 100644 0001-journal-letting-interleaved-seqnums-go.patch create mode 100644 0002-core-mount.c-mount_dump-don-t-segfault-if-mount-is-n.patch delete mode 100644 0002-journal-remember-last-direction-of-search-and-keep-o.patch create mode 100644 0004-disable-the-cgroups-release-agent-when-shutting-down.patch delete mode 100644 0004-journald-DO-recalculate-the-ACL-mask-but-only-if-it-.patch create mode 100644 0005-cgroups-agent-remove-ancient-fallback-code-turn-conn.patch create mode 100644 0006-suppress-status-message-output-at-shutdown-when-quie.patch delete mode 100644 0006-systemctl-core-allow-nuking-of-symlinks-to-removed-u.patch delete mode 100644 0008-service-don-t-report-alien-child-as-alive-when-it-s-.patch delete mode 100644 0160-mount-when-learning-about-the-root-mount-from-mounti.patch delete mode 100644 0185-core-only-attempt-to-connect-to-a-session-bus-if-one.patch delete mode 100644 1004-fix-devname-prefix.patch delete mode 100644 Start-ctrl-alt-del.target-irreversibly.patch delete mode 100644 systemctl-does-not-expand-u-so-revert-back-to-I.patch delete mode 100644 systemd-204.tar.xz create mode 100644 systemd-206.tar.xz delete mode 100644 systemd-insserv_conf create mode 100644 use-usr-sbin-sulogin-for-emergency-service.patch diff --git a/0001-journal-letting-interleaved-seqnums-go.patch b/0001-journal-letting-interleaved-seqnums-go.patch deleted file mode 100644 index a3c6054a..00000000 --- a/0001-journal-letting-interleaved-seqnums-go.patch +++ /dev/null @@ -1,74 +0,0 @@ -From 53113dc8254cae9a27e321e539d2d876677e61b9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= -Date: Fri, 7 Jun 2013 22:01:03 -0400 -Subject: [PATCH] journal: letting (interleaved) seqnums go - -In the following scenario: - server creates system.journal - server creates user-1000.journal -both journals share the same seqnum_id. -Then - server writes to user-1000.journal first, - and server writes to system.journal a bit later, -and everything is fine. -The server then terminates (crash, reboot, rsyslog testing, -whatever), and user-1000.journal has entries which end with -a lower seqnum than system.journal. Now - server is restarted - server opens user-1000.journal and writes entries to it... -BAM! duplicate seqnums for the same seqnum_id. - -Now, we usually don't see that happen, because system.journal -is closed last, and opened first. Since usually at least one -message is written during boot and lands in the system.journal, -the seqnum is initialized from it, and is set to a number higher -than than anything found in user journals. Nevertheless, if -system.journal is corrupted and is rotated, it can happen that -an entry is written to the user journal with a seqnum that is -a duplicate with an entry found in the corrupted system.journal~. -When browsing the journal, journalctl can fall into a loop -where it tries to follow the seqnums, and tries to go the -next location by seqnum, and is transported back in time to -to the older duplicate seqnum. There is not way to find -out the maximum seqnum used in a multiple files, without -actually looking at all of them. But we don't want to do -that because it would be slow, and actually it isn't really -possible, because a file might e.g. be temporarily unaccessible. - -Fix the problem by using different seqnum series for user -journals. Using the same seqnum series for rotated journals -is still fine, because we know that nothing will write -to the rotated journal anymore. - -Likely related: -https://bugs.freedesktop.org/show_bug.cgi?id=64566 -https://bugs.freedesktop.org/show_bug.cgi?id=59856 -https://bugs.freedesktop.org/show_bug.cgi?id=64296 -https://bugs.archlinux.org/task/35581 -https://bugzilla.novell.com/show_bug.cgi?id=817778 - -Possibly related: -https://bugs.freedesktop.org/show_bug.cgi?id=64293 - -Conflicts: - src/journal/journald-server.c ---- - src/journal/journald-server.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/journal/journald-server.c b/src/journal/journald-server.c -index cc52b8a..cde63c8 100644 ---- a/src/journal/journald-server.c -+++ b/src/journal/journald-server.c -@@ -280,7 +280,7 @@ static JournalFile* find_journal(Server *s, uid_t uid) { - journal_file_close(f); - } - -- r = journal_file_open_reliably(p, O_RDWR|O_CREAT, 0640, s->compress, s->seal, &s->system_metrics, s->mmap, s->system_journal, &f); -+ r = journal_file_open_reliably(p, O_RDWR|O_CREAT, 0640, s->compress, s->seal, &s->system_metrics, s->mmap, NULL, &f); - free(p); - - if (r < 0) --- -1.8.2.1 - diff --git a/0002-core-mount.c-mount_dump-don-t-segfault-if-mount-is-n.patch b/0002-core-mount.c-mount_dump-don-t-segfault-if-mount-is-n.patch new file mode 100644 index 00000000..7db90f64 --- /dev/null +++ b/0002-core-mount.c-mount_dump-don-t-segfault-if-mount-is-n.patch @@ -0,0 +1,34 @@ +From 1e4fc9b1d8449e87474b3af8a4ddab09fab27cd5 Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Thu, 4 Jul 2013 11:01:47 +0200 +Subject: [PATCH 2/6] core/mount.c:mount_dump(): don't segfault, if mount is + not mounted anymore + +Don't segfault, if m->from_proc_self_mountinfo and m->from_fragment is +false. + +https://bugzilla.redhat.com/show_bug.cgi?id=957783#c9 +--- + src/core/mount.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/core/mount.c b/src/core/mount.c +index 3cc3e65..58a3f11 100644 +--- a/src/core/mount.c ++++ b/src/core/mount.c +@@ -822,9 +822,9 @@ static void mount_dump(Unit *u, FILE *f, const char *prefix) { + prefix, mount_state_to_string(m->state), + prefix, mount_result_to_string(m->result), + prefix, m->where, +- prefix, strna(p->what), +- prefix, strna(p->fstype), +- prefix, strna(p->options), ++ prefix, p ? strna(p->what) : "n/a", ++ prefix, p ? strna(p->fstype) : "n/a", ++ prefix, p ? strna(p->options) : "n/a", + prefix, yes_no(m->from_proc_self_mountinfo), + prefix, yes_no(m->from_fragment), + prefix, m->directory_mode); +-- +1.8.1.4 + diff --git a/0002-journal-remember-last-direction-of-search-and-keep-o.patch b/0002-journal-remember-last-direction-of-search-and-keep-o.patch deleted file mode 100644 index b710d55c..00000000 --- a/0002-journal-remember-last-direction-of-search-and-keep-o.patch +++ /dev/null @@ -1,122 +0,0 @@ -From 87011c25d96e9fbcd8a465ba758fa037c7d08203 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= -Date: Thu, 6 Jun 2013 22:28:05 -0400 -Subject: [PATCH 01/13] journal: remember last direction of search and keep - offset cache - -The fields in JournalFile are moved around to avoid wasting -7 bytes because of alignment. ---- - TODO | 3 --- - src/journal/journal-file.h | 18 +++++++++++------- - src/journal/sd-journal.c | 11 +++++------ - 3 files changed, 16 insertions(+), 16 deletions(-) - -diff --git a/TODO b/TODO -index 0dd19a0..1dc585c 100644 ---- a/TODO -+++ b/TODO -@@ -77,9 +77,6 @@ Features: - - * investigate endianess issues of UUID vs. GUID - --* see if we can fix https://bugs.freedesktop.org/show_bug.cgi?id=63672 -- without dropping the location cache entirely. -- - * dbus: when a unit failed to load (i.e. is in UNIT_ERROR state), we - should be able to safely try another attempt when the bus call LoadUnit() is invoked. - -diff --git a/src/journal/journal-file.h b/src/journal/journal-file.h -index 7b1cd42..5cc2c2d 100644 ---- a/src/journal/journal-file.h -+++ b/src/journal/journal-file.h -@@ -42,10 +42,14 @@ typedef struct JournalMetrics { - uint64_t keep_free; - } JournalMetrics; - -+typedef enum direction { -+ DIRECTION_UP, -+ DIRECTION_DOWN -+} direction_t; -+ - typedef struct JournalFile { - int fd; -- char *path; -- struct stat last_stat; -+ - mode_t mode; - - int flags; -@@ -56,6 +60,11 @@ typedef struct JournalFile { - - bool tail_entry_monotonic_valid; - -+ direction_t last_direction; -+ -+ char *path; -+ struct stat last_stat; -+ - Header *header; - HashItem *data_hash_table; - HashItem *field_hash_table; -@@ -90,11 +99,6 @@ typedef struct JournalFile { - #endif - } JournalFile; - --typedef enum direction { -- DIRECTION_UP, -- DIRECTION_DOWN --} direction_t; -- - int journal_file_open( - const char *fname, - int flags, -diff --git a/src/journal/sd-journal.c b/src/journal/sd-journal.c -index 3aa9ed4..4c4cc2d 100644 ---- a/src/journal/sd-journal.c -+++ b/src/journal/sd-journal.c -@@ -102,7 +102,8 @@ static void init_location(Location *l, LocationType type, JournalFile *f, Object - l->seqnum_set = l->realtime_set = l->monotonic_set = l->xor_hash_set = true; - } - --static void set_location(sd_journal *j, LocationType type, JournalFile *f, Object *o, uint64_t offset) { -+static void set_location(sd_journal *j, LocationType type, JournalFile *f, Object *o, -+ direction_t direction, uint64_t offset) { - assert(j); - assert(type == LOCATION_DISCRETE || type == LOCATION_SEEK); - assert(f); -@@ -110,12 +111,10 @@ static void set_location(sd_journal *j, LocationType type, JournalFile *f, Objec - - init_location(&j->current_location, type, f, o); - -- if (j->current_file) -- j->current_file->current_offset = 0; -- - j->current_file = f; - j->current_field = 0; - -+ f->last_direction = direction; - f->current_offset = offset; - } - -@@ -811,7 +810,7 @@ static int next_beyond_location(sd_journal *j, JournalFile *f, direction_t direc - assert(j); - assert(f); - -- if (f->current_offset > 0) { -+ if (f->last_direction == direction && f->current_offset > 0) { - cp = f->current_offset; - - r = journal_file_move_to_object(f, OBJECT_ENTRY, cp, &c); -@@ -908,7 +907,7 @@ static int real_journal_next(sd_journal *j, direction_t direction) { - if (r < 0) - return r; - -- set_location(j, LOCATION_DISCRETE, new_file, o, new_offset); -+ set_location(j, LOCATION_DISCRETE, new_file, o, direction, new_offset); - - return 1; - } --- -1.8.2.1 - diff --git a/0004-disable-the-cgroups-release-agent-when-shutting-down.patch b/0004-disable-the-cgroups-release-agent-when-shutting-down.patch new file mode 100644 index 00000000..52f7b574 --- /dev/null +++ b/0004-disable-the-cgroups-release-agent-when-shutting-down.patch @@ -0,0 +1,74 @@ +From ad929bcc27e2c6c1aa731053e45882686e9babab Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Thu, 4 Jul 2013 20:31:18 +0200 +Subject: [PATCH 4/6] disable the cgroups release agent when shutting down + +During shutdown, when we try to clean up all remaining processes, the +kernel will fork new agents every time a cgroup runs empty. These +new processes cause delays in the final SIGTERM, SIGKILL logic. + +Apart from that, this should also avoid that the kernel-forked binaries +cause unpredictably timed access to the filesystem which we might need to +unmount. +--- + src/core/main.c | 4 ++++ + src/shared/cgroup-util.c | 15 +++++++++++++++ + src/shared/cgroup-util.h | 1 + + 3 files changed, 20 insertions(+) + +diff --git a/src/core/main.c b/src/core/main.c +index 8b8e110..ada0f9d 100644 +--- a/src/core/main.c ++++ b/src/core/main.c +@@ -1942,6 +1942,10 @@ finish: + watchdog_close(true); + } + ++ /* avoid the creation of new processes forked by the kernel; at this ++ * point, we will not listen to the signals anyway */ ++ cg_uninstall_release_agent(SYSTEMD_CGROUP_CONTROLLER); ++ + execve(SYSTEMD_SHUTDOWN_BINARY_PATH, (char **) command_line, env_block); + free(env_block); + log_error("Failed to execute shutdown binary, freezing: %m"); +diff --git a/src/shared/cgroup-util.c b/src/shared/cgroup-util.c +index 390259e..73013d1 100644 +--- a/src/shared/cgroup-util.c ++++ b/src/shared/cgroup-util.c +@@ -790,6 +790,21 @@ int cg_install_release_agent(const char *controller, const char *agent) { + return 0; + } + ++int cg_uninstall_release_agent(const char *controller) { ++ _cleanup_free_ char *fs = NULL; ++ int r; ++ ++ r = cg_get_path(controller, NULL, "release_agent", &fs); ++ if (r < 0) ++ return r; ++ ++ r = write_string_file(fs, ""); ++ if (r < 0) ++ return r; ++ ++ return 0; ++} ++ + int cg_is_empty(const char *controller, const char *path, bool ignore_self) { + _cleanup_fclose_ FILE *f = NULL; + pid_t pid = 0, self_pid; +diff --git a/src/shared/cgroup-util.h b/src/shared/cgroup-util.h +index c781aab..0fc93c1 100644 +--- a/src/shared/cgroup-util.h ++++ b/src/shared/cgroup-util.h +@@ -89,6 +89,7 @@ int cg_set_group_access(const char *controller, const char *path, mode_t mode, u + int cg_set_task_access(const char *controller, const char *path, mode_t mode, uid_t uid, gid_t gid); + + int cg_install_release_agent(const char *controller, const char *agent); ++int cg_uninstall_release_agent(const char *controller); + + int cg_is_empty(const char *controller, const char *path, bool ignore_self); + int cg_is_empty_by_spec(const char *spec, bool ignore_self); +-- +1.8.1.4 + diff --git a/0004-journald-DO-recalculate-the-ACL-mask-but-only-if-it-.patch b/0004-journald-DO-recalculate-the-ACL-mask-but-only-if-it-.patch deleted file mode 100644 index cb24f70e..00000000 --- a/0004-journald-DO-recalculate-the-ACL-mask-but-only-if-it-.patch +++ /dev/null @@ -1,87 +0,0 @@ -From 7f20c71497ec7c78c6d2572a0d7075f78b14548a Mon Sep 17 00:00:00 2001 -From: "Jan Alexander Steffens (heftig)" -Date: Tue, 28 May 2013 20:45:34 +0200 -Subject: [PATCH 4/8] journald: DO recalculate the ACL mask, but only if it - doesn't exist - -Since 11ec7ce, journald isn't setting the ACLs properly anymore if -the files had no ACLs to begin with: acl_set_fd fails with EINVAL. - -An ACL with ACL_USER or ACL_GROUP entries but no ACL_MASK entry is -invalid, so make sure a mask exists before trying to set the ACL. ---- - src/journal/journald-server.c | 6 ++++-- - src/shared/acl-util.c | 28 ++++++++++++++++++++++++++++ - src/shared/acl-util.h | 1 + - 3 files changed, 33 insertions(+), 2 deletions(-) - -diff --git a/src/journal/journald-server.c b/src/journal/journald-server.c -index cc52b8a..01f23ce 100644 ---- a/src/journal/journald-server.c -+++ b/src/journal/journald-server.c -@@ -227,9 +227,11 @@ void server_fix_perms(Server *s, JournalFile *f, uid_t uid) { - } - } - -- /* We do not recalculate the mask here, so that the fchmod() mask above stays intact. */ -+ /* We do not recalculate the mask unconditionally here, -+ * so that the fchmod() mask above stays intact. */ - if (acl_get_permset(entry, &permset) < 0 || -- acl_add_perm(permset, ACL_READ) < 0) { -+ acl_add_perm(permset, ACL_READ) < 0 || -+ calc_acl_mask_if_needed(&acl) < 0) { - log_warning("Failed to patch ACL on %s, ignoring: %m", f->path); - goto finish; - } -diff --git a/src/shared/acl-util.c b/src/shared/acl-util.c -index 48bb12f..fb04e49 100644 ---- a/src/shared/acl-util.c -+++ b/src/shared/acl-util.c -@@ -69,6 +69,34 @@ int acl_find_uid(acl_t acl, uid_t uid, acl_entry_t *entry) { - return 0; - } - -+int calc_acl_mask_if_needed(acl_t *acl_p) { -+ acl_entry_t i; -+ int found; -+ -+ assert(acl_p); -+ -+ for (found = acl_get_entry(*acl_p, ACL_FIRST_ENTRY, &i); -+ found > 0; -+ found = acl_get_entry(*acl_p, ACL_NEXT_ENTRY, &i)) { -+ -+ acl_tag_t tag; -+ -+ if (acl_get_tag_type(i, &tag) < 0) -+ return -errno; -+ -+ if (tag == ACL_MASK) -+ return 0; -+ } -+ -+ if (found < 0) -+ return -errno; -+ -+ if (acl_calc_mask(acl_p) < 0) -+ return -errno; -+ -+ return 0; -+} -+ - int search_acl_groups(char*** dst, const char* path, bool* belong) { - acl_t acl; - -diff --git a/src/shared/acl-util.h b/src/shared/acl-util.h -index 23090d9..36ef490 100644 ---- a/src/shared/acl-util.h -+++ b/src/shared/acl-util.h -@@ -24,4 +24,5 @@ - #include - - int acl_find_uid(acl_t acl, uid_t uid, acl_entry_t *entry); -+int calc_acl_mask_if_needed(acl_t *acl_p); - int search_acl_groups(char*** dst, const char* path, bool* belong); --- -1.8.1.4 - diff --git a/0005-cgroups-agent-remove-ancient-fallback-code-turn-conn.patch b/0005-cgroups-agent-remove-ancient-fallback-code-turn-conn.patch new file mode 100644 index 00000000..2f4b7254 --- /dev/null +++ b/0005-cgroups-agent-remove-ancient-fallback-code-turn-conn.patch @@ -0,0 +1,53 @@ +From c1eba3008cac9e625b8bb774e9b44ceec8465980 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Thu, 4 Jul 2013 20:54:40 +0200 +Subject: [PATCH 5/6] cgroups-agent: remove ancient fallback code; turn + connection error into warning + +During re-execution and shutdown cgroups agents might not be able +to connect to systemd's private D-Bus socket, the printed error to +the console is misleding in that case, so turn it into a warning. +--- + src/cgroups-agent/cgroups-agent.c | 19 ++++++------------- + 1 file changed, 6 insertions(+), 13 deletions(-) + +diff --git a/src/cgroups-agent/cgroups-agent.c b/src/cgroups-agent/cgroups-agent.c +index 0e3d2b7..a47949a 100644 +--- a/src/cgroups-agent/cgroups-agent.c ++++ b/src/cgroups-agent/cgroups-agent.c +@@ -48,26 +48,19 @@ int main(int argc, char *argv[]) { + * this to avoid an activation loop when we start dbus when we + * are called when the dbus service is shut down. */ + +- if (!(bus = dbus_connection_open_private("unix:path=/run/systemd/private", &error))) { +-#ifndef NOLEGACY +- dbus_error_free(&error); +- +- /* Retry with the pre v21 socket name, to ease upgrades */ +- if (!(bus = dbus_connection_open_private("unix:abstract=/org/freedesktop/systemd1/private", &error))) { +-#endif +- log_error("Failed to get D-Bus connection: %s", bus_error_message(&error)); +- goto finish; +- } +-#ifndef NOLEGACY ++ bus = dbus_connection_open_private("unix:path=/run/systemd/private", &error); ++ if (!bus) { ++ log_warning("Failed to get D-Bus connection: %s", bus_error_message(&error)); ++ goto finish; + } +-#endif + + if (bus_check_peercred(bus) < 0) { + log_error("Bus owner not root."); + goto finish; + } + +- if (!(m = dbus_message_new_signal("/org/freedesktop/systemd1/agent", "org.freedesktop.systemd1.Agent", "Released"))) { ++ m = dbus_message_new_signal("/org/freedesktop/systemd1/agent", "org.freedesktop.systemd1.Agent", "Released"); ++ if (!m) { + log_error("Could not allocate signal message."); + goto finish; + } +-- +1.8.1.4 + diff --git a/0006-suppress-status-message-output-at-shutdown-when-quie.patch b/0006-suppress-status-message-output-at-shutdown-when-quie.patch new file mode 100644 index 00000000..8fb7ba23 --- /dev/null +++ b/0006-suppress-status-message-output-at-shutdown-when-quie.patch @@ -0,0 +1,69 @@ +From ec26be514ff3c5367b21f9881369080bda54fd2d Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Fri, 5 Jul 2013 00:32:05 +0200 +Subject: [PATCH 6/6] suppress status message output at shutdown when 'quiet' + is given + +--- + src/core/main.c | 4 ++-- + src/core/shutdown.c | 15 +++++++++++++++ + 2 files changed, 17 insertions(+), 2 deletions(-) + +diff --git a/src/core/main.c b/src/core/main.c +index ada0f9d..243855f 100644 +--- a/src/core/main.c ++++ b/src/core/main.c +@@ -1942,9 +1942,9 @@ finish: + watchdog_close(true); + } + +- /* avoid the creation of new processes forked by the kernel; at this ++ /* avoid the creation of new processes forked by the kernel; at this + * point, we will not listen to the signals anyway */ +- cg_uninstall_release_agent(SYSTEMD_CGROUP_CONTROLLER); ++ cg_uninstall_release_agent(SYSTEMD_CGROUP_CONTROLLER); + + execve(SYSTEMD_SHUTDOWN_BINARY_PATH, (char **) command_line, env_block); + free(env_block); +diff --git a/src/core/shutdown.c b/src/core/shutdown.c +index 2db761d..c02a14d 100644 +--- a/src/core/shutdown.c ++++ b/src/core/shutdown.c +@@ -39,6 +39,7 @@ + + #include "missing.h" + #include "log.h" ++#include "fileio.h" + #include "umount.h" + #include "util.h" + #include "mkdir.h" +@@ -130,12 +131,26 @@ static int pivot_to_new_root(void) { + } + + int main(int argc, char *argv[]) { ++ _cleanup_free_ char *line = NULL; + int cmd, r; + unsigned retries; + bool need_umount = true, need_swapoff = true, need_loop_detach = true, need_dm_detach = true; + bool in_container, use_watchdog = false; + char *arguments[3]; + ++ /* suppress shutdown status output if 'quiet' is used */ ++ r = read_one_line_file("/proc/cmdline", &line); ++ if (r >= 0) { ++ char *w, *state; ++ size_t l; ++ ++ FOREACH_WORD_QUOTED(w, l, line, state) ++ if (streq(w, "quiet")) { ++ log_set_max_level(LOG_WARNING); ++ break; ++ } ++ } ++ + log_parse_environment(); + log_set_target(LOG_TARGET_CONSOLE); /* syslog will die if not gone yet */ + log_open(); +-- +1.8.1.4 + diff --git a/0006-systemctl-core-allow-nuking-of-symlinks-to-removed-u.patch b/0006-systemctl-core-allow-nuking-of-symlinks-to-removed-u.patch deleted file mode 100644 index 4c39c957..00000000 --- a/0006-systemctl-core-allow-nuking-of-symlinks-to-removed-u.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 3b1680e04cb0ff0e4cf180dbacd067f1f99316a2 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= -Date: Mon, 3 Jun 2013 13:55:13 -0400 -Subject: [PATCH 6/8] systemctl,core: allow nuking of symlinks to removed units - -Before, one the unit file was deleted, install_context_for_removal() -would refuse to look for symlinks. But we can remove dangling symlinks -anyway. - -In principle, package installation/deinstallation scripts should do -that before the unit is uninstalled, but they don't always do. Also, -a user might have added additional symlinks manually. - -https://bugs.freedesktop.org/show_bug.cgi?id=62395 ---- - src/shared/install.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/src/shared/install.c b/src/shared/install.c -index edf4d2a..a695e12 100644 ---- a/src/shared/install.c -+++ b/src/shared/install.c -@@ -1413,7 +1413,9 @@ static int install_context_mark_for_removal( - assert_se(hashmap_move_one(c->have_installed, c->will_install, i->name) == 0); - - q = unit_file_search(c, i, paths, root_dir, false); -- if (q < 0) { -+ if (q == -ENOENT) { -+ /* do nothing */ -+ } else if (q < 0) { - if (r >= 0) - r = q; - --- -1.8.1.4 - diff --git a/0008-service-don-t-report-alien-child-as-alive-when-it-s-.patch b/0008-service-don-t-report-alien-child-as-alive-when-it-s-.patch deleted file mode 100644 index c99f2428..00000000 --- a/0008-service-don-t-report-alien-child-as-alive-when-it-s-.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 3608595751f62bbc6d37eb78b746ab6fecfa2d45 Mon Sep 17 00:00:00 2001 -From: Ross Lagerwall -Date: Sun, 9 Jun 2013 17:28:44 +0100 -Subject: [PATCH 8/8] service: don't report alien child as alive when it's not - -When a sigchld is received from an alien child, main_pid is set to -0 then service_enter_running calls main_pid_good to check if the -child is running. This incorrectly returned true because -kill(main_pid, 0) would return >= 0. - -This fixes an error where a service would die and the cgroup would -become empty but the service would still report as active (running). ---- - src/core/service.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: systemd-204/src/core/service.c -=================================================================== ---- systemd-204.orig/src/core/service.c -+++ systemd-204/src/core/service.c -@@ -1933,7 +1933,7 @@ static int main_pid_good(Service *s) { - - /* If it's an alien child let's check if it is still - * alive ... */ -- if (s->main_pid_alien) -+ if (s->main_pid_alien && s->main_pid > 0) - return kill(s->main_pid, 0) >= 0 || errno != ESRCH; - - /* .. otherwise assume we'll get a SIGCHLD for it, diff --git a/0160-mount-when-learning-about-the-root-mount-from-mounti.patch b/0160-mount-when-learning-about-the-root-mount-from-mounti.patch deleted file mode 100644 index eb523ba7..00000000 --- a/0160-mount-when-learning-about-the-root-mount-from-mounti.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 602c0e740f8290cc9c4f13f2eb4b23fbbd7a8d2b Mon Sep 17 00:00:00 2001 -From: Lennart Poettering -Date: Mon, 17 Jun 2013 21:12:53 +0200 -Subject: [PATCH 160/197] mount: when learning about the root mount from - mountinfo, don't add conflicting dep for umount.target - -That way systemd won't try to umount it at shutdown. ---- - src/core/mount.c | 8 +++++--- - 1 file changed, 5 insertions(+), 3 deletions(-) - -diff --git a/src/core/mount.c b/src/core/mount.c -index 10073b5..0ad3d95 100644 ---- a/src/core/mount.c -+++ b/src/core/mount.c -@@ -1538,9 +1538,11 @@ static int mount_add_one( - if (r < 0) - goto fail; - -- r = unit_add_dependency_by_name(u, UNIT_CONFLICTS, SPECIAL_UMOUNT_TARGET, NULL, true); -- if (r < 0) -- goto fail; -+ if (!path_equal(where, "/")) { -+ r = unit_add_dependency_by_name(u, UNIT_CONFLICTS, SPECIAL_UMOUNT_TARGET, NULL, true); -+ if (r < 0) -+ goto fail; -+ } - - unit_add_to_load_queue(u); - } else { --- -1.8.3.1 - diff --git a/0185-core-only-attempt-to-connect-to-a-session-bus-if-one.patch b/0185-core-only-attempt-to-connect-to-a-session-bus-if-one.patch deleted file mode 100644 index 571d5755..00000000 --- a/0185-core-only-attempt-to-connect-to-a-session-bus-if-one.patch +++ /dev/null @@ -1,34 +0,0 @@ -From ed002560a1945fb8765c5559c293a19bc9e132d8 Mon Sep 17 00:00:00 2001 -From: Auke Kok -Date: Thu, 20 Jun 2013 13:36:33 -0700 -Subject: [PATCH 185/197] core: only attempt to connect to a session bus if one - likely exists. - ---- - src/core/manager.c | 10 +++++++--- - 1 file changed, 7 insertions(+), 3 deletions(-) - -diff --git a/src/core/manager.c b/src/core/manager.c -index 5c3a2c7..2416dd0 100644 ---- a/src/core/manager.c -+++ b/src/core/manager.c -@@ -509,9 +509,13 @@ int manager_new(SystemdRunningAs running_as, Manager **_m) { - goto fail; - - /* Try to connect to the busses, if possible. */ -- r = bus_init(m, running_as != SYSTEMD_SYSTEM); -- if (r < 0) -- goto fail; -+ if ((running_as == SYSTEMD_USER && getenv("DBUS_SESSION_BUS_ADDRESS")) || -+ running_as == SYSTEMD_SYSTEM) { -+ r = bus_init(m, running_as != SYSTEMD_SYSTEM); -+ if (r < 0) -+ goto fail; -+ } else -+ log_debug("Skipping DBus session bus connection attempt - no DBUS_SESSION_BUS_ADDRESS set..."); - - m->taint_usr = dir_is_empty("/usr") > 0; - --- -1.8.3.1 - diff --git a/1001-re-enable-by_path-links-for-ata-devices.patch b/1001-re-enable-by_path-links-for-ata-devices.patch index 64f01c1f..8d9594ad 100644 --- a/1001-re-enable-by_path-links-for-ata-devices.patch +++ b/1001-re-enable-by_path-links-for-ata-devices.patch @@ -7,11 +7,9 @@ Fix by-path links for ATA transport (bnc#770910) src/udev/udev-builtin-path_id.c | 92 +++++++++++++++++++++++++++++++++++------ 1 file changed, 80 insertions(+), 12 deletions(-) -diff --git a/src/udev/udev-builtin-path_id.c b/src/udev/udev-builtin-path_id.c -index da02731..a77d4e8 100644 ---- a/src/udev/udev-builtin-path_id.c -+++ b/src/udev/udev-builtin-path_id.c -@@ -338,6 +338,85 @@ static struct udev_device *handle_scsi_hyperv(struct udev_device *parent, char * +--- systemd-206.orig/src/udev/udev-builtin-path_id.c ++++ systemd-206/src/udev/udev-builtin-path_id.c +@@ -338,6 +338,85 @@ static struct udev_device *handle_scsi_h return parent; } @@ -97,7 +95,7 @@ index da02731..a77d4e8 100644 static struct udev_device *handle_scsi(struct udev_device *parent, char **path) { const char *devtype; -@@ -374,19 +453,8 @@ static struct udev_device *handle_scsi(struct udev_device *parent, char **path) +@@ -374,19 +453,8 @@ static struct udev_device *handle_scsi(s goto out; } diff --git a/1002-rules-create-by-id-scsi-links-for-ATA-devices.patch b/1002-rules-create-by-id-scsi-links-for-ATA-devices.patch index c2f3186c..bd7904c6 100644 --- a/1002-rules-create-by-id-scsi-links-for-ATA-devices.patch +++ b/1002-rules-create-by-id-scsi-links-for-ATA-devices.patch @@ -7,11 +7,9 @@ Re-enable creation of by-id scsi links for ATA devices. (bnc#769002) rules/60-persistent-storage.rules | 4 ++++ 1 file changed, 4 insertions(+) -diff --git a/rules/60-persistent-storage.rules b/rules/60-persistent-storage.rules -index a4d009a..f720c7e 100644 ---- a/rules/60-persistent-storage.rules -+++ b/rules/60-persistent-storage.rules -@@ -42,6 +42,10 @@ KERNEL=="cciss*", ENV{DEVTYPE}=="disk", ENV{ID_SERIAL}!="?*", IMPORT{program}="s +--- systemd-206.orig/rules/60-persistent-storage.rules ++++ systemd-206/rules/60-persistent-storage.rules +@@ -42,6 +42,10 @@ KERNEL=="cciss*", ENV{DEVTYPE}=="disk", KERNEL=="sd*|sr*|cciss*", ENV{DEVTYPE}=="disk", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}" KERNEL=="sd*|cciss*", ENV{DEVTYPE}=="partition", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}-part%n" diff --git a/1003-udev-netlink-null-rules.patch b/1003-udev-netlink-null-rules.patch index f486a13f..93756c5a 100644 --- a/1003-udev-netlink-null-rules.patch +++ b/1003-udev-netlink-null-rules.patch @@ -7,11 +7,9 @@ udevd race for netlink events (bnc#774646) src/udev/udevd.c | 2 ++ 1 file changed, 2 insertions(+) -Index: systemd-202/src/udev/udevd.c -=================================================================== ---- systemd-202.orig/src/udev/udevd.c -+++ systemd-202/src/udev/udevd.c -@@ -1407,6 +1407,8 @@ int main(int argc, char *argv[]) +--- systemd-206.orig/src/udev/udevd.c ++++ systemd-206/src/udev/udevd.c +@@ -1337,6 +1337,8 @@ int main(int argc, char *argv[]) dev = udev_monitor_receive_device(monitor); if (dev != NULL) { udev_device_set_usec_initialized(dev, now(CLOCK_MONOTONIC)); diff --git a/1004-fix-devname-prefix.patch b/1004-fix-devname-prefix.patch deleted file mode 100644 index 7ab99e97..00000000 --- a/1004-fix-devname-prefix.patch +++ /dev/null @@ -1,22 +0,0 @@ -From: Frederic Crozat -Date: Wed, 5 Dec 2012 15:13:27 +0000 -Subject: fix devname prefix - -fix modules.devname path, it isn't in /usr. ---- - src/udev/udevd.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: systemd-202/src/udev/udevd.c -=================================================================== ---- systemd-202.orig/src/udev/udevd.c -+++ systemd-202/src/udev/udevd.c -@@ -824,7 +824,7 @@ static void static_dev_create_from_modul - return; - } - -- strscpyl(modules, sizeof(modules), ROOTPREFIX "/lib/modules/", kernel.release, "/modules.devname", NULL); -+ strscpyl(modules, sizeof(modules), "/lib/modules/", kernel.release, "/modules.devname", NULL); - f = fopen(modules, "re"); - if (f == NULL) - return; diff --git a/1005-create-default-links-for-primary-cd_dvd-drive.patch b/1005-create-default-links-for-primary-cd_dvd-drive.patch index c66a9da0..e70b5758 100644 --- a/1005-create-default-links-for-primary-cd_dvd-drive.patch +++ b/1005-create-default-links-for-primary-cd_dvd-drive.patch @@ -7,11 +7,9 @@ cdrom_id: created links for the default cd/dvd drive (bnc#783054). rules/60-cdrom_id.rules | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) -diff --git a/rules/60-cdrom_id.rules b/rules/60-cdrom_id.rules -index 6eaf76a..ec0b19a 100644 ---- a/rules/60-cdrom_id.rules -+++ b/rules/60-cdrom_id.rules -@@ -15,6 +15,9 @@ ENV{DISK_EJECT_REQUEST}=="?*", RUN+="cdrom_id --eject-media $devnode", GOTO="cdr +--- systemd-206.orig/rules/60-cdrom_id.rules ++++ systemd-206/rules/60-cdrom_id.rules +@@ -15,6 +15,9 @@ ENV{DISK_EJECT_REQUEST}=="?*", RUN+="cdr # enable the receiving of media eject button events IMPORT{program}="cdrom_id --lock-media $devnode" diff --git a/1006-udev-always-rename-network.patch b/1006-udev-always-rename-network.patch index d1c61d05..4f91c928 100644 --- a/1006-udev-always-rename-network.patch +++ b/1006-udev-always-rename-network.patch @@ -8,10 +8,8 @@ udev: ensure that the network interfaces are renamed even if they exist src/udev/udev-event.c | 46 +++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 43 insertions(+), 3 deletions(-) -Index: systemd-204/src/udev/udev-event.c -=================================================================== ---- systemd-204.orig/src/udev/udev-event.c -+++ systemd-204/src/udev/udev-event.c +--- systemd-206.orig/src/udev/udev-event.c ++++ systemd-206/src/udev/udev-event.c @@ -750,6 +750,7 @@ static int rename_netif(struct udev_even struct udev_device *dev = event->dev; int sk; diff --git a/1007-physical-hotplug-cpu-and-memory.patch b/1007-physical-hotplug-cpu-and-memory.patch index cd956a0c..7daebb20 100644 --- a/1007-physical-hotplug-cpu-and-memory.patch +++ b/1007-physical-hotplug-cpu-and-memory.patch @@ -1,7 +1,5 @@ -Index: systemd-204/rules/80-hotplug-cpu-mem.rules -=================================================================== --- /dev/null -+++ systemd-204/rules/80-hotplug-cpu-mem.rules ++++ systemd-206/rules/80-hotplug-cpu-mem.rules @@ -0,0 +1,9 @@ +# do not edit this file, it will be overwritten on update + @@ -12,11 +10,9 @@ Index: systemd-204/rules/80-hotplug-cpu-mem.rules +# Hotplug physical memory +SUBSYSTEM=="memory", ACTION=="add", TEST=="state", ATTR{state}=="offline", \ + ATTR{state}="online" -Index: systemd-204/Makefile.am -=================================================================== ---- systemd-204.orig/Makefile.am -+++ systemd-204/Makefile.am -@@ -2238,6 +2238,10 @@ dist_udevrules_DATA += \ +--- systemd-206.orig/Makefile.am ++++ systemd-206/Makefile.am +@@ -2480,6 +2480,10 @@ dist_udevrules_DATA += \ rules/73-seat-numlock.rules # ------------------------------------------------------------------------------ diff --git a/1008-add-msft-compability-rules.patch b/1008-add-msft-compability-rules.patch index 41d6e698..d0117371 100644 --- a/1008-add-msft-compability-rules.patch +++ b/1008-add-msft-compability-rules.patch @@ -1,8 +1,6 @@ -Index: systemd-204/Makefile.am -=================================================================== ---- systemd-204.orig/Makefile.am -+++ systemd-204/Makefile.am -@@ -2242,6 +2242,10 @@ dist_udevrules_DATA += \ +--- systemd-206.orig/Makefile.am ++++ systemd-206/Makefile.am +@@ -2484,6 +2484,10 @@ dist_udevrules_DATA += \ rules/80-hotplug-cpu-mem.rules # ------------------------------------------------------------------------------ @@ -13,10 +11,8 @@ Index: systemd-204/Makefile.am if ENABLE_GUDEV if ENABLE_GTK_DOC SUBDIRS += \ -Index: systemd-204/rules/61-msft.rules -=================================================================== --- /dev/null -+++ systemd-204/rules/61-msft.rules ++++ systemd-206/rules/61-msft.rules @@ -0,0 +1,9 @@ +# MSFT compability rules +ACTION!="add|change", GOTO="msft_end" diff --git a/Fix-run-lock-directories-permissions-to-follow-openSUSE-po.patch b/Fix-run-lock-directories-permissions-to-follow-openSUSE-po.patch index 2cc1bb48..db366fca 100644 --- a/Fix-run-lock-directories-permissions-to-follow-openSUSE-po.patch +++ b/Fix-run-lock-directories-permissions-to-follow-openSUSE-po.patch @@ -8,10 +8,8 @@ disable /var/lock/{subsys,lockdev} and change default permissions on tmpfiles.d/legacy.conf | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) -diff --git a/tmpfiles.d/legacy.conf b/tmpfiles.d/legacy.conf -index 3fff347..81d5e47 100644 ---- a/tmpfiles.d/legacy.conf -+++ b/tmpfiles.d/legacy.conf +--- systemd-206.orig/tmpfiles.d/legacy.conf ++++ systemd-206/tmpfiles.d/legacy.conf @@ -10,12 +10,13 @@ # These files are considered legacy and are unnecessary on legacy-free # systems. diff --git a/Forward-suspend-hibernate-calls-to-pm-utils.patch b/Forward-suspend-hibernate-calls-to-pm-utils.patch index 7e6b7b44..3b50d50b 100644 --- a/Forward-suspend-hibernate-calls-to-pm-utils.patch +++ b/Forward-suspend-hibernate-calls-to-pm-utils.patch @@ -7,10 +7,8 @@ forward suspend/hibernation calls to pm-utils, if installed (bnc#790157) src/sleep/sleep.c | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) -diff --git a/src/sleep/sleep.c b/src/sleep/sleep.c -index a56ab89..232ab67 100644 ---- a/src/sleep/sleep.c -+++ b/src/sleep/sleep.c +--- systemd-206.orig/src/sleep/sleep.c ++++ systemd-206/src/sleep/sleep.c @@ -24,6 +24,7 @@ #include #include @@ -38,7 +36,7 @@ index a56ab89..232ab67 100644 return r; } -@@ -90,6 +90,8 @@ static int execute(char **modes, char **states) { +@@ -90,6 +90,8 @@ static int execute(char **modes, char ** FILE *f; const char* note = strappenda("SLEEP=", arg_verb); @@ -47,7 +45,7 @@ index a56ab89..232ab67 100644 /* This file is opened first, so that if we hit an error, * we can abort before modyfing any state. */ f = fopen("/sys/power/state", "we"); -@@ -102,6 +104,7 @@ static int execute(char **modes, char **states) { +@@ -102,6 +104,7 @@ static int execute(char **modes, char ** r = write_mode(modes); if (r < 0) return r; @@ -55,7 +53,7 @@ index a56ab89..232ab67 100644 arguments[0] = NULL; arguments[1] = (char*) "pre"; -@@ -114,8 +117,10 @@ static int execute(char **modes, char **states) { +@@ -114,8 +117,10 @@ static int execute(char **modes, char ** "MESSAGE=Suspending system...", note, NULL); @@ -67,7 +65,7 @@ index a56ab89..232ab67 100644 if (r < 0) return r; -@@ -158,6 +163,7 @@ static int parse_argv(int argc, char *argv[]) { +@@ -158,6 +163,7 @@ static int parse_argv(int argc, char *ar }; int c; @@ -75,7 +73,7 @@ index a56ab89..232ab67 100644 assert(argc >= 0); assert(argv); -@@ -196,6 +202,18 @@ static int parse_argv(int argc, char *argv[]) { +@@ -196,6 +202,18 @@ static int parse_argv(int argc, char *ar return -EINVAL; } diff --git a/Revert-service-drop-support-for-SysV-scripts-for-the-early.patch b/Revert-service-drop-support-for-SysV-scripts-for-the-early.patch index de856e1f..137a4824 100644 --- a/Revert-service-drop-support-for-SysV-scripts-for-the-early.patch +++ b/Revert-service-drop-support-for-SysV-scripts-for-the-early.patch @@ -10,10 +10,8 @@ Conflicts: src/core/service.c | 51 ++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 46 insertions(+), 5 deletions(-) -Index: systemd-204/src/core/service.c -=================================================================== ---- systemd-204.orig/src/core/service.c -+++ systemd-204/src/core/service.c +--- systemd-206.orig/src/core/service.c ++++ systemd-206/src/core/service.c @@ -51,7 +51,8 @@ typedef enum RunlevelType { @@ -55,7 +53,7 @@ Index: systemd-204/src/core/service.c #endif static const UnitActiveState state_translation_table[_SERVICE_STATE_MAX] = { -@@ -332,6 +345,9 @@ static char *sysv_translate_name(const c +@@ -334,6 +347,9 @@ static char *sysv_translate_name(const c if (endswith(name, ".sh")) /* Drop .sh suffix */ strcpy(stpcpy(r, name) - 3, ".service"); @@ -65,7 +63,7 @@ Index: systemd-204/src/core/service.c else /* Normal init script name */ strcpy(stpcpy(r, name), ".service"); -@@ -934,6 +950,13 @@ static int service_load_sysv_path(Servic +@@ -936,6 +952,13 @@ static int service_load_sysv_path(Servic if ((r = sysv_exec_commands(s, supports_reload)) < 0) goto finish; @@ -79,7 +77,7 @@ Index: systemd-204/src/core/service.c if (s->sysv_runlevels && !chars_intersect(RUNLEVELS_UP, s->sysv_runlevels)) { /* If there a runlevels configured for this service -@@ -1015,6 +1038,9 @@ static int service_load_sysv_name(Servic +@@ -1017,6 +1040,9 @@ static int service_load_sysv_name(Servic if (endswith(name, ".sh.service")) return -ENOENT; @@ -89,7 +87,7 @@ Index: systemd-204/src/core/service.c STRV_FOREACH(p, UNIT(s)->manager->lookup_paths.sysvinit_path) { char *path; int r; -@@ -1035,6 +1061,18 @@ static int service_load_sysv_name(Servic +@@ -1037,6 +1063,18 @@ static int service_load_sysv_name(Servic } free(path); @@ -108,7 +106,7 @@ Index: systemd-204/src/core/service.c if (r < 0) return r; -@@ -3667,7 +3705,7 @@ static int service_enumerate(Manager *m) +@@ -3587,7 +3625,7 @@ static int service_enumerate(Manager *m) if (de->d_name[0] == 'S') { @@ -117,7 +115,7 @@ Index: systemd-204/src/core/service.c SERVICE(service)->sysv_start_priority_from_rcnd = MAX(a*10 + b, SERVICE(service)->sysv_start_priority_from_rcnd); -@@ -3684,7 +3722,8 @@ static int service_enumerate(Manager *m) +@@ -3604,7 +3642,8 @@ static int service_enumerate(Manager *m) goto finish; } else if (de->d_name[0] == 'K' && @@ -127,7 +125,7 @@ Index: systemd-204/src/core/service.c r = set_ensure_allocated(&shutdown_services, trivial_hash_func, trivial_compare_func); -@@ -3724,7 +3763,9 @@ static int service_enumerate(Manager *m) +@@ -3644,7 +3683,9 @@ static int service_enumerate(Manager *m) * runlevels we assume the stop jobs will be implicitly added * by the core logic. Also, we don't really distinguish here * between the runlevels 0 and 6 and just add them to the diff --git a/Start-ctrl-alt-del.target-irreversibly.patch b/Start-ctrl-alt-del.target-irreversibly.patch deleted file mode 100644 index 68a94293..00000000 --- a/Start-ctrl-alt-del.target-irreversibly.patch +++ /dev/null @@ -1,27 +0,0 @@ -From f49fd1d57a429d4a05ac86352c017a845f8185b3 Mon Sep 17 00:00:00 2001 -From: Eelco Dolstra -Date: Tue, 7 May 2013 14:16:53 +0200 -Subject: [PATCH] Start ctrl-alt-del.target irreversibly - -This makes ctrl-alt-del reboots more robust, just like "systemctl -reboot". ---- - src/core/manager.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/core/manager.c b/src/core/manager.c -index c7f8f20..0508628 100644 ---- a/src/core/manager.c -+++ b/src/core/manager.c -@@ -1372,7 +1372,7 @@ static int manager_process_signal_fd(Manager *m) { - - case SIGINT: - if (m->running_as == SYSTEMD_SYSTEM) { -- manager_start_target(m, SPECIAL_CTRL_ALT_DEL_TARGET, JOB_REPLACE); -+ manager_start_target(m, SPECIAL_CTRL_ALT_DEL_TARGET, JOB_REPLACE_IRREVERSIBLY); - break; - } - --- -1.8.1.4 - diff --git a/allow-multiple-sulogin-to-be-started.patch b/allow-multiple-sulogin-to-be-started.patch index 297b5792..507d8fc2 100644 --- a/allow-multiple-sulogin-to-be-started.patch +++ b/allow-multiple-sulogin-to-be-started.patch @@ -9,10 +9,8 @@ allows multiple sulogin instance (bnc#793182). units/serial-getty@.service.m4 | 1 + 3 files changed, 3 insertions(+) -diff --git a/units/getty@.service.m4 b/units/getty@.service.m4 -index 083eb97..243fea5 100644 ---- a/units/getty@.service.m4 -+++ b/units/getty@.service.m4 +--- systemd-206.orig/units/getty@.service.m4 ++++ systemd-206/units/getty@.service.m4 @@ -9,6 +9,7 @@ Description=Getty on %I Documentation=man:agetty(8) man:systemd-getty-generator(8) @@ -21,10 +19,8 @@ index 083eb97..243fea5 100644 After=systemd-user-sessions.service plymouth-quit-wait.service m4_ifdef(`HAVE_SYSV_COMPAT', After=rc-local.service -diff --git a/units/rescue.target b/units/rescue.target -index 3f59b14..20f6841 100644 ---- a/units/rescue.target -+++ b/units/rescue.target +--- systemd-206.orig/units/rescue.target ++++ systemd-206/units/rescue.target @@ -10,6 +10,7 @@ Description=Rescue Mode Documentation=man:systemd.special(7) Requires=sysinit.target rescue.service @@ -33,10 +29,8 @@ index 3f59b14..20f6841 100644 AllowIsolate=yes [Install] -diff --git a/units/serial-getty@.service.m4 b/units/serial-getty@.service.m4 -index 60d7737..2b18dbf 100644 ---- a/units/serial-getty@.service.m4 -+++ b/units/serial-getty@.service.m4 +--- systemd-206.orig/units/serial-getty@.service.m4 ++++ systemd-206/units/serial-getty@.service.m4 @@ -10,6 +10,7 @@ Description=Serial Getty on %I Documentation=man:agetty(8) man:systemd-getty-generator(8) Documentation=http://0pointer.de/blog/projects/serial-console.html diff --git a/apply-ACL-for-nvidia-device-nodes.patch b/apply-ACL-for-nvidia-device-nodes.patch index e89708a3..44d90f35 100644 --- a/apply-ACL-for-nvidia-device-nodes.patch +++ b/apply-ACL-for-nvidia-device-nodes.patch @@ -7,10 +7,8 @@ set ACL on nvidia devices (bnc#808319). src/login/logind-acl.c | 3 +++ 1 file changed, 3 insertions(+) -diff --git a/src/login/logind-acl.c b/src/login/logind-acl.c -index cb045a9..51093f2 100644 ---- a/src/login/logind-acl.c -+++ b/src/login/logind-acl.c +--- systemd-206.orig/src/login/logind-acl.c ++++ systemd-206/src/login/logind-acl.c @@ -24,6 +24,7 @@ #include #include @@ -19,8 +17,8 @@ index cb045a9..51093f2 100644 #include "logind-acl.h" #include "util.h" -@@ -240,6 +241,22 @@ int devnode_acl_all(struct udev *udev, - goto finish; +@@ -287,6 +288,22 @@ int devnode_acl_all(struct udev *udev, + r = devnode_acl(n, flush, del, old_uid, add, new_uid); } + /* only search for nvidia* if /dev/nvidiactl exists */ @@ -40,5 +38,5 @@ index cb045a9..51093f2 100644 + } + finish: - if (e) - udev_enumerate_unref(e); + udev_enumerate_unref(e); + set_free_free(nodes); diff --git a/avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch b/avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch index b33c5589..fdc7b9d0 100644 --- a/avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch +++ b/avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch @@ -7,11 +7,9 @@ Subject: avoid assertion if invalid address familily is passed to src/nss-myhostname/nss-myhostname.c | 6 ++++++ 1 file changed, 6 insertions(+) -diff --git a/src/nss-myhostname/nss-myhostname.c b/src/nss-myhostname/nss-myhostname.c -index 60e256d..e97d4e5 100644 ---- a/src/nss-myhostname/nss-myhostname.c -+++ b/src/nss-myhostname/nss-myhostname.c -@@ -442,6 +442,12 @@ enum nss_status _nss_myhostname_gethostbyaddr2_r( +--- systemd-206.orig/src/nss-myhostname/nss-myhostname.c ++++ systemd-206/src/nss-myhostname/nss-myhostname.c +@@ -442,6 +442,12 @@ enum nss_status _nss_myhostname_gethostb uint32_t local_address_ipv4 = LOCALADDRESS_IPV4; const char *canonical = NULL, *additional = NULL; diff --git a/delay-fsck-cryptsetup-after-md-dmraid-lvm-are-started.patch b/delay-fsck-cryptsetup-after-md-dmraid-lvm-are-started.patch index 4cf66998..026de00c 100644 --- a/delay-fsck-cryptsetup-after-md-dmraid-lvm-are-started.patch +++ b/delay-fsck-cryptsetup-after-md-dmraid-lvm-are-started.patch @@ -7,10 +7,8 @@ Subject: delay fsck / cryptsetup after md / dmraid / lvm are started units/systemd-fsck@.service.in | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) -diff --git a/src/cryptsetup/cryptsetup-generator.c b/src/cryptsetup/cryptsetup-generator.c -index 9b8e229..0949287 100644 ---- a/src/cryptsetup/cryptsetup-generator.c -+++ b/src/cryptsetup/cryptsetup-generator.c +--- systemd-206.orig/src/cryptsetup/cryptsetup-generator.c ++++ systemd-206/src/cryptsetup/cryptsetup-generator.c @@ -160,6 +160,7 @@ static int create_disk( "Conflicts=umount.target\n" "DefaultDependencies=no\n" @@ -19,10 +17,8 @@ index 9b8e229..0949287 100644 "After=systemd-readahead-collect.service systemd-readahead-replay.service\n", f); -diff --git a/units/systemd-fsck@.service.in b/units/systemd-fsck@.service.in -index b3c71eb..c66a411 100644 ---- a/units/systemd-fsck@.service.in -+++ b/units/systemd-fsck@.service.in +--- systemd-206.orig/units/systemd-fsck@.service.in ++++ systemd-206/units/systemd-fsck@.service.in @@ -10,7 +10,7 @@ Description=File System Check on %f Documentation=man:systemd-fsck@.service(8) DefaultDependencies=no diff --git a/disable-nss-myhostname-warning-bnc-783841.patch b/disable-nss-myhostname-warning-bnc-783841.patch index c0365d7c..c20aad94 100644 --- a/disable-nss-myhostname-warning-bnc-783841.patch +++ b/disable-nss-myhostname-warning-bnc-783841.patch @@ -6,10 +6,8 @@ Subject: disable nss-myhostname warning (bnc#783841) src/hostname/hostnamed.c | 1 + 1 file changed, 1 insertion(+) -diff --git a/src/hostname/hostnamed.c b/src/hostname/hostnamed.c -index 0437e33..c7f454c 100644 ---- a/src/hostname/hostnamed.c -+++ b/src/hostname/hostnamed.c +--- systemd-206.orig/src/hostname/hostnamed.c ++++ systemd-206/src/hostname/hostnamed.c @@ -134,6 +134,7 @@ static int read_data(void) { static bool check_nss(void) { diff --git a/ensure-DM-and-LVM-are-started-before-local-fs-pre-target.patch b/ensure-DM-and-LVM-are-started-before-local-fs-pre-target.patch index c4e313aa..e095da13 100644 --- a/ensure-DM-and-LVM-are-started-before-local-fs-pre-target.patch +++ b/ensure-DM-and-LVM-are-started-before-local-fs-pre-target.patch @@ -8,10 +8,8 @@ if fsck was disabled for them (bnc#733283). units/local-fs-pre.target | 1 + 1 file changed, 1 insertion(+) -diff --git a/units/local-fs-pre.target b/units/local-fs-pre.target -index 809f2ed..05fcbd4 100644 ---- a/units/local-fs-pre.target -+++ b/units/local-fs-pre.target +--- systemd-206.orig/units/local-fs-pre.target ++++ systemd-206/units/local-fs-pre.target @@ -9,3 +9,4 @@ Description=Local File Systems (Pre) Documentation=man:systemd.special(7) diff --git a/ensure-ask-password-wall-starts-after-getty-tty1.patch b/ensure-ask-password-wall-starts-after-getty-tty1.patch index a0c005f8..6d6a3346 100644 --- a/ensure-ask-password-wall-starts-after-getty-tty1.patch +++ b/ensure-ask-password-wall-starts-after-getty-tty1.patch @@ -7,10 +7,8 @@ ensure passphrase is handled before starting getty on tty1. units/systemd-ask-password-wall.service.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/units/systemd-ask-password-wall.service.in b/units/systemd-ask-password-wall.service.in -index 0eaa274..ca51e4e 100644 ---- a/units/systemd-ask-password-wall.service.in -+++ b/units/systemd-ask-password-wall.service.in +--- systemd-206.orig/units/systemd-ask-password-wall.service.in ++++ systemd-206/units/systemd-ask-password-wall.service.in @@ -8,7 +8,7 @@ [Unit] Description=Forward Password Requests to Wall diff --git a/ensure-shortname-is-set-as-hostname-bnc-820213.patch b/ensure-shortname-is-set-as-hostname-bnc-820213.patch index 007e6010..3f6b0eb4 100644 --- a/ensure-shortname-is-set-as-hostname-bnc-820213.patch +++ b/ensure-shortname-is-set-as-hostname-bnc-820213.patch @@ -7,10 +7,8 @@ strip hostname so the domain part isn't set as part of the hostname src/core/hostname-setup.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) -diff --git a/src/core/hostname-setup.c b/src/core/hostname-setup.c -index 0ce683b..1c8e555 100644 ---- a/src/core/hostname-setup.c -+++ b/src/core/hostname-setup.c +--- systemd-206.orig/src/core/hostname-setup.c ++++ systemd-206/src/core/hostname-setup.c @@ -32,7 +32,7 @@ #include "fileio.h" @@ -20,7 +18,7 @@ index 0ce683b..1c8e555 100644 int r; assert(path); -@@ -49,6 +49,11 @@ static int read_and_strip_hostname(const char *path, char **hn) { +@@ -49,6 +49,11 @@ static int read_and_strip_hostname(const return -ENOENT; } diff --git a/ensure-sysctl-are-applied-after-modules-are-loaded.patch b/ensure-sysctl-are-applied-after-modules-are-loaded.patch index 186e09e0..4912449c 100644 --- a/ensure-sysctl-are-applied-after-modules-are-loaded.patch +++ b/ensure-sysctl-are-applied-after-modules-are-loaded.patch @@ -7,11 +7,9 @@ Subject: ensure sysctl are applied after modules are loaded units/systemd-sysctl.service.in | 1 + 1 file changed, 1 insertion(+) -diff --git a/units/systemd-sysctl.service.in b/units/systemd-sysctl.service.in -index 45e1ceb..caaaa9a 100644 ---- a/units/systemd-sysctl.service.in -+++ b/units/systemd-sysctl.service.in -@@ -11,6 +11,7 @@ Documentation=man:systemd-sysctl.service(8) man:sysctl.d(5) +--- systemd-206.orig/units/systemd-sysctl.service.in ++++ systemd-206/units/systemd-sysctl.service.in +@@ -11,6 +11,7 @@ Documentation=man:systemd-sysctl.service DefaultDependencies=no Conflicts=shutdown.target After=systemd-readahead-collect.service systemd-readahead-replay.service diff --git a/fix-owner-of-var-log-btmp.patch b/fix-owner-of-var-log-btmp.patch index a28f4937..9f5bfea1 100644 --- a/fix-owner-of-var-log-btmp.patch +++ b/fix-owner-of-var-log-btmp.patch @@ -7,10 +7,8 @@ ensure btmp is owned only by root (bnc#777405). tmpfiles.d/systemd.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/tmpfiles.d/systemd.conf b/tmpfiles.d/systemd.conf -index ee86f2e..29d6e97 100644 ---- a/tmpfiles.d/systemd.conf -+++ b/tmpfiles.d/systemd.conf +--- systemd-206.orig/tmpfiles.d/systemd.conf ++++ systemd-206/tmpfiles.d/systemd.conf @@ -11,7 +11,7 @@ d /run/user 0755 root root ~10d F /run/utmp 0664 root utmp - diff --git a/fix-support-for-boot-prefixed-initscript-bnc-746506.patch b/fix-support-for-boot-prefixed-initscript-bnc-746506.patch index 77a2e6b7..dddcefe5 100644 --- a/fix-support-for-boot-prefixed-initscript-bnc-746506.patch +++ b/fix-support-for-boot-prefixed-initscript-bnc-746506.patch @@ -6,11 +6,9 @@ Subject: fix support for boot prefixed initscript (bnc#746506) src/systemctl/systemctl.c | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) -Index: systemd-204/src/systemctl/systemctl.c -=================================================================== ---- systemd-204.orig/src/systemctl/systemctl.c -+++ systemd-204/src/systemctl/systemctl.c -@@ -4082,8 +4082,28 @@ static int enable_sysv_units(char **args +--- systemd-206.orig/src/systemctl/systemctl.c ++++ systemd-206/src/systemctl/systemctl.c +@@ -4238,8 +4238,28 @@ static int enable_sysv_units(char **args p[strlen(p) - sizeof(".service") + 1] = 0; found_sysv = access(p, F_OK) >= 0; diff --git a/force-lvm-restart-after-cryptsetup-target-is-reached.patch b/force-lvm-restart-after-cryptsetup-target-is-reached.patch index 8b4f879c..d40fda5a 100644 --- a/force-lvm-restart-after-cryptsetup-target-is-reached.patch +++ b/force-lvm-restart-after-cryptsetup-target-is-reached.patch @@ -6,10 +6,8 @@ Subject: force lvm restart after cryptsetup target is reached src/cryptsetup/cryptsetup-generator.c | 57 ++++++++++++++++++++++++++++++++++- 1 file changed, 56 insertions(+), 1 deletion(-) -diff --git a/src/cryptsetup/cryptsetup-generator.c b/src/cryptsetup/cryptsetup-generator.c -index 81b7708..1940985 100644 ---- a/src/cryptsetup/cryptsetup-generator.c -+++ b/src/cryptsetup/cryptsetup-generator.c +--- systemd-206.orig/src/cryptsetup/cryptsetup-generator.c ++++ systemd-206/src/cryptsetup/cryptsetup-generator.c @@ -22,6 +22,7 @@ #include #include @@ -18,7 +16,7 @@ index 81b7708..1940985 100644 #include "log.h" #include "util.h" -@@ -64,6 +65,54 @@ static bool has_option(const char *haystack, const char *needle) { +@@ -64,6 +65,54 @@ static bool has_option(const char *hayst return false; } diff --git a/handle-SYSTEMCTL_OPTIONS-environment-variable.patch b/handle-SYSTEMCTL_OPTIONS-environment-variable.patch index d66c24fc..79b99a67 100644 --- a/handle-SYSTEMCTL_OPTIONS-environment-variable.patch +++ b/handle-SYSTEMCTL_OPTIONS-environment-variable.patch @@ -7,11 +7,9 @@ Subject: handle SYSTEMCTL_OPTIONS environment variable src/systemctl/systemctl.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) -Index: systemd-204/src/systemctl/systemctl.c -=================================================================== ---- systemd-204.orig/src/systemctl/systemctl.c -+++ systemd-204/src/systemctl/systemctl.c -@@ -5974,6 +5974,28 @@ int main(int argc, char*argv[]) { +--- systemd-206.orig/src/systemctl/systemctl.c ++++ systemd-206/src/systemctl/systemctl.c +@@ -6197,6 +6197,28 @@ int main(int argc, char*argv[]) { log_parse_environment(); log_open(); diff --git a/handle-disable_caplock-and-compose_table-and-kbd_rate.patch b/handle-disable_caplock-and-compose_table-and-kbd_rate.patch index 050f9216..d2116163 100644 --- a/handle-disable_caplock-and-compose_table-and-kbd_rate.patch +++ b/handle-disable_caplock-and-compose_table-and-kbd_rate.patch @@ -7,10 +7,8 @@ Subject: handle disable_caplock and compose_table and kbd_rate src/vconsole/vconsole-setup.c | 156 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 153 insertions(+), 3 deletions(-) -diff --git a/src/vconsole/vconsole-setup.c b/src/vconsole/vconsole-setup.c -index 1bbf737..384f936 100644 ---- a/src/vconsole/vconsole-setup.c -+++ b/src/vconsole/vconsole-setup.c +--- systemd-206.orig/src/vconsole/vconsole-setup.c ++++ systemd-206/src/vconsole/vconsole-setup.c @@ -40,6 +40,7 @@ #include "macro.h" #include "virt.h" @@ -30,7 +28,7 @@ index 1bbf737..384f936 100644 int i = 0; pid_t pid; -@@ -119,6 +120,8 @@ static int keymap_load(const char *vc, const char *map, const char *map_toggle, +@@ -119,6 +120,8 @@ static int keymap_load(const char *vc, c args[i++] = map; if (map_toggle) args[i++] = map_toggle; @@ -39,7 +37,7 @@ index 1bbf737..384f936 100644 args[i++] = NULL; pid = fork(); -@@ -212,6 +215,101 @@ static void font_copy_to_all_vcs(int fd) { +@@ -212,6 +215,101 @@ static void font_copy_to_all_vcs(int fd) } } diff --git a/handle-etc-HOSTNAME.patch b/handle-etc-HOSTNAME.patch index 075d67d8..cdcb932e 100644 --- a/handle-etc-HOSTNAME.patch +++ b/handle-etc-HOSTNAME.patch @@ -8,10 +8,8 @@ Subject: handle /etc/HOSTNAME src/hostname/hostnamed.c | 12 +++++++++++- 2 files changed, 28 insertions(+), 6 deletions(-) -diff --git a/src/core/hostname-setup.c b/src/core/hostname-setup.c -index 8aa1cff..0ce683b 100644 ---- a/src/core/hostname-setup.c -+++ b/src/core/hostname-setup.c +--- systemd-206.orig/src/core/hostname-setup.c ++++ systemd-206/src/core/hostname-setup.c @@ -61,12 +61,24 @@ int hostname_setup(void) { r = read_and_strip_hostname("/etc/hostname", &b); @@ -19,6 +17,7 @@ index 8aa1cff..0ce683b 100644 - if (r == -ENOENT) - enoent = true; - else +- log_warning("Failed to read configured hostname: %s", strerror(-r)); + if (r == -ENOENT) { + /* use SUSE fallback */ + r = read_and_strip_hostname("/etc/HOSTNAME", &b); @@ -31,21 +30,18 @@ index 8aa1cff..0ce683b 100644 + } + else + hn = b; -+ + +- hn = NULL; + } + else { - log_warning("Failed to read configured hostname: %s", strerror(-r)); -- -- hn = NULL; ++ log_warning("Failed to read configured hostname: %s", strerror(-r)); + hn = NULL; + } } else hn = b; -diff --git a/src/hostname/hostnamed.c b/src/hostname/hostnamed.c -index c7f454c..cfbd706 100644 ---- a/src/hostname/hostnamed.c -+++ b/src/hostname/hostnamed.c +--- systemd-206.orig/src/hostname/hostnamed.c ++++ systemd-206/src/hostname/hostnamed.c @@ -129,6 +129,10 @@ static int read_data(void) { if (r < 0 && r != -ENOENT) return r; @@ -65,7 +61,7 @@ index c7f454c..cfbd706 100644 if (isempty(data[PROP_STATIC_HOSTNAME])) { if (unlink("/etc/hostname") < 0) -@@ -290,7 +295,12 @@ static int write_data_static_hostname(void) { +@@ -290,7 +295,12 @@ static int write_data_static_hostname(vo return 0; } diff --git a/handle-numlock-value-in-etc-sysconfig-keyboard.patch b/handle-numlock-value-in-etc-sysconfig-keyboard.patch index 67fe0155..284686b2 100644 --- a/handle-numlock-value-in-etc-sysconfig-keyboard.patch +++ b/handle-numlock-value-in-etc-sysconfig-keyboard.patch @@ -6,10 +6,8 @@ Authors: Stanislav Brabec Cristian Rodríguez -Index: systemd-204/src/vconsole/vconsole-setup.c -=================================================================== ---- systemd-204.orig/src/vconsole/vconsole-setup.c -+++ systemd-204/src/vconsole/vconsole-setup.c +--- systemd-206.orig/src/vconsole/vconsole-setup.c ++++ systemd-206/src/vconsole/vconsole-setup.c @@ -42,6 +42,10 @@ #include "fileio.h" #include "strv.h" @@ -100,11 +98,9 @@ Index: systemd-204/src/vconsole/vconsole-setup.c #ifdef HAVE_SYSV_COMPAT free(vc_kbd_delay); free(vc_kbd_rate); -Index: systemd-204/Makefile.am -=================================================================== ---- systemd-204.orig/Makefile.am -+++ systemd-204/Makefile.am -@@ -2219,6 +2219,19 @@ dist_udevrules_DATA += \ +--- systemd-206.orig/Makefile.am ++++ systemd-206/Makefile.am +@@ -2452,6 +2452,19 @@ dist_udevrules_DATA += \ rules/61-accelerometer.rules # ------------------------------------------------------------------------------ @@ -124,10 +120,8 @@ Index: systemd-204/Makefile.am if ENABLE_GUDEV if ENABLE_GTK_DOC SUBDIRS += \ -Index: systemd-204/rules/73-seat-numlock.rules -=================================================================== --- /dev/null -+++ systemd-204/rules/73-seat-numlock.rules ++++ systemd-206/rules/73-seat-numlock.rules @@ -0,0 +1,8 @@ +# This file is part of SUSE customization of systemd. +# @@ -137,10 +131,8 @@ Index: systemd-204/rules/73-seat-numlock.rules +# (at your option) any later version. + +SUBSYSTEM=="tty", ACTION=="add", KERNEL=="tty[0-9]|tty1[0-2]", TEST=="/run/numlock-on", RUN+="numlock-on $env{DEVNAME}" -Index: systemd-204/src/login/numlock-on.c -=================================================================== --- /dev/null -+++ systemd-204/src/login/numlock-on.c ++++ systemd-206/src/login/numlock-on.c @@ -0,0 +1,34 @@ +/* + * numlock-on.c: Turn numlock-on @@ -176,10 +168,8 @@ Index: systemd-204/src/login/numlock-on.c + + exit(0); +} -Index: systemd-204/units/systemd-vconsole-setup.service.in -=================================================================== ---- systemd-204.orig/units/systemd-vconsole-setup.service.in -+++ systemd-204/units/systemd-vconsole-setup.service.in +--- systemd-206.orig/units/systemd-vconsole-setup.service.in ++++ systemd-206/units/systemd-vconsole-setup.service.in @@ -11,7 +11,7 @@ Documentation=man:systemd-vconsole-setup DefaultDependencies=no Conflicts=shutdown.target diff --git a/handle-root_uses_lang-value-in-etc-sysconfig-language.patch b/handle-root_uses_lang-value-in-etc-sysconfig-language.patch index e2ac6c77..df273d04 100644 --- a/handle-root_uses_lang-value-in-etc-sysconfig-language.patch +++ b/handle-root_uses_lang-value-in-etc-sysconfig-language.patch @@ -7,11 +7,9 @@ handle ROOT_USES_LANG=ctype (bnc#792182). src/core/locale-setup.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) -diff --git a/src/core/locale-setup.c b/src/core/locale-setup.c -index d7113b9..b3fb603 100644 ---- a/src/core/locale-setup.c -+++ b/src/core/locale-setup.c -@@ -70,6 +70,11 @@ static const char * const variable_names[_VARIABLE_MAX] = { +--- systemd-206.orig/src/core/locale-setup.c ++++ systemd-206/src/core/locale-setup.c +@@ -70,6 +70,11 @@ static const char * const variable_names int locale_setup(void) { char *variables[_VARIABLE_MAX] = {}; int r = 0, i; @@ -23,32 +21,31 @@ index d7113b9..b3fb603 100644 if (detect_container(NULL) <= 0) { r = parse_env_file("/proc/cmdline", WHITESPACE, -@@ -117,6 +122,28 @@ int locale_setup(void) { +@@ -116,6 +121,27 @@ int locale_setup(void) { + if (r < 0 && r != -ENOENT) log_warning("Failed to read /etc/locale.conf: %s", strerror(-r)); } - +#ifdef HAVE_SYSV_COMPAT -+ if (r <= 0 && ++ if (r <= 0 && + (r = parse_env_file("/etc/sysconfig/language", NEWLINE, + "ROOT_USES_LANG", &root_uses_lang, + "RC_LANG", &variables[VARIABLE_LANG], -+ NULL)) < 0) { ++ NULL)) < 0) { ++ if (r != -ENOENT) ++ log_warning("Failed to read /etc/sysconfig/language: %s", strerror(-r)); + -+ if (r != -ENOENT) -+ log_warning("Failed to read /etc/sysconfig/language: %s", strerror(-r)); + } else { -+ if (!root_uses_lang || (root_uses_lang && !strcaseeq(root_uses_lang,"yes"))) { -+ if (root_uses_lang && strcaseeq(root_uses_lang,"ctype")) -+ variables[VARIABLE_LC_CTYPE]=variables[VARIABLE_LANG]; -+ else -+ free(variables[VARIABLE_LANG]); ++ if (!root_uses_lang || (root_uses_lang && !strcaseeq(root_uses_lang,"yes"))) { ++ if (root_uses_lang && strcaseeq(root_uses_lang,"ctype")) ++ variables[VARIABLE_LC_CTYPE]=variables[VARIABLE_LANG]; ++ else ++ free(variables[VARIABLE_LANG]); + -+ variables[VARIABLE_LANG]=strdup("POSIX"); -+ } ++ variables[VARIABLE_LANG]=strdup("POSIX"); + } ++ } + +#endif -+ - if (!variables[VARIABLE_LANG]) { - variables[VARIABLE_LANG] = strdup("C"); - if (!variables[VARIABLE_LANG]) { + + for (i = 0; i < _VARIABLE_MAX; i++) { + if (variables[i]) { diff --git a/insserv-generator.patch b/insserv-generator.patch index 582098ea..d53876b7 100644 --- a/insserv-generator.patch +++ b/insserv-generator.patch @@ -13,11 +13,9 @@ systemd unit drop-in files to add dependencies create mode 100644 src/insserv-generator/Makefile create mode 100644 src/insserv-generator/insserv-generator.c -diff --git a/Makefile.am b/Makefile.am -index 016d7da..9f8319d 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -315,6 +315,7 @@ rootlibexec_PROGRAMS = \ +--- systemd-206.orig/Makefile.am ++++ systemd-206/Makefile.am +@@ -321,6 +321,7 @@ rootlibexec_PROGRAMS = \ systemd-sleep systemgenerator_PROGRAMS = \ @@ -25,7 +23,7 @@ index 016d7da..9f8319d 100644 systemd-getty-generator \ systemd-fstab-generator \ systemd-system-update-generator -@@ -1549,6 +1550,14 @@ systemd_delta_LDADD = \ +@@ -1642,6 +1643,14 @@ systemd_delta_LDADD = \ libsystemd-shared.la # ------------------------------------------------------------------------------ @@ -40,11 +38,8 @@ index 016d7da..9f8319d 100644 systemd_getty_generator_SOURCES = \ src/getty-generator/getty-generator.c -diff --git a/src/insserv-generator/Makefile b/src/insserv-generator/Makefile -new file mode 100644 -index 0000000..9d07505 --- /dev/null -+++ b/src/insserv-generator/Makefile ++++ systemd-206/src/insserv-generator/Makefile @@ -0,0 +1,28 @@ +# This file is part of systemd. +# @@ -74,11 +69,8 @@ index 0000000..9d07505 + $(MAKE) -C .. clean + +.PHONY: all clean -diff --git a/src/insserv-generator/insserv-generator.c b/src/insserv-generator/insserv-generator.c -new file mode 100644 -index 0000000..067ee2f --- /dev/null -+++ b/src/insserv-generator/insserv-generator.c ++++ systemd-206/src/insserv-generator/insserv-generator.c @@ -0,0 +1,309 @@ +/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/ + @@ -389,6 +381,3 @@ index 0000000..067ee2f + + return (r < 0) ? EXIT_FAILURE : EXIT_SUCCESS; +} --- -1.8.1.4 - diff --git a/macros.systemd.upstream b/macros.systemd.upstream index dc19f937..323d1d48 100644 --- a/macros.systemd.upstream +++ b/macros.systemd.upstream @@ -20,6 +20,7 @@ # RPM macros for packages installing systemd unit files %_unitdir @systemunitdir@ +%_userunitdir @userunitdir@ %_presetdir @systempresetdir@ %_udevhwdbdir @udevhwdbdir@ %_udevrulesdir @udevrulesdir@ @@ -71,3 +72,7 @@ fi \ %journal_catalog_update() \ @rootbindir@/journalctl --update-catalog >/dev/null 2>&1 || : \ %{nil} + +%tmpfiles_create() \ +@rootbindir@/systemd-tmpfiles --create %{?*} >/dev/null 2>&1 || : \ +%{nil} diff --git a/module-load-handle-SUSE-etc-sysconfig-kernel-module-list.patch b/module-load-handle-SUSE-etc-sysconfig-kernel-module-list.patch index 238d23be..dfa7cd97 100644 --- a/module-load-handle-SUSE-etc-sysconfig-kernel-module-list.patch +++ b/module-load-handle-SUSE-etc-sysconfig-kernel-module-list.patch @@ -7,11 +7,9 @@ Subject: module-load: handle SUSE /etc/sysconfig/kernel module list units/systemd-modules-load.service.in | 1 + 2 files changed, 27 insertions(+), 1 deletion(-) -diff --git a/src/modules-load/modules-load.c b/src/modules-load/modules-load.c -index 7b19ee0..36b1a68 100644 ---- a/src/modules-load/modules-load.c -+++ b/src/modules-load/modules-load.c -@@ -262,6 +262,9 @@ static int parse_argv(int argc, char *argv[]) { +--- systemd-206.orig/src/modules-load/modules-load.c ++++ systemd-206/src/modules-load/modules-load.c +@@ -262,6 +262,9 @@ static int parse_argv(int argc, char *ar int main(int argc, char *argv[]) { int r, k; struct kmod_ctx *ctx; @@ -52,10 +50,8 @@ index 7b19ee0..36b1a68 100644 finish: kmod_unref(ctx); strv_free(arg_proc_cmdline_modules); -diff --git a/units/systemd-modules-load.service.in b/units/systemd-modules-load.service.in -index 32deb52..2e26d2f 100644 ---- a/units/systemd-modules-load.service.in -+++ b/units/systemd-modules-load.service.in +--- systemd-206.orig/units/systemd-modules-load.service.in ++++ systemd-206/units/systemd-modules-load.service.in @@ -13,6 +13,7 @@ Conflicts=shutdown.target After=systemd-readahead-collect.service systemd-readahead-replay.service Before=sysinit.target shutdown.target diff --git a/optionally-warn-if-nss-myhostname-is-called.patch b/optionally-warn-if-nss-myhostname-is-called.patch index 93f8c8bf..41661df8 100644 --- a/optionally-warn-if-nss-myhostname-is-called.patch +++ b/optionally-warn-if-nss-myhostname-is-called.patch @@ -7,11 +7,9 @@ Subject: optionally warn if nss-myhostname is called src/nss-myhostname/nss-myhostname.c | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) -diff --git a/configure.ac b/configure.ac -index e1278e8..06eb98d 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -725,6 +725,17 @@ if test "x$enable_myhostname" != "xno"; then +--- systemd-206.orig/configure.ac ++++ systemd-206/configure.ac +@@ -803,6 +803,17 @@ if test "x$enable_myhostname" != "xno"; fi AM_CONDITIONAL(HAVE_MYHOSTNAME, [test "$have_myhostname" = "yes"]) @@ -29,10 +27,8 @@ index e1278e8..06eb98d 100644 # ------------------------------------------------------------------------------ AC_ARG_WITH(firmware-path, AS_HELP_STRING([--with-firmware-path=DIR[[[:DIR[...]]]]], -diff --git a/src/nss-myhostname/nss-myhostname.c b/src/nss-myhostname/nss-myhostname.c -index e97d4e5..a2a6de8 100644 ---- a/src/nss-myhostname/nss-myhostname.c -+++ b/src/nss-myhostname/nss-myhostname.c +--- systemd-206.orig/src/nss-myhostname/nss-myhostname.c ++++ systemd-206/src/nss-myhostname/nss-myhostname.c @@ -29,6 +29,9 @@ #include #include @@ -54,7 +50,7 @@ index e97d4e5..a2a6de8 100644 enum nss_status _nss_myhostname_gethostbyname4_r( const char *name, struct gaih_addrtuple **pat, -@@ -129,6 +136,9 @@ enum nss_status _nss_myhostname_gethostbyname4_r( +@@ -129,6 +136,9 @@ enum nss_status _nss_myhostname_gethostb return NSS_STATUS_NOTFOUND; } @@ -64,7 +60,7 @@ index e97d4e5..a2a6de8 100644 /* If this fails, n_addresses is 0. Which is fine */ ifconf_acquire_addresses(&addresses, &n_addresses); -@@ -382,6 +392,9 @@ enum nss_status _nss_myhostname_gethostbyname3_r( +@@ -382,6 +392,9 @@ enum nss_status _nss_myhostname_gethostb local_address_ipv4 = LOCALADDRESS_IPV4; } @@ -84,7 +80,7 @@ index e97d4e5..a2a6de8 100644 return fill_in_hostent( canonical, additional, af, -@@ -537,3 +553,19 @@ enum nss_status _nss_myhostname_gethostbyaddr_r( +@@ -537,3 +553,19 @@ enum nss_status _nss_myhostname_gethostb errnop, h_errnop, NULL); } diff --git a/remain_after_exit-initscript-heuristic-and-add-new-LSB-hea.patch b/remain_after_exit-initscript-heuristic-and-add-new-LSB-hea.patch index 2e13936d..3ff05deb 100644 --- a/remain_after_exit-initscript-heuristic-and-add-new-LSB-hea.patch +++ b/remain_after_exit-initscript-heuristic-and-add-new-LSB-hea.patch @@ -11,10 +11,8 @@ PIDFile: and X-Systemd-RemainAfterExit to control it. src/core/service.h | 1 + 2 files changed, 33 insertions(+), 2 deletions(-) -diff --git a/src/core/service.c b/src/core/service.c -index a8b0d9d..c357b33 100644 ---- a/src/core/service.c -+++ b/src/core/service.c +--- systemd-206.orig/src/core/service.c ++++ systemd-206/src/core/service.c @@ -135,6 +135,7 @@ static void service_init(Unit *u) { #ifdef HAVE_SYSV_COMPAT s->sysv_start_priority = -1; @@ -23,7 +21,7 @@ index a8b0d9d..c357b33 100644 #endif s->socket_fd = -1; s->guess_main_pid = true; -@@ -875,6 +876,34 @@ static int service_load_sysv_path(Service *s, const char *path) { +@@ -877,6 +878,34 @@ static int service_load_sysv_path(Servic free(short_description); short_description = d; @@ -58,7 +56,7 @@ index a8b0d9d..c357b33 100644 } else if (state == LSB_DESCRIPTION) { if (startswith(l, "#\t") || startswith(l, "# ")) { -@@ -925,7 +954,8 @@ static int service_load_sysv_path(Service *s, const char *path) { +@@ -927,7 +956,8 @@ static int service_load_sysv_path(Servic /* Special setting for all SysV services */ s->type = SERVICE_FORKING; @@ -68,7 +66,7 @@ index a8b0d9d..c357b33 100644 s->guess_main_pid = false; s->restart = SERVICE_RESTART_NO; s->exec_context.ignore_sigpipe = false; -@@ -2077,7 +2107,7 @@ static void service_enter_running(Service *s, ServiceResult f) { +@@ -2094,7 +2124,7 @@ static void service_enter_running(Servic if ((main_pid_ok > 0 || (main_pid_ok < 0 && cgroup_ok != 0)) && (s->bus_name_good || s->type != SERVICE_DBUS)) { #ifdef HAVE_SYSV_COMPAT @@ -77,11 +75,9 @@ index a8b0d9d..c357b33 100644 s->remain_after_exit = false; #endif service_set_state(s, SERVICE_RUNNING); -diff --git a/src/core/service.h b/src/core/service.h -index 703d3fa..dc52e8c 100644 ---- a/src/core/service.h -+++ b/src/core/service.h -@@ -176,6 +176,7 @@ struct Service { +--- systemd-206.orig/src/core/service.h ++++ systemd-206/src/core/service.h +@@ -177,6 +177,7 @@ struct Service { bool is_sysv:1; bool sysv_has_lsb:1; bool sysv_enabled:1; diff --git a/restore-var-run-and-var-lock-bind-mount-if-they-aren-t-sym.patch b/restore-var-run-and-var-lock-bind-mount-if-they-aren-t-sym.patch index e5c85f0c..c9f3fc9d 100644 --- a/restore-var-run-and-var-lock-bind-mount-if-they-aren-t-sym.patch +++ b/restore-var-run-and-var-lock-bind-mount-if-they-aren-t-sym.patch @@ -10,11 +10,9 @@ Subject: restore /var/run and /var/lock bind mount if they aren't symlink create mode 100644 units/var-lock.mount create mode 100644 units/var-run.mount -diff --git a/Makefile.am b/Makefile.am -index 8730f66..b8cf696 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -409,6 +409,12 @@ dist_systemunit_DATA = \ +--- systemd-206.orig/Makefile.am ++++ systemd-206/Makefile.am +@@ -407,6 +407,12 @@ dist_systemunit_DATA = \ units/system-update.target \ units/initrd-switch-root.target @@ -27,7 +25,7 @@ index 8730f66..b8cf696 100644 nodist_systemunit_DATA = \ units/getty@.service \ units/serial-getty@.service \ -@@ -4058,6 +4064,9 @@ RUNLEVEL4_TARGET_WANTS += \ +@@ -4277,6 +4283,9 @@ RUNLEVEL4_TARGET_WANTS += \ systemd-update-utmp-runlevel.service RUNLEVEL5_TARGET_WANTS += \ systemd-update-utmp-runlevel.service @@ -35,13 +33,10 @@ index 8730f66..b8cf696 100644 + var-run.mount \ + var-lock.mount endif - SHUTDOWN_TARGET_WANTS += \ - systemd-update-utmp-shutdown.service -diff --git a/units/var-lock.mount b/units/var-lock.mount -new file mode 100644 -index 0000000..07277ad + SYSINIT_TARGET_WANTS += \ + systemd-update-utmp.service --- /dev/null -+++ b/units/var-lock.mount ++++ systemd-206/units/var-lock.mount @@ -0,0 +1,19 @@ +# This file is part of systemd. +# @@ -62,11 +57,8 @@ index 0000000..07277ad +Where=/var/lock +Type=bind +Options=bind -diff --git a/units/var-run.mount b/units/var-run.mount -new file mode 100644 -index 0000000..ab4da42 --- /dev/null -+++ b/units/var-run.mount ++++ systemd-206/units/var-run.mount @@ -0,0 +1,19 @@ +# This file is part of systemd. +# diff --git a/service-flags-sysv-service-with-detected-pid-as-RemainAfte.patch b/service-flags-sysv-service-with-detected-pid-as-RemainAfte.patch index fb00b6d8..ca2c8271 100644 --- a/service-flags-sysv-service-with-detected-pid-as-RemainAfte.patch +++ b/service-flags-sysv-service-with-detected-pid-as-RemainAfte.patch @@ -12,11 +12,9 @@ Fixes https://bugzilla.novell.com/show_bug.cgi?id=721426 src/core/service.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) -Index: systemd-204/src/core/service.c -=================================================================== ---- systemd-204.orig/src/core/service.c -+++ systemd-204/src/core/service.c -@@ -2075,8 +2075,13 @@ static void service_enter_running(Servic +--- systemd-206.orig/src/core/service.c ++++ systemd-206/src/core/service.c +@@ -2092,8 +2092,13 @@ static void service_enter_running(Servic cgroup_ok = cgroup_good(s); if ((main_pid_ok > 0 || (main_pid_ok < 0 && cgroup_ok != 0)) && diff --git a/sysctl-handle-boot-sysctl.conf-kernel_release.patch b/sysctl-handle-boot-sysctl.conf-kernel_release.patch index 3ca7dc2a..45f1ad52 100644 --- a/sysctl-handle-boot-sysctl.conf-kernel_release.patch +++ b/sysctl-handle-boot-sysctl.conf-kernel_release.patch @@ -10,10 +10,8 @@ configuration), needed by openSUSE (bnc#809420). units/systemd-sysctl.service.in | 1 + 2 files changed, 9 insertions(+) -Index: systemd-204/src/sysctl/sysctl.c -=================================================================== ---- systemd-204.orig/src/sysctl/sysctl.c -+++ systemd-204/src/sysctl/sysctl.c +--- systemd-206.orig/src/sysctl/sysctl.c ++++ systemd-206/src/sysctl/sysctl.c @@ -26,6 +26,7 @@ #include #include @@ -36,10 +34,8 @@ Index: systemd-204/src/sysctl/sysctl.c r = conf_files_list_nulstr(&files, ".conf", NULL, conf_file_dirs); if (r < 0) { -Index: systemd-204/units/systemd-sysctl.service.in -=================================================================== ---- systemd-204.orig/units/systemd-sysctl.service.in -+++ systemd-204/units/systemd-sysctl.service.in +--- systemd-206.orig/units/systemd-sysctl.service.in ++++ systemd-206/units/systemd-sysctl.service.in @@ -20,6 +20,7 @@ ConditionDirectoryNotEmpty=|/usr/lib/sys ConditionDirectoryNotEmpty=|/usr/local/lib/sysctl.d ConditionDirectoryNotEmpty=|/etc/sysctl.d diff --git a/systemctl-does-not-expand-u-so-revert-back-to-I.patch b/systemctl-does-not-expand-u-so-revert-back-to-I.patch deleted file mode 100644 index 6502fa49..00000000 --- a/systemctl-does-not-expand-u-so-revert-back-to-I.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 9541fe6adff9941e487084c718ff2d46ed2929c6 Mon Sep 17 00:00:00 2001 -From: Auke Kok -Date: Thu, 9 May 2013 09:39:15 -0700 -Subject: [PATCH] systemctl does not expand %u, so revert back to %I - -The description field is only displayed by systemctl, and -it can't expand %u properly (it will always display "root"). ---- - units/user@.service.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/units/user@.service.in b/units/user@.service.in -index 3cf1347..ece671d 100644 ---- a/units/user@.service.in -+++ b/units/user@.service.in -@@ -6,7 +6,7 @@ - # (at your option) any later version. - - [Unit] --Description=User Manager for %u -+Description=User Manager for %I - After=systemd-user-sessions.service - - [Service] --- -1.8.1.4 - diff --git a/systemd-204.tar.xz b/systemd-204.tar.xz deleted file mode 100644 index ae11dd5d..00000000 --- a/systemd-204.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:072c393503c7c1e55ca7acf3db659cbd28c7fe5fa94fab3db95360bafd96731b -size 2186264 diff --git a/systemd-206.tar.xz b/systemd-206.tar.xz new file mode 100644 index 00000000..5702098a --- /dev/null +++ b/systemd-206.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c993de071118ea1df7ffc4be26ef0b0d78354ef15b2743a2783d20edfcde9de +size 2340536 diff --git a/systemd-insserv_conf b/systemd-insserv_conf deleted file mode 100644 index 5bdebd1b..00000000 --- a/systemd-insserv_conf +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/bash - -[ -r /etc/insserv.conf ] || exit 0 - -declare -A facilities -facilities["local_fs"]="local-fs.target" -facilities["localfs"]="local-fs.target" -facilities["named"]="nss-lookup.target" -facilities["network"]="network.target" -# done in systemd code -#facilities["portmap"]="rpcbind.target" -facilities["remote_fs"]="remote-fs.target" -facilities["syslog"]="syslog.target" -facilities["time"]="time-sync.target" - -while read line ; do - case "$line" in - \#*|"" ) continue;; - \<* ) continue;; - \$*) t=${line%% *} - target=${facilities[${t:1}]} - [ -z $target ] && continue - mkdir -p $1/$target.{requires,wants} - for dep in ${line##* } ; do - stripped_dep=${dep/boot./} - case "$stripped_dep" in - +*) ln -s -f /lib/systemd/system/${facilities[${stripped_dep:2}]:-${stripped_dep:1}.service} $1/$target.wants/ ;; - *) ln -s -f /lib/systemd/system/${facilities[${stripped_dep:1}]:-${stripped_dep}.service} $1/$target.requires/ ;; - esac - done - ;; - esac -done < /etc/insserv.conf - diff --git a/systemd-mini-rpmlintrc b/systemd-mini-rpmlintrc index 219445d9..87518f9d 100644 --- a/systemd-mini-rpmlintrc +++ b/systemd-mini-rpmlintrc @@ -16,3 +16,5 @@ addFilter(".*libgudev-.*shlib-fixed-dependency.*") addFilter(".*suse-filelist-forbidden-systemd-userdirs.*") addFilter("libudev-mini.*shlib-policy-name-error.*") addFilter("nss-myhostname.*shlib-policy-name-error.*") +addFilter("systemd-logger.*useless-provides sysvinit(syslog).*") + diff --git a/systemd-mini.changes b/systemd-mini.changes index 1900e582..35185b2f 100644 --- a/systemd-mini.changes +++ b/systemd-mini.changes @@ -1,3 +1,162 @@ +------------------------------------------------------------------- +Thu Aug 1 15:52:20 UTC 2013 - fcrozat@suse.com + +- Ensure /usr/lib/systemd/system/shutdown.target.wants is created + and owned by systemd package. + +------------------------------------------------------------------- +Mon Jul 29 14:01:48 UTC 2013 - fcrozat@suse.com + +- Fix drop-in for getty@tty1.service + +------------------------------------------------------------------- +Thu Jul 25 12:35:29 UTC 2013 - fcrozat@suse.com + +- Move systemd-journal-gateway to subpackage to lower dependencies + in default install. + +------------------------------------------------------------------- +Tue Jul 23 01:32:38 UTC 2013 - crrodriguez@opensuse.org + +- version 206 , highlights: +* Unit files now understand the new %v specifier which + resolves to the kernel version string as returned by "uname-r". +* "journalctl -b" may now be used to look for boot output of a + specific boot. Try "journalctl -b -1" +* Creation of "dead" device nodes has been moved from udev + into kmod and tmpfiles. +* The udev "keymap" data files and tools to apply keyboard + specific mappings of scan to key codes, and force-release + scan code lists have been entirely replaced by a udev + "keyboard" builtin and a hwdb data file. + +- remove patches now in upstream +- systemd now requires libkmod >=14 and cryptsetup >= 1.6.0 +- systemd now require the kmod tool in addition to the library. + +------------------------------------------------------------------- +Sun Jul 14 05:25:51 UTC 2013 - arvidjaar@gmail.com + +- use-usr-sbin-sulogin-for-emergency-service.patch + emergency.service failed to start because sulogin is in /usr/sbin now + +------------------------------------------------------------------- +Fri Jul 12 17:09:23 CEST 2013 - mls@suse.de + +- fix build with rpm-4.11.1: /etc/xdg/system/user is a symlink, + not a directory + +------------------------------------------------------------------- +Fri Jul 5 02:17:19 UTC 2013 - crrodriguez@opensuse.org + +- 0002-core-mount.c-mount_dump-don-t-segfault-if-mount-is-n.patch + fix segfault at shutdown +- 0004-disable-the-cgroups-release-agent-when-shutting-down.patch + disable the cgroups release agent when shutting down. +- 0005-cgroups-agent-remove-ancient-fallback-code-turn-conn.patch + remove ancient fallback code; turn connection error into warning +- 006-suppress-status-message-output-at-shutdown-when-quie.patch + make shutdown honour "quiet" kernel cmdline. + +------------------------------------------------------------------- +Fri Jul 5 02:09:55 UTC 2013 - crrodriguez@opensuse.org + +- fix broken symlink, service is called systemd-random-seed now. + +------------------------------------------------------------------- +Thu Jul 4 10:20:23 CEST 2013 - fcrozat@suse.com + +- Update to release 205: + + two new unit types have been introduced: + - Scope units are very similar to service units, however, are + created out of pre-existing processes -- instead of PID 1 + forking off the processes. + - Slice units may be used to partition system resources in an + hierarchial fashion and then assign other units to them. By + default there are now three slices: system.slice (for all + system services), user.slice (for all user sessions), + machine.slice (for VMs and containers). + + new concept of "transient" units, which are created at runtime + using an API and not based on configuration from disk. + + logind has been updated to make use of scope and slice units to + manage user sessions. Logind will no longer create cgroups + hierchies itself but will relying on PID 1. + + A new mini-daemon "systemd-machined" has been added which + may be used by virtualization managers to register local + VMs/containers. machinectl tool has been added to query + meta-data from systemd-machined. + + Low-level cgroup configuration options ControlGroup=, + ControlGroupModify=, ControlGroupPersistent=, + ControlGroupAttribute= have been removed. High-level attribute + settings or slice units should be used instead? + + A new bus call SetUnitProperties() has been added to alter + various runtime parameters of a unit, including cgroup + parameters. systemctl gained set-properties command to wrap + this call. + + A new tool "systemd-run" has been added which can be used to + run arbitrary command lines as transient services or scopes, + while configuring a number of settings via the command + line. + + nspawn will now inform the user explicitly that kernels with + audit enabled break containers, and suggest the user to turn + off audit. + + Support for detecting the IMA and AppArmor security + frameworks with ConditionSecurity= has been added. + + journalctl gained a new "-k" switch for showing only kernel + messages, mimicking dmesg output; in addition to "--user" + and "--system" switches for showing only user's own logs + and system logs. + + systemd-delta can now show information about drop-in + snippets extending unit files. + + systemd will now look for the "debug" argument on the kernel + command line and enable debug logging, similar to + "systemd.log_level=debug" already did before. + + "systemctl set-default", "systemctl get-default" has been + added to configure the default.target symlink, which + controls what to boot into by default. + + "systemctl set-log-level" has been added as a convenient + way to raise and lower systemd logging threshold. + + "systemd-analyze plot" will now show the time the various + generators needed for execution, as well as information + about the unit file loading. + + libsystemd-journal gained a new sd_journal_open_files() call + for opening specific journal files. journactl also gained a + new switch to expose this new functionality (useful for + debugging). + + systemd gained the new DefaultEnvironment= setting in + /etc/systemd/system.conf to set environment variables for + all services. + + If a privileged process logs a journal message with the + OBJECT_PID= field set, then journald will automatically + augment this with additional OBJECT_UID=, OBJECT_GID=, + OBJECT_COMM=, OBJECT_EXE=, ... fields. This is useful if + system services want to log events about specific client + processes. journactl/systemctl has been updated to make use + of this information if all log messages regarding a specific + unit is requested. +- Remove 0001-journal-letting-interleaved-seqnums-go.patch, + 0002-journal-remember-last-direction-of-search-and-keep-o.patch, + 0004-journald-DO-recalculate-the-ACL-mask-but-only-if-it-.patch, + 0006-systemctl-core-allow-nuking-of-symlinks-to-removed-u.patch, + 0008-service-don-t-report-alien-child-as-alive-when-it-s-.patch, + 0160-mount-when-learning-about-the-root-mount-from-mounti.patch, + 0185-core-only-attempt-to-connect-to-a-session-bus-if-one.patch, + Start-ctrl-alt-del.target-irreversibly.patch, + systemctl-does-not-expand-u-so-revert-back-to-I.patch: merged + upstream. +- Regenerate patches 1007-physical-hotplug-cpu-and-memory.patch, + 1008-add-msft-compability-rules.patch, + Revert-service-drop-support-for-SysV-scripts-for-the-early.patch, + fix-support-for-boot-prefixed-initscript-bnc-746506.patch, + handle-SYSTEMCTL_OPTIONS-environment-variable.patch, + handle-numlock-value-in-etc-sysconfig-keyboard.patch, + insserv-generator.patch, + optionally-warn-if-nss-myhostname-is-called.patch, + remain_after_exit-initscript-heuristic-and-add-new-LSB-hea.patch, + restore-var-run-and-var-lock-bind-mount-if-they-aren-t-sym.patch, + service-flags-sysv-service-with-detected-pid-as-RemainAfte.patch. +- Update macros.systemd.upstream with latest upstream revision. + ------------------------------------------------------------------- Mon Jul 1 13:43:31 UTC 2013 - fcrozat@suse.com diff --git a/systemd-mini.spec b/systemd-mini.spec index e0be549a..8dc12a23 100644 --- a/systemd-mini.spec +++ b/systemd-mini.spec @@ -25,7 +25,7 @@ Name: systemd-mini Url: http://www.freedesktop.org/wiki/Software/systemd -Version: 204 +Version: 206 Release: 0 Summary: A System and Session Manager License: LGPL-2.1+ @@ -65,9 +65,9 @@ BuildRequires: pkgconfig(dbus-1) >= 1.3.2 %if ! 0%{?bootstrap} BuildRequires: libgcrypt-devel BuildRequires: pkgconfig(glib-2.0) >= 2.22.0 -BuildRequires: pkgconfig(libcryptsetup) >= 1.4.2 +BuildRequires: pkgconfig(libcryptsetup) >= 1.6.0 %endif -BuildRequires: pkgconfig(libkmod) >= 5 +BuildRequires: pkgconfig(libkmod) >= 14 BuildRequires: pkgconfig(liblzma) %if ! 0%{?bootstrap} BuildRequires: pkgconfig(libmicrohttpd) @@ -90,6 +90,7 @@ Conflicts: kiwi Requires: %{udevpkgname} >= 172 Requires: dbus-1 >= 1.4.0 Requires: kbd +Requires: kmod >= 14 Requires: pam-config >= 0.79-5 Requires: pwdutils Requires: systemd-presets-branding @@ -168,24 +169,9 @@ Patch24: handle-etc-HOSTNAME.patch Patch25: Forward-suspend-hibernate-calls-to-pm-utils.patch # PATCH-FIX-UPSTREAM rules-add-lid-switch-of-ARM-based-Chromebook-as-a-power-sw.patch rjschwei@suse.com -- add lid switch of ARM based Chromebook as a power switch to logind Patch38: rules-add-lid-switch-of-ARM-based-Chromebook-as-a-power-sw.patch -# PATCH-FIX-UPSTREAM systemctl-does-not-expand-u-so-revert-back-to-I.patch fcrozat@suse.com -- avoids expansion errors. -Patch42: systemctl-does-not-expand-u-so-revert-back-to-I.patch -# PATCH-FIX-UPSTREAM Start-ctrl-alt-del.target-irreversibly.patch fcrozat@suse.com -- ctrl-alt-del should be irreversible for reliability. -Patch43: Start-ctrl-alt-del.target-irreversibly.patch -# PATCH-FIX-UPSTREAM 0004-journald-DO-recalculate-the-ACL-mask-but-only-if-it-.patch crrodriguez@opensuse.org fix systemd-journald[347]: Failed to set ACL on ...user-1000.journal..Invalid argument -Patch44: 0004-journald-DO-recalculate-the-ACL-mask-but-only-if-it-.patch -# PATCH-FIX-UPSTREAM 0006-systemctl-core-allow-nuking-of-symlinks-to-removed-u.patch crrodriguez@opensuse.org ensure systemctl disable removes dangling symlinks -Patch45: 0006-systemctl-core-allow-nuking-of-symlinks-to-removed-u.patch -# PATCH-FIX-UPSTREAM 0008-service-don-t-report-alien-child-as-alive-when-it-s-.patch crrodriguez@opensuse.org do not report alien child as alive when it is dead. -Patch46: 0008-service-don-t-report-alien-child-as-alive-when-it-s-.patch -# PATCH-FIX-UPSTREAM 0001-journal-letting-interleaved-seqnums-go.patch crrodriguez@opensuse.org fix journal infinite loops -Patch47: 0001-journal-letting-interleaved-seqnums-go.patch -# PATCH-FIX-UPSTREAM 0002-journal-remember-last-direction-of-search-and-keep-o.patch crrodriguez@opensuse.org fix journal infinite loops -Patch48: 0002-journal-remember-last-direction-of-search-and-keep-o.patch -# PATCH-FIX-UPSTREAM 0160-mount-when-learning-about-the-root-mount-from-mounti.patch crrodriguez@opensuse.org another case where / is attempted to umount at shutdown -Patch49: 0160-mount-when-learning-about-the-root-mount-from-mounti.patch -# PATCH-FIX-UPSTREAM 0185-core-only-attempt-to-connect-to-a-session-bus-if-one.patch crrodriguez@opensuse.org only attempt to connect to a session bus if one likely exists. -Patch50: 0185-core-only-attempt-to-connect-to-a-session-bus-if-one.patch +# PATCH-FIX-OPENSUSE use-usr-sbin-sulogin-for-emergency-service.patch arvidjaar@gmail.com -- fix path to sulogin +Patch46: use-usr-sbin-sulogin-for-emergency-service.patch + # udev patches # PATCH-FIX-OPENSUSE 1001-re-enable-by_path-links-for-ata-devices.patch Patch1001: 1001-re-enable-by_path-links-for-ata-devices.patch @@ -193,8 +179,6 @@ Patch1001: 1001-re-enable-by_path-links-for-ata-devices.patch Patch1002: 1002-rules-create-by-id-scsi-links-for-ATA-devices.patch # PATCH-FIX-OPENSUSE 1003-udev-netlink-null-rules.patch Patch1003: 1003-udev-netlink-null-rules.patch -# PATCH-FIX-OPENSUSE 1004-fix-devname-prefix.patch fcrozat@suse.com -- fix modules.devname path, it isn't in /usr -Patch1004: 1004-fix-devname-prefix.patch # PATCH-FIX-OPENSUSE 1005-create-default-links-for-primary-cd_dvd-drive.patch Patch1005: 1005-create-default-links-for-primary-cd_dvd-drive.patch # PATCH-FIX-OPENSUSE 1006-udev-always-rename-network.patch @@ -370,6 +354,18 @@ is logged to /var/log/messages. Please check whether that's worth a bug report then. This package marks the installation to not use syslog but only the journal. +%package journal-gateway +Summary: Gateway for serving journal events over the network using HTTP +License: LGPL-2.1+ +Group: System/Base +Requires: %{name} = %{version}-%{release} +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd + +%description journal-gateway +systemd-journal-gatewayd serves journal events over the network using HTTP. + %endif %prep @@ -418,20 +414,12 @@ cp %{SOURCE7} m4/ %patch39 -p1 %patch40 -p1 %patch41 -p1 -%patch42 -p1 -%patch43 -p1 -%patch44 -p1 -%patch45 -p1 %patch46 -p1 -%patch47 -p1 -%patch48 -p1 -%patch49 -p1 -%patch50 -p1 + # udev patches %patch1001 -p1 %patch1002 -p1 %patch1003 -p1 -%patch1004 -p1 %patch1005 -p1 %patch1006 -p1 # don't apply when bootstrapping to not modify Makefile.am @@ -503,7 +491,7 @@ mkdir -p $RPM_BUILD_ROOT/%{_prefix}/lib/systemd/system/basic.target.wants ln -sf ../systemd-udev-root-symlink.service $RPM_BUILD_ROOT/%{_prefix}/lib/systemd/system/basic.target.wants rm -rf %{buildroot}%{_sysconfdir}/rpm find %{buildroot} -type f -name '*.la' -delete -mkdir -p %{buildroot}/{sbin,var/lib/systemd/sysv-convert,var/lib/systemd/migrated} %{buildroot}/usr/lib/systemd/{system-generators,user-generators,system-preset,user-preset,system/halt.target.wants,system/kexec.target.wants,system/poweroff.target.wants,system/reboot.target.wants} +mkdir -p %{buildroot}/{sbin,var/lib/systemd/sysv-convert,var/lib/systemd/migrated} %{buildroot}/usr/lib/systemd/{system-generators,user-generators,system-preset,user-preset,system/halt.target.wants,system/kexec.target.wants,system/poweroff.target.wants,system/reboot.target.wants,system/shutdown.target.wants} install -m755 %{S:3} -D %{buildroot}%{_sbindir}/systemd-sysv-convert ln -s ../usr/lib/systemd/systemd %{buildroot}/bin/systemd @@ -537,7 +525,7 @@ ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/startpreload.service ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/stoppreload.service ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/earlyxdm.service ln -s systemd-sysctl.service %{buildroot}/%{_prefix}/lib/systemd/system/sysctl.service -ln -s systemd-random-seed-load.service %{buildroot}/%{_prefix}/lib/systemd/system/random.service +ln -s systemd-random-seed.service %{buildroot}/%{_prefix}/lib/systemd/system/random.service # don't mount /tmp as tmpfs for now rm %{buildroot}/%{_prefix}/lib/systemd/system/local-fs.target.wants/tmp.mount @@ -596,7 +584,7 @@ mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/dbus.target.wants # create drop-in to prevent tty1 to be cleared (bnc#804158) mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/getty@tty1.service.d/ -echo << EOF > %{buildroot}%{_prefix}/lib/systemd/system/getty@tty1.service.d/noclear.conf +cat << EOF > %{buildroot}%{_prefix}/lib/systemd/system/getty@tty1.service.d/noclear.conf [Service] # ensure tty1 isn't cleared (bnc#804158) TTYVTDisallocate=no @@ -609,10 +597,11 @@ cat << EOF > %{buildroot}%{_prefix}/lib/tmpfiles.d/network.conf F /run/udev/rules.d/80-net-name-slot.rules 0644 - - - "#disable predictable network interface naming for now" EOF +# packaged in systemd-rpm-macros +rm -f %{buildroot}/%{_prefix}/lib/rpm/macros.d/macros.systemd + %pre getent group systemd-journal >/dev/null || groupadd -r systemd-journal || : -getent passwd systemd-journal-gateway >/dev/null || useradd -r -l -g systemd-journal-gateway -d /var/log/journal -s /usr/sbin/nologin -c "Journal Gateway" systemd-journal-gateway >/dev/null 2>&1 || : -getent group systemd-journal-gateway >/dev/null || groupadd -r systemd-journal-gateway || : exit 0 %post @@ -761,6 +750,21 @@ fi %postun -n nss-myhostname -p /sbin/ldconfig +%pre journal-gateway +getent passwd systemd-journal-gateway >/dev/null || useradd -r -l -g systemd-journal-gateway -d /var/log/journal -s /usr/sbin/nologin -c "Journal Gateway" systemd-journal-gateway >/dev/null 2>&1 || : +getent group systemd-journal-gateway >/dev/null || groupadd -r systemd-journal-gateway || : +%service_add_pre systemd-journal-gatewayd.socket systemd-journal-gatewayd.service +exit 0 + +%post journal-gateway +%service_add_post systemd-journal-gatewayd.socket systemd-journal-gatewayd.service + +%preun journal-gateway +%service_del_preun systemd-journal-gatewayd.socket systemd-journal-gatewayd.service + +%postun journal-gateway +%service_del_postun systemd-journal-gatewayd.socket systemd-journal-gatewayd.service + %endif %files @@ -772,11 +776,13 @@ fi %{_bindir}/kernel-install %{_bindir}/hostnamectl %{_bindir}/localectl +%{_bindir}/machinectl %{_bindir}/systemctl %{_bindir}/systemd-analyze %{_bindir}/systemd-coredumpctl %{_bindir}/systemd-delta %{_bindir}/systemd-notify +%{_bindir}/systemd-run %{_bindir}/systemd-journalctl %{_bindir}/journalctl %{_bindir}/systemd-ask-password @@ -810,8 +816,10 @@ fi %exclude %{_prefix}/lib/systemd/system/systemd-udev-root-symlink.service %exclude %{_prefix}/lib/systemd/system/*.target.wants/systemd-udev*.* %exclude %{_prefix}/lib/systemd/system/basic.target.wants/systemd-udev-root-symlink.service +%exclude %{_prefix}/lib/systemd/system/systemd-journal-gatewayd.* %{_prefix}/lib/systemd/system/*.automount %{_prefix}/lib/systemd/system/*.service +%{_prefix}/lib/systemd/system/*.slice %{_prefix}/lib/systemd/system/*.target %{_prefix}/lib/systemd/system/*.mount %{_prefix}/lib/systemd/system/*.timer @@ -821,6 +829,7 @@ fi %{_prefix}/lib/systemd/user/*.target %{_prefix}/lib/systemd/user/*.service %exclude %{_prefix}/lib/systemd/systemd-udevd +%exclude %{_prefix}/lib/systemd/systemd-journal-gatewayd %{_prefix}/lib/systemd/systemd-* %{_prefix}/lib/systemd/systemd %dir %{_prefix}/lib/systemd/catalog @@ -867,7 +876,7 @@ fi %dir %{_sysconfdir}/systemd/system %dir %{_sysconfdir}/systemd/user %dir %{_sysconfdir}/xdg/systemd -%dir %{_sysconfdir}/xdg/systemd/user +%{_sysconfdir}/xdg/systemd/user %config(noreplace) %{_sysconfdir}/systemd/bootchart.conf %config(noreplace) %{_sysconfdir}/systemd/system.conf %config(noreplace) %{_sysconfdir}/systemd/logind.conf @@ -875,6 +884,7 @@ fi %config(noreplace) %{_sysconfdir}/systemd/user.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.machine1.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 @@ -888,6 +898,7 @@ fi %{_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.machine1.service %{_datadir}/dbus-1/system-services/org.freedesktop.timedate1.service %dir %{_datadir}/polkit-1 %dir %{_datadir}/polkit-1/actions @@ -896,6 +907,7 @@ fi %{_datadir}/polkit-1/actions/org.freedesktop.locale1.policy %{_datadir}/polkit-1/actions/org.freedesktop.timedate1.policy %{_datadir}/polkit-1/actions/org.freedesktop.login1.policy +%exclude %{_datadir}/systemd/gatewayd %{_datadir}/systemd %if ! 0%{?bootstrap} @@ -908,7 +920,7 @@ fi %exclude %{_mandir}/man8/telinit.8* %exclude %{_mandir}/man8/runlevel.8* %exclude %{_mandir}/man*/*udev*.[0-9]* - +%exclude %{_mandir}/man8/systemd-journal-gatewayd.* %{_mandir}/man1/*.1* %{_mandir}/man3/*.3* %{_mandir}/man5/*.5* @@ -990,15 +1002,10 @@ fi %{_prefix}/lib/udev/ata_id %{_prefix}/lib/udev/cdrom_id %{_prefix}/lib/udev/collect -%{_prefix}/lib/udev/findkeyboards -%{_prefix}/lib/udev/keymap %{_prefix}/lib/udev/mtd_probe %{_prefix}/lib/udev/scsi_id %{_prefix}/lib/udev/v4l_id %{_prefix}/lib/udev/write_dev_root_rule -%dir %{_prefix}/lib/udev/keymaps -%{_prefix}/lib/udev/keymaps/* -%{_prefix}/lib/udev/keyboard-force-release.sh %dir %{_prefix}/lib/udev/rules.d/ %exclude %{_prefix}/lib/udev/rules.d/70-uaccess.rules %exclude %{_prefix}/lib/udev/rules.d/71-seat.rules @@ -1077,6 +1084,12 @@ fi %{_sbindir}/nss-myhostname-config /%{_lib}/*nss_myhostname* +%files journal-gateway +%defattr(-, root, root) +%{_prefix}/lib/systemd/system/systemd-journal-gatewayd.* +%{_prefix}/lib/systemd/systemd-journal-gatewayd +%{_mandir}/man8/systemd-journal-gatewayd.* +%{_datadir}/systemd/gatewayd %endif %changelog diff --git a/systemd-rpm-macros.changes b/systemd-rpm-macros.changes index 3d222ce2..165b84c9 100644 --- a/systemd-rpm-macros.changes +++ b/systemd-rpm-macros.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Thu Jul 4 13:59:43 CEST 2013 - fcrozat@suse.com + +- Resync with systemd v205 macros + ------------------------------------------------------------------- Mon Jun 17 10:49:50 UTC 2013 - mhrusecky@suse.com diff --git a/systemd-rpm-macros.spec b/systemd-rpm-macros.spec index 0268d064..4c7b714f 100644 --- a/systemd-rpm-macros.spec +++ b/systemd-rpm-macros.spec @@ -19,7 +19,7 @@ #!BuildIgnore: util-linux Name: systemd-rpm-macros -Version: 1 +Version: 2 Release: 0 Summary: RPM macros for systemd License: LGPL-2.1+ diff --git a/systemd-rpmlintrc b/systemd-rpmlintrc index 219445d9..87518f9d 100644 --- a/systemd-rpmlintrc +++ b/systemd-rpmlintrc @@ -16,3 +16,5 @@ addFilter(".*libgudev-.*shlib-fixed-dependency.*") addFilter(".*suse-filelist-forbidden-systemd-userdirs.*") addFilter("libudev-mini.*shlib-policy-name-error.*") addFilter("nss-myhostname.*shlib-policy-name-error.*") +addFilter("systemd-logger.*useless-provides sysvinit(syslog).*") + diff --git a/systemd-tmp-safe-defaults.patch b/systemd-tmp-safe-defaults.patch index 4c957df7..492ab22b 100644 --- a/systemd-tmp-safe-defaults.patch +++ b/systemd-tmp-safe-defaults.patch @@ -8,10 +8,8 @@ SUSE policy is to not clean /tmp by default. tmpfiles.d/tmp.conf | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) -diff --git a/tmpfiles.d/tmp.conf b/tmpfiles.d/tmp.conf -index 3b534a1..99eb6f2 100644 ---- a/tmpfiles.d/tmp.conf -+++ b/tmpfiles.d/tmp.conf +--- systemd-206.orig/tmpfiles.d/tmp.conf ++++ systemd-206/tmpfiles.d/tmp.conf @@ -8,8 +8,9 @@ # See tmpfiles.d(5) for details diff --git a/systemd.changes b/systemd.changes index 1900e582..35185b2f 100644 --- a/systemd.changes +++ b/systemd.changes @@ -1,3 +1,162 @@ +------------------------------------------------------------------- +Thu Aug 1 15:52:20 UTC 2013 - fcrozat@suse.com + +- Ensure /usr/lib/systemd/system/shutdown.target.wants is created + and owned by systemd package. + +------------------------------------------------------------------- +Mon Jul 29 14:01:48 UTC 2013 - fcrozat@suse.com + +- Fix drop-in for getty@tty1.service + +------------------------------------------------------------------- +Thu Jul 25 12:35:29 UTC 2013 - fcrozat@suse.com + +- Move systemd-journal-gateway to subpackage to lower dependencies + in default install. + +------------------------------------------------------------------- +Tue Jul 23 01:32:38 UTC 2013 - crrodriguez@opensuse.org + +- version 206 , highlights: +* Unit files now understand the new %v specifier which + resolves to the kernel version string as returned by "uname-r". +* "journalctl -b" may now be used to look for boot output of a + specific boot. Try "journalctl -b -1" +* Creation of "dead" device nodes has been moved from udev + into kmod and tmpfiles. +* The udev "keymap" data files and tools to apply keyboard + specific mappings of scan to key codes, and force-release + scan code lists have been entirely replaced by a udev + "keyboard" builtin and a hwdb data file. + +- remove patches now in upstream +- systemd now requires libkmod >=14 and cryptsetup >= 1.6.0 +- systemd now require the kmod tool in addition to the library. + +------------------------------------------------------------------- +Sun Jul 14 05:25:51 UTC 2013 - arvidjaar@gmail.com + +- use-usr-sbin-sulogin-for-emergency-service.patch + emergency.service failed to start because sulogin is in /usr/sbin now + +------------------------------------------------------------------- +Fri Jul 12 17:09:23 CEST 2013 - mls@suse.de + +- fix build with rpm-4.11.1: /etc/xdg/system/user is a symlink, + not a directory + +------------------------------------------------------------------- +Fri Jul 5 02:17:19 UTC 2013 - crrodriguez@opensuse.org + +- 0002-core-mount.c-mount_dump-don-t-segfault-if-mount-is-n.patch + fix segfault at shutdown +- 0004-disable-the-cgroups-release-agent-when-shutting-down.patch + disable the cgroups release agent when shutting down. +- 0005-cgroups-agent-remove-ancient-fallback-code-turn-conn.patch + remove ancient fallback code; turn connection error into warning +- 006-suppress-status-message-output-at-shutdown-when-quie.patch + make shutdown honour "quiet" kernel cmdline. + +------------------------------------------------------------------- +Fri Jul 5 02:09:55 UTC 2013 - crrodriguez@opensuse.org + +- fix broken symlink, service is called systemd-random-seed now. + +------------------------------------------------------------------- +Thu Jul 4 10:20:23 CEST 2013 - fcrozat@suse.com + +- Update to release 205: + + two new unit types have been introduced: + - Scope units are very similar to service units, however, are + created out of pre-existing processes -- instead of PID 1 + forking off the processes. + - Slice units may be used to partition system resources in an + hierarchial fashion and then assign other units to them. By + default there are now three slices: system.slice (for all + system services), user.slice (for all user sessions), + machine.slice (for VMs and containers). + + new concept of "transient" units, which are created at runtime + using an API and not based on configuration from disk. + + logind has been updated to make use of scope and slice units to + manage user sessions. Logind will no longer create cgroups + hierchies itself but will relying on PID 1. + + A new mini-daemon "systemd-machined" has been added which + may be used by virtualization managers to register local + VMs/containers. machinectl tool has been added to query + meta-data from systemd-machined. + + Low-level cgroup configuration options ControlGroup=, + ControlGroupModify=, ControlGroupPersistent=, + ControlGroupAttribute= have been removed. High-level attribute + settings or slice units should be used instead? + + A new bus call SetUnitProperties() has been added to alter + various runtime parameters of a unit, including cgroup + parameters. systemctl gained set-properties command to wrap + this call. + + A new tool "systemd-run" has been added which can be used to + run arbitrary command lines as transient services or scopes, + while configuring a number of settings via the command + line. + + nspawn will now inform the user explicitly that kernels with + audit enabled break containers, and suggest the user to turn + off audit. + + Support for detecting the IMA and AppArmor security + frameworks with ConditionSecurity= has been added. + + journalctl gained a new "-k" switch for showing only kernel + messages, mimicking dmesg output; in addition to "--user" + and "--system" switches for showing only user's own logs + and system logs. + + systemd-delta can now show information about drop-in + snippets extending unit files. + + systemd will now look for the "debug" argument on the kernel + command line and enable debug logging, similar to + "systemd.log_level=debug" already did before. + + "systemctl set-default", "systemctl get-default" has been + added to configure the default.target symlink, which + controls what to boot into by default. + + "systemctl set-log-level" has been added as a convenient + way to raise and lower systemd logging threshold. + + "systemd-analyze plot" will now show the time the various + generators needed for execution, as well as information + about the unit file loading. + + libsystemd-journal gained a new sd_journal_open_files() call + for opening specific journal files. journactl also gained a + new switch to expose this new functionality (useful for + debugging). + + systemd gained the new DefaultEnvironment= setting in + /etc/systemd/system.conf to set environment variables for + all services. + + If a privileged process logs a journal message with the + OBJECT_PID= field set, then journald will automatically + augment this with additional OBJECT_UID=, OBJECT_GID=, + OBJECT_COMM=, OBJECT_EXE=, ... fields. This is useful if + system services want to log events about specific client + processes. journactl/systemctl has been updated to make use + of this information if all log messages regarding a specific + unit is requested. +- Remove 0001-journal-letting-interleaved-seqnums-go.patch, + 0002-journal-remember-last-direction-of-search-and-keep-o.patch, + 0004-journald-DO-recalculate-the-ACL-mask-but-only-if-it-.patch, + 0006-systemctl-core-allow-nuking-of-symlinks-to-removed-u.patch, + 0008-service-don-t-report-alien-child-as-alive-when-it-s-.patch, + 0160-mount-when-learning-about-the-root-mount-from-mounti.patch, + 0185-core-only-attempt-to-connect-to-a-session-bus-if-one.patch, + Start-ctrl-alt-del.target-irreversibly.patch, + systemctl-does-not-expand-u-so-revert-back-to-I.patch: merged + upstream. +- Regenerate patches 1007-physical-hotplug-cpu-and-memory.patch, + 1008-add-msft-compability-rules.patch, + Revert-service-drop-support-for-SysV-scripts-for-the-early.patch, + fix-support-for-boot-prefixed-initscript-bnc-746506.patch, + handle-SYSTEMCTL_OPTIONS-environment-variable.patch, + handle-numlock-value-in-etc-sysconfig-keyboard.patch, + insserv-generator.patch, + optionally-warn-if-nss-myhostname-is-called.patch, + remain_after_exit-initscript-heuristic-and-add-new-LSB-hea.patch, + restore-var-run-and-var-lock-bind-mount-if-they-aren-t-sym.patch, + service-flags-sysv-service-with-detected-pid-as-RemainAfte.patch. +- Update macros.systemd.upstream with latest upstream revision. + ------------------------------------------------------------------- Mon Jul 1 13:43:31 UTC 2013 - fcrozat@suse.com diff --git a/systemd.spec b/systemd.spec index 8bb25aa8..8c0271cf 100644 --- a/systemd.spec +++ b/systemd.spec @@ -23,7 +23,7 @@ Name: systemd Url: http://www.freedesktop.org/wiki/Software/systemd -Version: 204 +Version: 206 Release: 0 Summary: A System and Session Manager License: LGPL-2.1+ @@ -60,9 +60,9 @@ BuildRequires: pkgconfig(dbus-1) >= 1.3.2 %if ! 0%{?bootstrap} BuildRequires: libgcrypt-devel BuildRequires: pkgconfig(glib-2.0) >= 2.22.0 -BuildRequires: pkgconfig(libcryptsetup) >= 1.4.2 +BuildRequires: pkgconfig(libcryptsetup) >= 1.6.0 %endif -BuildRequires: pkgconfig(libkmod) >= 5 +BuildRequires: pkgconfig(libkmod) >= 14 BuildRequires: pkgconfig(liblzma) %if ! 0%{?bootstrap} BuildRequires: pkgconfig(libmicrohttpd) @@ -85,6 +85,7 @@ Conflicts: kiwi Requires: %{udevpkgname} >= 172 Requires: dbus-1 >= 1.4.0 Requires: kbd +Requires: kmod >= 14 Requires: pam-config >= 0.79-5 Requires: pwdutils Requires: systemd-presets-branding @@ -163,24 +164,9 @@ Patch24: handle-etc-HOSTNAME.patch Patch25: Forward-suspend-hibernate-calls-to-pm-utils.patch # PATCH-FIX-UPSTREAM rules-add-lid-switch-of-ARM-based-Chromebook-as-a-power-sw.patch rjschwei@suse.com -- add lid switch of ARM based Chromebook as a power switch to logind Patch38: rules-add-lid-switch-of-ARM-based-Chromebook-as-a-power-sw.patch -# PATCH-FIX-UPSTREAM systemctl-does-not-expand-u-so-revert-back-to-I.patch fcrozat@suse.com -- avoids expansion errors. -Patch42: systemctl-does-not-expand-u-so-revert-back-to-I.patch -# PATCH-FIX-UPSTREAM Start-ctrl-alt-del.target-irreversibly.patch fcrozat@suse.com -- ctrl-alt-del should be irreversible for reliability. -Patch43: Start-ctrl-alt-del.target-irreversibly.patch -# PATCH-FIX-UPSTREAM 0004-journald-DO-recalculate-the-ACL-mask-but-only-if-it-.patch crrodriguez@opensuse.org fix systemd-journald[347]: Failed to set ACL on ...user-1000.journal..Invalid argument -Patch44: 0004-journald-DO-recalculate-the-ACL-mask-but-only-if-it-.patch -# PATCH-FIX-UPSTREAM 0006-systemctl-core-allow-nuking-of-symlinks-to-removed-u.patch crrodriguez@opensuse.org ensure systemctl disable removes dangling symlinks -Patch45: 0006-systemctl-core-allow-nuking-of-symlinks-to-removed-u.patch -# PATCH-FIX-UPSTREAM 0008-service-don-t-report-alien-child-as-alive-when-it-s-.patch crrodriguez@opensuse.org do not report alien child as alive when it is dead. -Patch46: 0008-service-don-t-report-alien-child-as-alive-when-it-s-.patch -# PATCH-FIX-UPSTREAM 0001-journal-letting-interleaved-seqnums-go.patch crrodriguez@opensuse.org fix journal infinite loops -Patch47: 0001-journal-letting-interleaved-seqnums-go.patch -# PATCH-FIX-UPSTREAM 0002-journal-remember-last-direction-of-search-and-keep-o.patch crrodriguez@opensuse.org fix journal infinite loops -Patch48: 0002-journal-remember-last-direction-of-search-and-keep-o.patch -# PATCH-FIX-UPSTREAM 0160-mount-when-learning-about-the-root-mount-from-mounti.patch crrodriguez@opensuse.org another case where / is attempted to umount at shutdown -Patch49: 0160-mount-when-learning-about-the-root-mount-from-mounti.patch -# PATCH-FIX-UPSTREAM 0185-core-only-attempt-to-connect-to-a-session-bus-if-one.patch crrodriguez@opensuse.org only attempt to connect to a session bus if one likely exists. -Patch50: 0185-core-only-attempt-to-connect-to-a-session-bus-if-one.patch +# PATCH-FIX-OPENSUSE use-usr-sbin-sulogin-for-emergency-service.patch arvidjaar@gmail.com -- fix path to sulogin +Patch46: use-usr-sbin-sulogin-for-emergency-service.patch + # udev patches # PATCH-FIX-OPENSUSE 1001-re-enable-by_path-links-for-ata-devices.patch Patch1001: 1001-re-enable-by_path-links-for-ata-devices.patch @@ -188,8 +174,6 @@ Patch1001: 1001-re-enable-by_path-links-for-ata-devices.patch Patch1002: 1002-rules-create-by-id-scsi-links-for-ATA-devices.patch # PATCH-FIX-OPENSUSE 1003-udev-netlink-null-rules.patch Patch1003: 1003-udev-netlink-null-rules.patch -# PATCH-FIX-OPENSUSE 1004-fix-devname-prefix.patch fcrozat@suse.com -- fix modules.devname path, it isn't in /usr -Patch1004: 1004-fix-devname-prefix.patch # PATCH-FIX-OPENSUSE 1005-create-default-links-for-primary-cd_dvd-drive.patch Patch1005: 1005-create-default-links-for-primary-cd_dvd-drive.patch # PATCH-FIX-OPENSUSE 1006-udev-always-rename-network.patch @@ -365,6 +349,18 @@ is logged to /var/log/messages. Please check whether that's worth a bug report then. This package marks the installation to not use syslog but only the journal. +%package journal-gateway +Summary: Gateway for serving journal events over the network using HTTP +License: LGPL-2.1+ +Group: System/Base +Requires: %{name} = %{version}-%{release} +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd + +%description journal-gateway +systemd-journal-gatewayd serves journal events over the network using HTTP. + %endif %prep @@ -413,20 +409,12 @@ cp %{SOURCE7} m4/ %patch39 -p1 %patch40 -p1 %patch41 -p1 -%patch42 -p1 -%patch43 -p1 -%patch44 -p1 -%patch45 -p1 %patch46 -p1 -%patch47 -p1 -%patch48 -p1 -%patch49 -p1 -%patch50 -p1 + # udev patches %patch1001 -p1 %patch1002 -p1 %patch1003 -p1 -%patch1004 -p1 %patch1005 -p1 %patch1006 -p1 # don't apply when bootstrapping to not modify Makefile.am @@ -498,7 +486,7 @@ mkdir -p $RPM_BUILD_ROOT/%{_prefix}/lib/systemd/system/basic.target.wants ln -sf ../systemd-udev-root-symlink.service $RPM_BUILD_ROOT/%{_prefix}/lib/systemd/system/basic.target.wants rm -rf %{buildroot}%{_sysconfdir}/rpm find %{buildroot} -type f -name '*.la' -delete -mkdir -p %{buildroot}/{sbin,var/lib/systemd/sysv-convert,var/lib/systemd/migrated} %{buildroot}/usr/lib/systemd/{system-generators,user-generators,system-preset,user-preset,system/halt.target.wants,system/kexec.target.wants,system/poweroff.target.wants,system/reboot.target.wants} +mkdir -p %{buildroot}/{sbin,var/lib/systemd/sysv-convert,var/lib/systemd/migrated} %{buildroot}/usr/lib/systemd/{system-generators,user-generators,system-preset,user-preset,system/halt.target.wants,system/kexec.target.wants,system/poweroff.target.wants,system/reboot.target.wants,system/shutdown.target.wants} install -m755 %{S:3} -D %{buildroot}%{_sbindir}/systemd-sysv-convert ln -s ../usr/lib/systemd/systemd %{buildroot}/bin/systemd @@ -532,7 +520,7 @@ ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/startpreload.service ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/stoppreload.service ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/earlyxdm.service ln -s systemd-sysctl.service %{buildroot}/%{_prefix}/lib/systemd/system/sysctl.service -ln -s systemd-random-seed-load.service %{buildroot}/%{_prefix}/lib/systemd/system/random.service +ln -s systemd-random-seed.service %{buildroot}/%{_prefix}/lib/systemd/system/random.service # don't mount /tmp as tmpfs for now rm %{buildroot}/%{_prefix}/lib/systemd/system/local-fs.target.wants/tmp.mount @@ -591,7 +579,7 @@ mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/dbus.target.wants # create drop-in to prevent tty1 to be cleared (bnc#804158) mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/getty@tty1.service.d/ -echo << EOF > %{buildroot}%{_prefix}/lib/systemd/system/getty@tty1.service.d/noclear.conf +cat << EOF > %{buildroot}%{_prefix}/lib/systemd/system/getty@tty1.service.d/noclear.conf [Service] # ensure tty1 isn't cleared (bnc#804158) TTYVTDisallocate=no @@ -604,10 +592,11 @@ cat << EOF > %{buildroot}%{_prefix}/lib/tmpfiles.d/network.conf F /run/udev/rules.d/80-net-name-slot.rules 0644 - - - "#disable predictable network interface naming for now" EOF +# packaged in systemd-rpm-macros +rm -f %{buildroot}/%{_prefix}/lib/rpm/macros.d/macros.systemd + %pre getent group systemd-journal >/dev/null || groupadd -r systemd-journal || : -getent passwd systemd-journal-gateway >/dev/null || useradd -r -l -g systemd-journal-gateway -d /var/log/journal -s /usr/sbin/nologin -c "Journal Gateway" systemd-journal-gateway >/dev/null 2>&1 || : -getent group systemd-journal-gateway >/dev/null || groupadd -r systemd-journal-gateway || : exit 0 %post @@ -756,6 +745,21 @@ fi %postun -n nss-myhostname -p /sbin/ldconfig +%pre journal-gateway +getent passwd systemd-journal-gateway >/dev/null || useradd -r -l -g systemd-journal-gateway -d /var/log/journal -s /usr/sbin/nologin -c "Journal Gateway" systemd-journal-gateway >/dev/null 2>&1 || : +getent group systemd-journal-gateway >/dev/null || groupadd -r systemd-journal-gateway || : +%service_add_pre systemd-journal-gatewayd.socket systemd-journal-gatewayd.service +exit 0 + +%post journal-gateway +%service_add_post systemd-journal-gatewayd.socket systemd-journal-gatewayd.service + +%preun journal-gateway +%service_del_preun systemd-journal-gatewayd.socket systemd-journal-gatewayd.service + +%postun journal-gateway +%service_del_postun systemd-journal-gatewayd.socket systemd-journal-gatewayd.service + %endif %files @@ -767,11 +771,13 @@ fi %{_bindir}/kernel-install %{_bindir}/hostnamectl %{_bindir}/localectl +%{_bindir}/machinectl %{_bindir}/systemctl %{_bindir}/systemd-analyze %{_bindir}/systemd-coredumpctl %{_bindir}/systemd-delta %{_bindir}/systemd-notify +%{_bindir}/systemd-run %{_bindir}/systemd-journalctl %{_bindir}/journalctl %{_bindir}/systemd-ask-password @@ -805,8 +811,10 @@ fi %exclude %{_prefix}/lib/systemd/system/systemd-udev-root-symlink.service %exclude %{_prefix}/lib/systemd/system/*.target.wants/systemd-udev*.* %exclude %{_prefix}/lib/systemd/system/basic.target.wants/systemd-udev-root-symlink.service +%exclude %{_prefix}/lib/systemd/system/systemd-journal-gatewayd.* %{_prefix}/lib/systemd/system/*.automount %{_prefix}/lib/systemd/system/*.service +%{_prefix}/lib/systemd/system/*.slice %{_prefix}/lib/systemd/system/*.target %{_prefix}/lib/systemd/system/*.mount %{_prefix}/lib/systemd/system/*.timer @@ -816,6 +824,7 @@ fi %{_prefix}/lib/systemd/user/*.target %{_prefix}/lib/systemd/user/*.service %exclude %{_prefix}/lib/systemd/systemd-udevd +%exclude %{_prefix}/lib/systemd/systemd-journal-gatewayd %{_prefix}/lib/systemd/systemd-* %{_prefix}/lib/systemd/systemd %dir %{_prefix}/lib/systemd/catalog @@ -862,7 +871,7 @@ fi %dir %{_sysconfdir}/systemd/system %dir %{_sysconfdir}/systemd/user %dir %{_sysconfdir}/xdg/systemd -%dir %{_sysconfdir}/xdg/systemd/user +%{_sysconfdir}/xdg/systemd/user %config(noreplace) %{_sysconfdir}/systemd/bootchart.conf %config(noreplace) %{_sysconfdir}/systemd/system.conf %config(noreplace) %{_sysconfdir}/systemd/logind.conf @@ -870,6 +879,7 @@ fi %config(noreplace) %{_sysconfdir}/systemd/user.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.machine1.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 @@ -883,6 +893,7 @@ fi %{_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.machine1.service %{_datadir}/dbus-1/system-services/org.freedesktop.timedate1.service %dir %{_datadir}/polkit-1 %dir %{_datadir}/polkit-1/actions @@ -891,6 +902,7 @@ fi %{_datadir}/polkit-1/actions/org.freedesktop.locale1.policy %{_datadir}/polkit-1/actions/org.freedesktop.timedate1.policy %{_datadir}/polkit-1/actions/org.freedesktop.login1.policy +%exclude %{_datadir}/systemd/gatewayd %{_datadir}/systemd %if ! 0%{?bootstrap} @@ -903,7 +915,7 @@ fi %exclude %{_mandir}/man8/telinit.8* %exclude %{_mandir}/man8/runlevel.8* %exclude %{_mandir}/man*/*udev*.[0-9]* - +%exclude %{_mandir}/man8/systemd-journal-gatewayd.* %{_mandir}/man1/*.1* %{_mandir}/man3/*.3* %{_mandir}/man5/*.5* @@ -985,15 +997,10 @@ fi %{_prefix}/lib/udev/ata_id %{_prefix}/lib/udev/cdrom_id %{_prefix}/lib/udev/collect -%{_prefix}/lib/udev/findkeyboards -%{_prefix}/lib/udev/keymap %{_prefix}/lib/udev/mtd_probe %{_prefix}/lib/udev/scsi_id %{_prefix}/lib/udev/v4l_id %{_prefix}/lib/udev/write_dev_root_rule -%dir %{_prefix}/lib/udev/keymaps -%{_prefix}/lib/udev/keymaps/* -%{_prefix}/lib/udev/keyboard-force-release.sh %dir %{_prefix}/lib/udev/rules.d/ %exclude %{_prefix}/lib/udev/rules.d/70-uaccess.rules %exclude %{_prefix}/lib/udev/rules.d/71-seat.rules @@ -1072,6 +1079,12 @@ fi %{_sbindir}/nss-myhostname-config /%{_lib}/*nss_myhostname* +%files journal-gateway +%defattr(-, root, root) +%{_prefix}/lib/systemd/system/systemd-journal-gatewayd.* +%{_prefix}/lib/systemd/systemd-journal-gatewayd +%{_mandir}/man8/systemd-journal-gatewayd.* +%{_datadir}/systemd/gatewayd %endif %changelog diff --git a/timedate-add-support-for-openSUSE-version-of-etc-sysconfig.patch b/timedate-add-support-for-openSUSE-version-of-etc-sysconfig.patch index 8a67df99..01f96bde 100644 --- a/timedate-add-support-for-openSUSE-version-of-etc-sysconfig.patch +++ b/timedate-add-support-for-openSUSE-version-of-etc-sysconfig.patch @@ -6,10 +6,8 @@ Subject: timedate: add support for openSUSE version of /etc/sysconfig/clock src/timedate/timedated.c | 7 +++++++ 1 file changed, 7 insertions(+) -diff --git a/src/timedate/timedated.c b/src/timedate/timedated.c -index cdb6e5b..7246452 100644 ---- a/src/timedate/timedated.c -+++ b/src/timedate/timedated.c +--- systemd-206.orig/src/timedate/timedated.c ++++ systemd-206/src/timedate/timedated.c @@ -182,6 +182,13 @@ static int read_data(void) { goto have_timezone; } diff --git a/use-usr-sbin-sulogin-for-emergency-service.patch b/use-usr-sbin-sulogin-for-emergency-service.patch new file mode 100644 index 00000000..2c932c6c --- /dev/null +++ b/use-usr-sbin-sulogin-for-emergency-service.patch @@ -0,0 +1,27 @@ +From: Andrey Borzenkov +Subject: use /usr/sbin/sulogin in emergency service + +In current Factory sulogin is in /usr/sbin which makes it impossible +to enter emergency service. +--- systemd-206.orig/units/emergency.service ++++ systemd-206/units/emergency.service +@@ -17,7 +17,7 @@ Environment=HOME=/root + WorkingDirectory=/root + ExecStartPre=-/bin/plymouth quit + ExecStartPre=-/bin/echo -e 'Welcome to emergency mode! After logging in, type "journalctl -xb" to view\\nsystem logs, "systemctl reboot" to reboot, "systemctl default" to try again\\nto boot into default mode.' +-ExecStart=-/sbin/sulogin ++ExecStart=-/usr/sbin/sulogin + ExecStopPost=/usr/bin/systemctl --fail --no-block default + Type=idle + StandardInput=tty-force +--- systemd-206.orig/units/emergency.service.in ++++ systemd-206/units/emergency.service.in +@@ -17,7 +17,7 @@ Environment=HOME=/root + WorkingDirectory=/root + ExecStartPre=-/bin/plymouth quit + ExecStartPre=-/bin/echo -e 'Welcome to emergency mode! After logging in, type "journalctl -xb" to view\\nsystem logs, "systemctl reboot" to reboot, "systemctl default" to try again\\nto boot into default mode.' +-ExecStart=-/sbin/sulogin ++ExecStart=-/usr/sbin/sulogin + ExecStopPost=@SYSTEMCTL@ --fail --no-block default + Type=idle + StandardInput=tty-force