$ git diff --patch-with-stat --summary e2809af24d86cd7994ecfcc9aa944507e4065936..94248832fe2c1d9774d428b80b6d5228ebf253a1
.abf.yml | 2 +-
0001-journal-raise-compression-threshold.patch | 25 ++
0002-journal-clearout-drop-kmsg.patch | 34 ++
0003-core-use-mmap-to-load-files.patch | 25 ++
0005-journal-flush-var-kmsg-after-starting.patch | 31 ++
...turn-malloc-memory-reserves-when-main-loo.patch | 45 +++
0024-more-udev-children-workers.patch | 25 ++
0031-DHCP-retry-faster.patch | 25 ++
0033-Remove-libm-memory-overhead.patch | 27 ++
0038-Compile-udev-with-O3.patch | 32 ++
...probe-pci-devices-on-coldplug-for-storage.patch | 30 +-
systemd-230-add-userpreset-rpm-macro.patch | 11 -
systemd.rpmlintrc | 9 +
systemd.spec | 401 ++++++++++++++++-----
14 files changed, 595 insertions(+), 127 deletions(-)
create mode 100644 0001-journal-raise-compression-threshold.patch
create mode 100644 0002-journal-clearout-drop-kmsg.patch
create mode 100644 0003-core-use-mmap-to-load-files.patch
create mode 100644 0005-journal-flush-var-kmsg-after-starting.patch
create mode 100644 0010-sd-event-return-malloc-memory-reserves-when-main-loo.patch
create mode 100644 0024-more-udev-children-workers.patch
create mode 100644 0031-DHCP-retry-faster.patch
create mode 100644 0033-Remove-libm-memory-overhead.patch
create mode 100644 0038-Compile-udev-with-O3.patch
delete mode 100644 systemd-230-add-userpreset-rpm-macro.patch
diff --git a/.abf.yml b/.abf.yml
index 0bce55b..56511c6 100644
--- a/.abf.yml
+++ b/.abf.yml
@@ -1,2 +1,2 @@
sources:
- systemd-234.tar.gz: a0ff860f21fc71d3628ad187150c16369db1ff4f
+ systemd-235.tar.gz: bda1bd1cb09bba798c3e125fb902f6c9e75308c4
diff --git a/0001-journal-raise-compression-threshold.patch b/0001-journal-raise-compression-threshold.patch
new file mode 100644
index 0000000..ce3efd6
--- /dev/null
+++ b/0001-journal-raise-compression-threshold.patch
@@ -0,0 +1,25 @@
+From 499add1098733d5b45d46a56177e01792904bc80 Mon Sep 17 00:00:00 2001
+From: Dimitri John Ledkov <dimitri.j.ledkov@intel.com>
+Date: Tue, 23 Jun 2015 11:23:57 +0100
+Subject: [PATCH 01/39] journal: raise compression threshold.
+
+---
+ src/journal/journal-file.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/journal/journal-file.c b/src/journal/journal-file.c
+index 4ff38de2e..3769ebe0d 100644
+--- a/src/journal/journal-file.c
++++ b/src/journal/journal-file.c
+@@ -48,7 +48,7 @@
+ #define DEFAULT_DATA_HASH_TABLE_SIZE (2047ULL*sizeof(HashItem))
+ #define DEFAULT_FIELD_HASH_TABLE_SIZE (333ULL*sizeof(HashItem))
+
+-#define COMPRESSION_SIZE_THRESHOLD (512ULL)
++#define COMPRESSION_SIZE_THRESHOLD (8192ULL)
+
+ /* This is the minimum journal file size */
+ #define JOURNAL_FILE_SIZE_MIN (512ULL*1024ULL) /* 512 KiB */
+--
+2.13.3
+
diff --git a/0002-journal-clearout-drop-kmsg.patch b/0002-journal-clearout-drop-kmsg.patch
new file mode 100644
index 0000000..c918bc8
--- /dev/null
+++ b/0002-journal-clearout-drop-kmsg.patch
@@ -0,0 +1,34 @@
+From 54ad68e9add1762c7e80f0759150350eaa066005 Mon Sep 17 00:00:00 2001
+From: Dimitri John Ledkov <dimitri.j.ledkov@intel.com>
+Date: Tue, 23 Jun 2015 11:25:41 +0100
+Subject: [PATCH 02/39] journal: clearout & drop kmsg.
+
+---
+ src/journal/journald-kmsg.c | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+diff -Naur systemd-235/src/journal/journald-kmsg.c systemd-235.tpg/src/journal/journald-kmsg.c
+--- systemd-235/src/journal/journald-kmsg.c 2017-10-06 08:18:04.000000000 +0000
++++ systemd-235.tpg/src/journal/journald-kmsg.c 2017-10-23 16:06:34.231634116 +0000
+@@ -389,6 +389,7 @@
+ int server_open_dev_kmsg(Server *s) {
+ mode_t mode;
+ int r;
++ char buffer[40960];
+
+ assert(s);
+
+@@ -407,6 +408,14 @@
+ if (!s->read_kmsg)
+ return 0;
+
++ /* clear out /dev/kmsg, we don't want all its messages */
++ while (1) {
++ int ret;
++ ret = read(s->dev_kmsg_fd, buffer, 40960);
++ if (ret <= 0)
++ break;
++ }
++
+ r = sd_event_add_io(s->event, &s->dev_kmsg_event_source, s->dev_kmsg_fd, EPOLLIN, dispatch_dev_kmsg, s);
+ if (r < 0) {
+
diff --git a/0003-core-use-mmap-to-load-files.patch b/0003-core-use-mmap-to-load-files.patch
new file mode 100644
index 0000000..718d673
--- /dev/null
+++ b/0003-core-use-mmap-to-load-files.patch
@@ -0,0 +1,25 @@
+From 4058eb4f688d02b5ed3ff3d4297042c7f0b1c786 Mon Sep 17 00:00:00 2001
+From: Dimitri John Ledkov <dimitri.j.ledkov@intel.com>
+Date: Tue, 23 Jun 2015 11:26:11 +0100
+Subject: [PATCH 03/39] core: use mmap to load files.
+
+---
+ src/core/load-fragment.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/core/load-fragment.c b/src/core/load-fragment.c
+index 9d5c39b3d..a770fdb3f 100644
+--- a/src/core/load-fragment.c
++++ b/src/core/load-fragment.c
+@@ -4237,7 +4237,7 @@ static int open_follow(char **filename, FILE **_f, Set *names, char **_final) {
+ *filename = target;
+ }
+
+- f = fdopen(fd, "re");
++ f = fdopen(fd, "rem");
+ if (!f) {
+ safe_close(fd);
+ return -errno;
+--
+2.13.3
+
diff --git a/0005-journal-flush-var-kmsg-after-starting.patch b/0005-journal-flush-var-kmsg-after-starting.patch
new file mode 100644
index 0000000..99ed222
--- /dev/null
+++ b/0005-journal-flush-var-kmsg-after-starting.patch
@@ -0,0 +1,31 @@
+From ad97082cec9b5aee3f1224c172a6131d1a528389 Mon Sep 17 00:00:00 2001
+From: Dimitri John Ledkov <dimitri.j.ledkov@intel.com>
+Date: Tue, 23 Jun 2015 11:38:31 +0100
+Subject: [PATCH 05/39] journal: flush var/kmsg after starting.
+
+---
+ src/journal/journald.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff -Naur systemd-235/src/journal/journald.c systemd-235.tpg/src/journal/journald.c
+--- systemd-235/src/journal/journald.c 2017-10-06 08:18:04.000000000 +0000
++++ systemd-235.tpg/src/journal/journald.c 2017-10-23 16:10:17.643695795 +0000
+@@ -52,8 +52,6 @@
+ goto finish;
+
+ server_vacuum(&server, false);
+- server_flush_to_var(&server, true);
+- server_flush_dev_kmsg(&server);
+
+ log_debug("systemd-journald running as pid "PID_FMT, getpid_cached());
+ server_driver_message(&server,
+@@ -61,6 +59,9 @@
+ LOG_MESSAGE("Journal started"),
+ NULL);
+
++ server_flush_to_var(&server, true);
++ server_flush_dev_kmsg(&server);
++
+ /* Make sure to send the usage message *after* flushing the
+ * journal so entries from the runtime journals are ordered
+ * before this message. See #4190 for some details. */
diff --git a/0010-sd-event-return-malloc-memory-reserves-when-main-loo.patch b/0010-sd-event-return-malloc-memory-reserves-when-main-loo.patch
new file mode 100644
index 0000000..7c7b159
--- /dev/null
+++ b/0010-sd-event-return-malloc-memory-reserves-when-main-loo.patch
@@ -0,0 +1,45 @@
+From 44afc6c08994532386d6eb203632185e386abddc Mon Sep 17 00:00:00 2001
+From: Dimitri John Ledkov <dimitri.j.ledkov@intel.com>
+Date: Tue, 23 Jun 2015 11:47:18 +0100
+Subject: [PATCH 10/39] sd-event: return malloc() memory reserves when main
+ loop is idle.
+
+---
+ src/libsystemd/sd-event/sd-event.c | 13 +++++++++++--
+ 1 file changed, 11 insertions(+), 2 deletions(-)
+
+diff --git a/src/libsystemd/sd-event/sd-event.c b/src/libsystemd/sd-event/sd-event.c
+index b4686d006..9b2bb677d 100644
+--- a/src/libsystemd/sd-event/sd-event.c
++++ b/src/libsystemd/sd-event/sd-event.c
+@@ -20,6 +20,7 @@
+ #include <sys/epoll.h>
+ #include <sys/timerfd.h>
+ #include <sys/wait.h>
++#include <malloc.h>
+
+ #include "sd-daemon.h"
+ #include "sd-event.h"
+@@ -2678,9 +2679,17 @@ _public_ int sd_event_run(sd_event *e, uint64_t timeout) {
+ }
+
+ r = sd_event_prepare(e);
+- if (r == 0)
+- /* There was nothing? Then wait... */
++ if (r == 0) {
++ /* There was nothing? Then wait...
++ *
++ * ... but since there is no event pending, likely
++ * we'll be idle for a long time. This is a good time
++ * to return any malloc() memory reserves to the
++ * operating system.
++ */
++ malloc_trim(0);
+ r = sd_event_wait(e, timeout);
++ }
+
+ if (e->profile_delays)
+ e->last_run = now(CLOCK_MONOTONIC);
+--
+2.13.3
+
diff --git a/0024-more-udev-children-workers.patch b/0024-more-udev-children-workers.patch
new file mode 100644
index 0000000..2287061
--- /dev/null
+++ b/0024-more-udev-children-workers.patch
@@ -0,0 +1,25 @@
+From ee960a27d8629d34c8e730dc28e95d0144d9a37c Mon Sep 17 00:00:00 2001
+From: Arjan van de Ven <arjan@linux.intel.com>
+Date: Sat, 18 Jun 2016 17:33:33 +0000
+Subject: [PATCH 24/39] more udev children workers
+
+---
+ units/systemd-udevd.service.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/units/systemd-udevd.service.in b/units/systemd-udevd.service.in
+index fc037b5a5..6806d5b41 100644
+--- a/units/systemd-udevd.service.in
++++ b/units/systemd-udevd.service.in
+@@ -20,7 +20,7 @@ OOMScoreAdjust=-1000
+ Sockets=systemd-udevd-control.socket systemd-udevd-kernel.socket
+ Restart=always
+ RestartSec=0
+-ExecStart=@rootlibexecdir@/systemd-udevd
++ExecStart=@rootlibexecdir@/systemd-udevd --children-max=16
+ KillMode=mixed
+ WatchdogSec=3min
+ TasksMax=infinity
+--
+2.13.3
+
diff --git a/0031-DHCP-retry-faster.patch b/0031-DHCP-retry-faster.patch
new file mode 100644
index 0000000..416cc7f
--- /dev/null
+++ b/0031-DHCP-retry-faster.patch
@@ -0,0 +1,25 @@
+From acca75969dc553bea6f97bd02b2dc8b0248cc800 Mon Sep 17 00:00:00 2001
+From: Auke Kok <auke-jan.h.kok@intel.com>
+Date: Fri, 31 Mar 2017 10:16:21 -0700
+Subject: [PATCH 31/39] DHCP: retry faster.
+
+---
+ src/libsystemd-network/sd-dhcp-client.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/libsystemd-network/sd-dhcp-client.c b/src/libsystemd-network/sd-dhcp-client.c
+index e20d339bd..e65c90e77 100644
+--- a/src/libsystemd-network/sd-dhcp-client.c
++++ b/src/libsystemd-network/sd-dhcp-client.c
+@@ -943,7 +943,7 @@ static int client_timeout_resend(
+ if (client->attempt < 64)
+ client->attempt *= 2;
+
+- next_timeout = time_now + (client->attempt - 1) * USEC_PER_SEC;
++ next_timeout = time_now + (client->attempt - 1) * USEC_PER_SEC / 4;
+
+ break;
+
+--
+2.13.3
+
diff --git a/0033-Remove-libm-memory-overhead.patch b/0033-Remove-libm-memory-overhead.patch
new file mode 100644
index 0000000..9bcad0f
--- /dev/null
+++ b/0033-Remove-libm-memory-overhead.patch
@@ -0,0 +1,27 @@
+From 386d0c63f7d71867f94d9a5673ebea0cf163985d Mon Sep 17 00:00:00 2001
+From: Auke Kok <auke-jan.h.kok@intel.com>
+Date: Fri, 14 Jul 2017 11:31:38 -0700
+Subject: [PATCH 33/39] Remove libm memory overhead.
+
+timesyncd pulls in libm, only for one single exp2() in a debug log
+statement save the memory by not logging this little bit of info.
+---
+ src/timesync/timesyncd-manager.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/timesync/timesyncd-manager.c b/src/timesync/timesyncd-manager.c
+index a24c821bd..35e579154 100644
+--- a/src/timesync/timesyncd-manager.c
++++ b/src/timesync/timesyncd-manager.c
+@@ -652,7 +652,7 @@ static int manager_receive_response(sd_event_source *source, int fd, uint32_t re
+ NTP_FIELD_VERSION(ntpmsg.field),
+ NTP_FIELD_MODE(ntpmsg.field),
+ ntpmsg.stratum,
+- exp2(ntpmsg.precision), ntpmsg.precision,
++ 0.0, ntpmsg.precision,
+ root_distance,
+ ntpmsg.stratum == 1 ? ntpmsg.refid : "n/a",
+ origin - OFFSET_1900_1970,
+--
+2.13.3
+
diff --git a/0038-Compile-udev-with-O3.patch b/0038-Compile-udev-with-O3.patch
new file mode 100644
index 0000000..9e1c62f
--- /dev/null
+++ b/0038-Compile-udev-with-O3.patch
@@ -0,0 +1,32 @@
+diff -Naur systemd-235/meson.build systemd-235.tpg/meson.build
+--- systemd-235/meson.build 2017-10-06 08:18:04.028244528 +0000
++++ systemd-235.tpg/meson.build 2017-10-23 16:28:06.159547684 +0000
+@@ -2137,7 +2137,7 @@
+ exe = executable('systemd-udevd',
+ systemd_udevd_sources,
+ include_directories : includes,
+- c_args : ['-DLOG_REALM=LOG_REALM_UDEV'],
++ c_args : ['-DLOG_REALM=LOG_REALM_UDEV', '-O3'],
+ link_with : [libudev_core,
+ libsystemd_network,
+ libudev_internal],
+@@ -2154,6 +2154,7 @@
+ exe = executable('udevadm',
+ udevadm_sources,
+ include_directories : includes,
++ c_args : ['-O3'],
+ link_with : [libudev_core,
+ libsystemd_network,
+ libudev_internal],
+diff -Naur systemd-235/src/udev/meson.build systemd-235.tpg/src/udev/meson.build
+--- systemd-235/src/udev/meson.build 2017-10-06 08:18:04.028244528 +0000
++++ systemd-235.tpg/src/udev/meson.build 2017-10-23 16:29:03.765552545 +0000
+@@ -131,7 +131,7 @@
+ executable(prog[0].split('/')[0],
+ prog,
+ include_directories : includes,
+- c_args : ['-DLOG_REALM=LOG_REALM_UDEV'],
++ c_args : ['-DLOG_REALM=LOG_REALM_UDEV', '-O3'],
+ link_with : [libudev_internal],
+ install_rpath : udev_rpath,
+ install : true,
diff --git a/0503-Disable-modprobe-pci-devices-on-coldplug-for-storage.patch b/0503-Disable-modprobe-pci-devices-on-coldplug-for-storage.patch
index aded989..1856d27 100644
--- a/0503-Disable-modprobe-pci-devices-on-coldplug-for-storage.patch
+++ b/0503-Disable-modprobe-pci-devices-on-coldplug-for-storage.patch
@@ -1,22 +1,10 @@
-From b5efb08c5bd0e8d33ecb1bd989f558a8d704a150 Mon Sep 17 00:00:00 2001
-From: Frederic Crozat <fcrozat@mandriva.com>
-Date: Sun, 1 Jul 2012 17:44:41 +0100
-Subject: [PATCH 503/511] Disable modprobe pci devices on coldplug for storage
- and display
-
-Signed-off-by: Frederic Crozat <fcrozat@mandriva.com>
----
- rules/80-drivers.rules | 10 ++++++++++
- 1 file changed, 10 insertions(+)
-
-diff --git a/rules/80-drivers.rules b/rules/80-drivers.rules
-index 8551f47..60c976a 100644
---- a/rules/80-drivers.rules
-+++ b/rules/80-drivers.rules
-@@ -2,6 +2,16 @@
-
- ACTION=="remove", GOTO="drivers_end"
+diff -Naur systemd-235/rules/80-drivers.rules systemd-235.tpg/rules/80-drivers.rules
+--- systemd-235/rules/80-drivers.rules 2017-10-06 08:18:04.033532976 +0000
++++ systemd-235.tpg/rules/80-drivers.rules 2017-10-15 00:10:20.183381729 +0000
+@@ -1,6 +1,15 @@
+ # do not edit this file, it will be overwritten on update
+ ACTION!="add", GOTO="drivers_end"
+# modprobe pci devices on cold plug except for:
+# PCI_BASE_CLASS_STORAGE 0x01
+SUBSYSTEM=="pci", ENV{STARTUP}=="1", ATTR{class}=="0x01*", GOTO="drivers_end"
@@ -26,10 +14,6 @@ index 8551f47..60c976a 100644
+SUBSYSTEM=="pci", ATTR{class}=="0x03*", DRIVER!="?*", TEST=="/initrd", RUN+="/sbin/display_driver_helper --load $env{MODALIAS}", GOTO="drivers_end"
+# - skip loading if in initrd (i.e. no /initrd) and nokmsboot or failsafe is specified
+SUBSYSTEM=="pci", ATTR{class}=="0x03*", DRIVER!="?*", PROGRAM=="/bin/grep -qFw -e nokmsboot -e failsafe /proc/cmdline", GOTO="drivers_end"
-+
+
ENV{MODALIAS}=="?*", RUN{builtin}+="kmod load $env{MODALIAS}"
SUBSYSTEM=="tifm", ENV{TIFM_CARD_TYPE}=="SD", RUN{builtin}+="kmod load tifm_sd"
- SUBSYSTEM=="tifm", ENV{TIFM_CARD_TYPE}=="MS", RUN{builtin}+="kmod load tifm_ms"
---
-1.9.2
-
diff --git a/systemd-230-add-userpreset-rpm-macro.patch b/systemd-230-add-userpreset-rpm-macro.patch
deleted file mode 100644
index 8c523fa..0000000
--- a/systemd-230-add-userpreset-rpm-macro.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Naur systemd-230/src/core/macros.systemd.in systemd-230.tpg/src/core/macros.systemd.in
---- systemd-230/src/core/macros.systemd.in 2016-05-21 22:31:29.000000000 +0000
-+++ systemd-230.tpg/src/core/macros.systemd.in 2016-06-07 16:59:51.803511156 +0000
-@@ -21,6 +21,7 @@
-
- %_unitdir @systemunitdir@
- %_userunitdir @userunitdir@
-+%_userpresetdir %{_prefix}/lib/systemd/user-preset
- %_presetdir @systempresetdir@
- %_udevhwdbdir @udevhwdbdir@
- %_udevrulesdir @udevrulesdir@
diff --git a/systemd.rpmlintrc b/systemd.rpmlintrc
index 96583a1..85e2580 100644
--- a/systemd.rpmlintrc
+++ b/systemd.rpmlintrc
@@ -2,3 +2,12 @@ addFilter("E: hardcoded-library-path")
addFilter("E: init-script-non-executable")
addFilter("E: no-chkconfig-line")
addFilter("E: init-script-without-chkconfig-preun")
+addFilter("E: useless-provides")
+addFilter("E: subsys-not-used")
+addFilter("E: postin-without-ldconfig")
+addFilter("E: postun-without-ldconfig")
+addFilter("E: postin-without-chkconfig")
+addFilter("E: non-standard-dir-perm")
+addFilter("E: non-ghost-file")
+addFilter("E: non-executable-script")
+addFilter("E: no-dependency-on")
diff --git a/systemd.spec b/systemd.spec
index f0980e3..963912a 100644
--- a/systemd.spec
+++ b/systemd.spec
@@ -12,6 +12,9 @@
%define libsystemd_devel %mklibname %{name} -d
%define libnss_myhostname %mklibname nss_myhostname %{libnss_major}
+%define libnss_mymachines %mklibname nss_mymachines %{libnss_major}
+%define libnss_resolve %mklibname nss_resolve %{libnss_major}
+%define libnss_systemd %mklibname nss_systemd %{libnss_major}
%define udev_major 1
%define libudev %mklibname udev %{udev_major}
@@ -24,8 +27,8 @@
Summary: A System and Session Manager
Name: systemd
-Version: 234
-Release: 2
+Version: 235
+Release: 5
License: GPLv2+
Group: System/Configuration/Boot and Init
Url: http://www.freedesktop.org/wiki/Software/systemd
@@ -57,8 +60,6 @@ Source22: efi-omv.conf
Source23: systemd-udev-trigger-no-reload.conf
### OMV patches###
-# (tpg) add rpm macro to easy installation of user presets
-Patch0: systemd-230-add-userpreset-rpm-macro.patch
# Without this, build fails on aarch64
# (tpg) let's disable it for now
#Patch1: systemd-233-format-nonliteral-warnings.patch
@@ -74,10 +75,19 @@ Patch15: 1005-create-default-links-for-primary-cd_dvd-drive.patch
Patch17: 0515-Add-path-to-locale-search.patch
Patch18: 0516-udev-silence-version-print.patch
-BuildRequires: autoconf
-BuildRequires: automake
-BuildRequires: m4
-BuildRequires: libtool
+# (tpg) ClearLinux patches
+Patch100: 0001-journal-raise-compression-threshold.patch
+Patch101: 0002-journal-clearout-drop-kmsg.patch
+Patch102: 0003-core-use-mmap-to-load-files.patch
+Patch103: 0005-journal-flush-var-kmsg-after-starting.patch
+Patch104: 0010-sd-event-return-malloc-memory-reserves-when-main-loo.patch
+Patch105: 0024-more-udev-children-workers.patch
+Patch106: 0031-DHCP-retry-faster.patch
+Patch107: 0033-Remove-libm-memory-overhead.patch
+Patch108: 0038-Compile-udev-with-O3.patch
+
+BuildRequires: meson
+BuildRequires: quota
BuildRequires: acl-devel
BuildRequires: audit-devel
BuildRequires: docbook-style-xsl
@@ -96,6 +106,7 @@ BuildRequires: pkgconfig(glib-2.0)
BuildRequires: gtk-doc
%if !%{with bootstrap}
BuildRequires: pkgconfig(libcryptsetup)
+BuildRequires: pkgconfig(python)
%endif
BuildRequires: pkgconfig(libkmod) >= 5
BuildRequires: pkgconfig(liblzma)
@@ -164,6 +175,8 @@ Provides: should-restart = system
# (tpg) just to be sure we install this libraries
Requires: %{libsystemd} = %{EVRD}
Requires: %{libnss_myhostname} = %{EVRD}
+Requires: %{libnss_resolve} = %{EVRD}
+Requires: %{libnss_systemd} = %{EVRD}
Suggests: %{name}-bash-completion = %{EVRD}
Suggests: %{name}-zsh-completion = %{EVRD}
@@ -210,8 +223,26 @@ state, maintains mount and automount points and implements an
elaborate transactional dependency-based service control logic. It can
work as a drop-in replacement for sysvinit.
+%package container
+Summary: Tools for containers and VMs
+Group: System/Base
+Requires: %{name} = %{EVRD}
+Requires(post): systemd
+Requires(preun): systemd
+Requires(postun): systemd
+Requires: %{libnss_mymachines} = %{EVRD}
+Conflicts: %{name} < 235-1
+Suggests: %{name}-bash-completion = %{EVRD}
+Suggests: %{name}-zsh-completion = %{EVRD}
+
+%description container
+Systemd tools to spawn and manage containers and virtual machines.
+This package contains systemd-nspawn, machinectl, systemd-machined,
+and systemd-importd.
+
%package journal-gateway
Summary: Gateway for serving journal events over the network using HTTP
+Group: System/Configuration/Boot and Init
Requires: %{name} = %{EVRD}
Requires(pre): rpm-helper
Requires(post): rpm-helper
@@ -280,6 +311,59 @@ functionality of the GNU C Library (glibc) providing host name
resolution for the locally configured system hostname as returned by
gethostname(2).
+%package -n %{libnss_mymachines}
+Summary: Provide hostname resolution for local container instances
+Group: System/Libraries
+Provides: libnss_mymachines = %{EVRD}
+Provides: nss_mymachines = %{EVRD}
+Conflicts: %{libnss_myhostname} < 235
+Requires: systemd-container = %{EVRD}
+Requires(post,preun): /bin/sh
+Requires(post,preun): sed
+Requires(post,preun): glibc
+
+%description -n %{libnss_mymachines}
+nss-mymachines is a plug-in module for the GNU Name Service Switch (NSS)
+functionality of the GNU C Library (glibc), providing hostname resolution
+for the names of containers running locally that are registered with
+systemd-machined.service(8). The container names are resolved to the IP
+addresses of the specific container, ordered by their scope.
+This functionality only applies to containers using network namespacing.
+
+%package -n %{libnss_resolve}
+Summary: Provide hostname resolution via systemd-resolved.service
+Group: System/Libraries
+Provides: libnss_resolve = %{EVRD}
+Provides: nss_resolve= %{EVRD}
+Conflicts: %{libnss_myhostname} < 235
+Requires(post,preun): /bin/sh
+Requires(post,preun): sed
+Requires(post,preun): glibc
+
+%description -n %{libnss_resolve}
+nss-resolve is a plug-in module for the GNU Name Service Switch (NSS)
+functionality of the GNU C Library (glibc) enabling it to resolve host
+names via the systemd-resolved(8) local network name resolution service.
+It replaces the nss-dns plug-in module that traditionally resolves
+hostnames via DNS.
+
+%package -n %{libnss_systemd}
+Summary: Provide UNIX user and group name resolution for dynamic users and groups
+Group: System/Libraries
+Provides: libnss_systemd = %{EVRD}
+Provides: nss_systemd = %{EVRD}
+Conflicts: %{libnss_myhostname} < 235
+Requires(post,preun): /bin/sh
+Requires(post,preun): sed
+Requires(post,preun): glibc
+
+%description -n %{libnss_resolve}
+nss-systemd is a plug-in module for the GNU Name Service Switch (NSS)
+functionality of the GNU C Library (glibc), providing UNIX user and
+group name resolution for dynamic users and groups allocated through
+the DynamicUser= option in systemd unit files. See systemd.exec(5)
+for details on this option.
+
%package -n %{libudev}
Summary: Library for udev
Group: System/Libraries
@@ -309,31 +393,26 @@ This package contains documentation of udev.
%package zsh-completion
Summary: zsh completions
+Group: Shells
Requires: zsh
%description zsh-completion
-This package contains zsh completion
+This package contains zsh completion.
%package bash-completion
Summary: bash completions
+Group: Shells
Requires: bash
%description bash-completion
-This package contains bash completion
+This package contains bash completion.
%prep
%setup -q
%apply_patches
-%ifarch %{ix86}
-# (tpg) remove -flto as on i586 it hangs boot
-sed -i -e "s/-flto\]/-fno-lto\]/g" configure*
-%endif
-
-./autogen.sh
-
%build
-%ifarch %{ix86} x86_64
+%ifarch %{ix86}
# (tpg) since LLVM/clang-3.8.0 systemd hangs system on i586
# (bero) since 3.9.0, also hangs system on x86_64
export CC=gcc
@@ -341,45 +420,75 @@ export CXX=g++
%endif
%serverbuild_hardened
-%configure \
- --with-rootprefix="" \
- --with-rootlibdir=/%{_lib} \
- --libexecdir=%{_prefix}/lib \
- --enable-bzip2 \
- --enable-lz4 \
- --without-kill-user-processes \
- --disable-static \
- --with-sysvinit-path=%{_initrddir} \
- --with-sysvrcnd-path=%{_sysconfdir}/rc.d \
- --with-rc-local-script-path-start=/etc/rc.d/rc.local \
- --disable-selinux \
+%meson \
+ -Drootprefix="" \
+ -Drootlibdir=/%{_lib} \
+ -Dlibexecdir=%{_prefix}/lib \
+ -Dsysvinit-path=%{_initrddir} \
+ -Dsysvrcnd-path=%{_sysconfdir}/rc.d \
+ -Drc-local=/etc/rc.d/rc.local \
%ifnarch %armx
- --enable-gnuefi \
+ -Dgnu-efi=true \
%endif
%if %{with bootstrap}
- --disable-libcryptsetup \
- --without-python \
+ -Dlibcryptsetup=false \
+%endif
+ -Dsplit-usr=true \
+ -Dxkbcommon=true \
+ -Dtpm=true \
+ -Ddev-kvm-mode=0666 \
+ -Dkmod=true \
+ -Dxkbcommon=true \
+ -Dblkid=true \
+ -Dseccomp=true \
+ -Dima=true \
+ -Dselinux=false \
+ -Dapparmor=false \
+ -Dpolkit=true \
+ -Dxz=true \
+ -Dzlib=true \
+ -Dbzip2=true \
+ -Dlz4=true \
+ -Dpam=true \
+ -Dacl=true \
+ -Dsmack=true \
+ -Dgcrypt=true \
+ -Daudit=true \
+ -Delfutils=true \
+ -Dqrencode=true \
+ -Dgnutls=true \
+ -Dmicrohttpd=true \
+ -Dlibidn=true \
+ -Dlibiptc=true \
+ -Dlibcurl=true \
+ -Dtpm=true \
+ -Dhwdb=true \
+ -Dsysusers=true \
+ -Ddefault-kill-user-processes=false \
+ -Dtests=unsafe \
+ -Dinstall-tests=false \
+%ifnarch %{ix86}
+ -Db_lto=true \
%endif
- --enable-split-usr \
- --enable-xkbcommon \
- --enable-tpm \
- --with-kbd-loadkeys=/bin/loadkeys \
- --with-kbd-setfont=/bin/setfont \
- --with-certificate-root="%{_sysconfdir}/pki" \
- --with-fallback-hostname=openmandriva \
- --with-support-url="%{disturl}" \
+ -Dloadkeys-path=/bin/loadkeys \
+ -Dsetfont-path=/bin/setfont \
+ -Dcertificate-root="%{_sysconfdir}/pki" \
+ -Dfallback-hostname=openmandriva \
+ -Dsupport-url="%{disturl}" \
%if %mdvver <= 3000000
- --with-default-hierarchy=hybrid \
+ -Ddefault-hierarchy=hybrid \
%else
- --with-default-hierarchy=unified \
+ -Ddefault-hierarchy=unified \
%endif
- --with-ntp-servers="0.openmandriva.pool.ntp.org 1.openmandriva.pool.ntp.org 2.openmandriva.pool.ntp.org 3.openmandriva.pool.ntp.org" \
- --with-dns-servers="208.67.222.222 208.67.220.220"
+ -Dsystem-uid-max='999' \
+ -Dsystem-gid-max='999' \
+ -Dntp-servers='0.openmandriva.pool.ntp.org 1.openmandriva.pool.ntp.org 2.openmandriva.pool.ntp.org 3.openmandriva.pool.ntp.org' \
+ -Ddns-servers='208.67.222.222 208.67.220.220'
-%make
+%meson_build
%install
-%makeinstall_std
+%meson_install
mkdir -p %{buildroot}{/bin,%{_sbindir}}
@@ -778,7 +887,7 @@ fi
%postun
if [ $1 -ge 1 ] ; then
- systemctl daemon-reload > /dev/null 2>&1 || :
+ /bin/systemctl daemon-reload > /dev/null 2>&1 || :
fi
%triggerun -- %{name} < 196
@@ -862,8 +971,8 @@ shift
units=${*#%{_unitdir}/}
if [ $ARG1 -eq 1 -a $ARG2 -eq 1 ]; then
- /bin/systemctl preset ${units} >/dev/null 2>&1 || :
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
+ /bin/systemctl preset ${units} >/dev/null 2>&1 || :
fi
%triggerun -- ^%{_unitdir}/.*\.(service|socket|path|timer)$
@@ -895,6 +1004,18 @@ systemctl reload-or-try-restart systemd-binfmt
%triggerposttransun -- /lib/udev/hwdb.d/*.hwdb
/bin/systemd-hwdb update
+%triggerposttransin -- %{udev_rules_dir}/*.rules
+udevadm control --reload
+
+%triggerposttransun -- %{udev_rules_dir}/*.rules
+udevadm control --reload
+
+%triggerposttransin -- %{udev_user_rules_dir}/*.rules
+udevadm control --reload
+
+%triggerposttransun -- %{udev_user_rules_dir}/*.rules
+udevadm control --reload
+
%triggerposttransin -- %{_prefix}/lib/sysusers.d/*.conf
/bin/systemd-sysusers
@@ -908,30 +1029,52 @@ systemctl reload-or-try-restart systemd-binfmt
/bin/journalctl --update-catalog
%post -n %{libnss_myhostname}
+if [ -f /etc/nsswitch.conf ]; then
+# sed-fu to add myhostanme to hosts line
+ grep -v -E -q '^hosts:.* myhostname' /etc/nsswitch.conf &&
+ sed -i.bak -e '
+ /^hosts:/ !b
+ /\<myhostname\>/ b
+ s/[[:blank:]]*$/ myhostname/
+ ' /etc/nsswitch.conf &>/dev/null || :
+fi
+
+%post -n %{libnss_mymachines}
+if [ -f /etc/nsswitch.conf ]; then
+ grep -E -q '^(passwd|group):.* mymachines' /etc/nsswitch.conf ||
+ sed -i.bak -r -e '
+ s/^(passwd|group):(.*)/\1: \2 mymachines/
+ ' /etc/nsswitch.conf &>/dev/null || :
+fi
+
+%postun -n %{libnss_mymachines}
# sed-fu to remove mymachines from passwd and group lines of /etc/nsswitch.conf
# https://bugzilla.redhat.com/show_bug.cgi?id=1284325
# To avoid the removal, e.g. add a space at the end of the line.
-if [ -f /etc/nsswitch.conf ] ; then
- grep -E -q '^(passwd|group):.* mymachines$' /etc/nsswitch.conf &&
- sed -i.bak -r -e '
- s/^(passwd:.*) mymachines$/\1/;
- s/^(group:.*) mymachines$/\1/;
- ' /etc/nsswitch.conf >/dev/null 2>&1 || :
+if [ -f /etc/nsswitch.conf ]; then
+ grep -E -q '^(passwd|group):.* mymachines$' /etc/nsswitch.conf &&
+ sed -i.bak -r -e '
+ s/^(passwd:.*) mymachines$/\1/;
+ s/^(group:.*) mymachines$/\1/;
+ ' /etc/nsswitch.conf &>/dev/null || :
fi
-%preun -n %{libnss_myhostname}
-if [ -f /etc/nsswitch.conf ] ; then
- sed -i.bak -e '
- /^hosts:/ !b
- s/[[:blank:]]\+myhostname\>//
- ' /etc/nsswitch.conf >/dev/null 2>&1 || :
-
- sed -i.bak -e '
- /^hosts:/ !b
- s/[[:blank:]]\+mymachines\>//
- ' /etc/nsswitch.conf >/dev/null 2>&1 || :
+%post -n %{libnss_resolve}
+if [ -f /etc/nsswitch.conf ]; then
+ grep -E -q '^hosts:.*resolve[[:space:]]*($|[[:alpha:]])' /etc/nsswitch.conf &&
+ sed -i.bak -e '
+ /^hosts:/ { s/resolve/& [!UNAVAIL=return]/}
+ ' /etc/nsswitch.conf &>/dev/null || :
fi
+%post -n %{libnss_systemd}
+if [ -f /etc/nsswitch.conf ]; then
+ grep -E -q '^(passwd|group):.* systemd' /etc/nsswitch.conf ||
+ sed -i.bak -r -e '
+ s/^(passwd|group):(.*)/\1: \2 systemd/
+ ' /etc/nsswitch.conf &>/dev/null || :
+fi
+
%pre journal-gateway
%_pre_groupadd systemd-journal-gateway systemd-journal-gateway
%_pre_useradd systemd-journal-gateway %{_var}/log/journal /sbin/nologin
@@ -965,6 +1108,7 @@ fi
%dir %{_prefix}/lib/systemd/user-environment-generators
%dir %{_prefix}/lib/sysusers.d
%dir %{_prefix}/lib/tmpfiles.d
+%dir %{_prefix}/lib/modprobe.d
%dir %{_sysconfdir}/binfmt.d
%dir %{_sysconfdir}/modules-load.d
%dir %{_sysconfdir}/sysctl.d
@@ -990,7 +1134,6 @@ fi
%dir %{systemd_libdir}/system/systemd-udev-trigger.service.d
%dir %{systemd_libdir}/system/basic.target.wants
%dir %{systemd_libdir}/system/bluetooth.target.wants
-%dir %{systemd_libdir}/system/busnames.target.wants
%dir %{systemd_libdir}/system/dbus.target.wants
%dir %{systemd_libdir}/system/default.target.wants
%dir %{systemd_libdir}/system/graphical.target.wants
@@ -1011,16 +1154,42 @@ fi
%dir %{udev_libdir}
%dir %{udev_libdir}/hwdb.d
%dir %{udev_rules_dir}
-%exclude %{_mandir}/man8/libnss_myhostname.so.2.8.*
-%exclude %{_mandir}/man8/libnss_mymachines.so.2.8.*
-%exclude %{_mandir}/man8/nss-myhostname.8.*
+### container excludes
+%exclude %{systemd_libdir}/system/dbus-org.freedesktop.import1.service
+%exclude %{systemd_libdir}/system/dbus-org.freedesktop.machine1.service
+%exclude %{systemd_libdir}/system/machine.slice
+%exclude %{systemd_libdir}/system/machines.target
+%exclude %{systemd_libdir}/system/machines.target.wants/var-lib-machines.mount
+%exclude %{systemd_libdir}/system/remote-fs.target.wants/var-lib-machines.mount
+%exclude %{systemd_libdir}/system/systemd-importd.service
+%exclude %{systemd_libdir}/system/systemd-machined.service
+%exclude %{systemd_libdir}/system/systemd-nspawn@.service
+%exclude %{systemd_libdir}/system/var-lib-machines.mount
+%exclude %{systemd_libdir}/systemd-import
+%exclude %{systemd_libdir}/systemd-importd
+%exclude %{systemd_libdir}/systemd-machined
+%exclude %{systemd_libdir}/systemd-pull
+%exclude %{systemd_libdir}/import-pubring.gpg
+%exclude %{systemd_libdir}/systemd-import
+%exclude %{systemd_libdir}/systemd-importd
+%exclude %{systemd_libdir}/systemd-machined
+%exclude %{systemd_libdir}/systemd-pull
+%exclude %{systemd_libdir}/import-pubring.gpg
+%exclude /bin/machinectl
+%exclude %{_bindir}/systemd-nspawn
+%exclude %{_prefix}/lib/tmpfiles.d/systemd-nspawn.conf
+%exclude %{_mandir}/man1/machinectl.1.*
+%exclude %{_mandir}/man1/systemd-nspawn.1.*
+%exclude %{_mandir}/man8/systemd-machined.8.*
+%exclude %{_mandir}/man8/systemd-machined.service.8.*
+%exclude %{_mandir}/man8/libnss_mymachines.so.*.8.*
%exclude %{_mandir}/man8/nss-mymachines.8.*
+### gateway excludes
%exclude %{_mandir}/man8/%{name}-journal-gatewayd.8.*
%exclude %{_mandir}/man8/%{name}-journal-gatewayd.service.8.*
%exclude %{_mandir}/man8/%{name}-journal-gatewayd.socket.8.*
%exclude %{_mandir}/man8/%{name}-journal-remote.8.*
%exclude %{_mandir}/man8/%{name}-journal-upload.8.*
-%exclude %{_prefix}/lib/tmpfiles.d/%{name}-remote.conf
%exclude %{systemd_libdir}/system/%{name}-journal-gatewayd.service
%exclude %{systemd_libdir}/system/%{name}-journal-gatewayd.socket
%exclude %{systemd_libdir}/system/%{name}-journal-remote.service
@@ -1032,6 +1201,7 @@ fi
%exclude %config(noreplace) %{_prefix}/lib/sysusers.d/%{name}-remote.conf
%exclude %config(noreplace) %{_sysconfdir}/%{name}/journal-remote.conf
%exclude %config(noreplace) %{_sysconfdir}/%{name}/journal-upload.conf
+###
%ghost %{_sysconfdir}/udev/hwdb.bin
%ghost %config(noreplace,missingok) %attr(0644,root,root) %{_sysconfdir}/scsi_id.config
%ghost %config(noreplace) %{_sysconfdir}/hostname
@@ -1041,12 +1211,17 @@ fi
%ghost %config(noreplace) %{_sysconfdir}/timezone
%ghost %config(noreplace) %{_sysconfdir}/vconsole.conf
%ghost %config(noreplace) %{_sysconfdir}/X11/xorg.conf.d/00-keyboard.conf
-%config(noreplace) %{_datadir}/dbus-1/system.d/*.conf
+%{_datadir}/dbus-1/system.d/org.freedesktop.hostname1.conf
+%{_datadir}/dbus-1/system.d/org.freedesktop.locale1.conf
+%{_datadir}/dbus-1/system.d/org.freedesktop.login1.conf
+%{_datadir}/dbus-1/system.d/org.freedesktop.network1.conf
+%{_datadir}/dbus-1/system.d/org.freedesktop.resolve1.conf
+%{_datadir}/dbus-1/system.d/org.freedesktop.systemd1.conf
+%{_datadir}/dbus-1/system.d/org.freedesktop.timedate1.conf
/%{_lib}/security/pam_systemd.so
/bin/halt
/bin/journalctl
/bin/loginctl
-/bin/machinectl
/bin/networkctl
/bin/poweroff
/bin/reboot
@@ -1076,29 +1251,37 @@ fi
%{_bindir}/systemctl
%{_bindir}/%{name}-*
%{_bindir}/timedatectl
-%{_sysconfdir}/systemd/system/dbus-org.freedesktop.*.service
-%{_datadir}/dbus-1/*services/*.service
+%{_sysconfdir}/systemd/system/dbus-org.freedesktop.network1.service
+%{_sysconfdir}/systemd/system/dbus-org.freedesktop.resolve1.service
+%{_datadir}/dbus-1/services/org.freedesktop.systemd1.service
+%{_datadir}/dbus-1/system-services/org.freedesktop.hostname1.service
+%{_datadir}/dbus-1/system-services/org.freedesktop.locale1.service
+%{_datadir}/dbus-1/system-services/org.freedesktop.login1.service
+%{_datadir}/dbus-1/system-services/org.freedesktop.network1.service
+%{_datadir}/dbus-1/system-services/org.freedesktop.resolve1.service
+%{_datadir}/dbus-1/system-services/org.freedesktop.systemd1.service
+%{_datadir}/dbus-1/system-services/org.freedesktop.timedate1.service
%{_datadir}/factory/etc/nsswitch.conf
%{_datadir}/factory/etc/pam.d/other
%{_datadir}/factory/etc/pam.d/system-auth
-%{_datadir}/polkit-1/actions/*.policy
+%{_datadir}/polkit-1/actions/org.freedesktop.hostname1.policy
+%{_datadir}/polkit-1/actions/org.freedesktop.locale1.policy
+%{_datadir}/polkit-1/actions/org.freedesktop.login1.policy
+%{_datadir}/polkit-1/actions/org.freedesktop.systemd1.policy
+%{_datadir}/polkit-1/actions/org.freedesktop.timedate1.policy
%{_datadir}/polkit-1/rules.d/systemd-networkd.rules
%{_datadir}/%{name}/kbd-model-map
%{_datadir}/%{name}/language-fallback-map
%{_initrddir}/README
%{_logdir}/README
-%{_mandir}/man1/*.*
-%{_mandir}/man3/*.*
-%{_mandir}/man5/*.*
-%{_mandir}/man7/*.*
-%{_mandir}/man8/*.*
%{_prefix}/lib/kernel/install.d/*.install
%ifnarch %armx
%{_prefix}/lib/%{name}/boot/efi/*.efi
%{_prefix}/lib/%{name}/boot/efi/*.stub
%{_datadir}/%{name}/bootctl/*.conf
%endif
-%config(noreplace) %{_prefix}/lib/environment.d/99-environment.conf
+%{_prefix}/lib/environment.d/99-environment.conf
+%{_prefix}/lib/modprobe.d/systemd.conf
%{_prefix}/lib/%{name}/catalog/*.catalog
%{_prefix}/lib/%{name}/user-preset/*.preset
%{_prefix}/lib/%{name}/user/*.service
@@ -1111,7 +1294,6 @@ fi
%{_sysconfdir}/xdg/%{name}
%{systemd_libdir}/resolv.conf
%{systemd_libdir}/*-generators/*
-%{systemd_libdir}/import-pubring.gpg
%{systemd_libdir}/network/80-container-host0.network
%{systemd_libdir}/network/80-container-ve.network
%{systemd_libdir}/network/80-container-vz.network
@@ -1120,7 +1302,6 @@ fi
%{systemd_libdir}/network/99-default.link
%{systemd_libdir}/system-preset/*.preset
%{systemd_libdir}/system/*.automount
-%{systemd_libdir}/system/*.busname
%{systemd_libdir}/system/*.mount
%{systemd_libdir}/system/*.path
%{systemd_libdir}/system/*.service
@@ -1129,7 +1310,6 @@ fi
%{systemd_libdir}/system/*.target
%{systemd_libdir}/system/*.timer
%{systemd_libdir}/system/systemd-udev-trigger.service.d/*.conf
-%{systemd_libdir}/system/busnames.target.wants/*.busname
%{systemd_libdir}/system/graphical.target.wants/*.service
%{systemd_libdir}/system/local-fs.target.wants/*.mount
%{systemd_libdir}/system/local-fs.target.wants/*.service
@@ -1148,7 +1328,6 @@ fi
%{systemd_libdir}/systemd*
# (tpg) internal library - only systemd uses it
%{systemd_libdir}/libsystemd-shared-%{version}.so
-%{systemd_libdir}/libsystemd-shared.so
#
%{udev_libdir}/hwdb.d/*.hwdb
%{udev_rules_dir}/*.rules
@@ -1174,6 +1353,11 @@ fi
%config(noreplace) %{_sysconfdir}/sysconfig/udev_net
%config(noreplace) %{_sysconfdir}/%{name}/*.conf
%config(noreplace) %{_sysconfdir}/udev/*.conf
+%{_mandir}/man1/*.1*
+%{_mandir}/man3/*.3*
+%{_mandir}/man5/*.5*
+%{_mandir}/man7/*.7*
+%{_mandir}/man8/*.8.*
%files journal-gateway
%config(noreplace) %{_sysconfdir}/%{name}/journal-remote.conf
@@ -1188,7 +1372,6 @@ fi
%{systemd_libdir}/system/%{name}-journal-remote.service
%{systemd_libdir}/system/%{name}-journal-remote.socket
%{systemd_libdir}/system/%{name}-journal-upload.service
-%{_prefix}/lib/tmpfiles.d/%{name}-remote.conf
%{_mandir}/man8/%{name}-journal-gatewayd.8.*
%{_mandir}/man8/%{name}-journal-upload.8.*
%{_mandir}/man8/%{name}-journal-remote.8.*
@@ -1196,15 +1379,49 @@ fi
%{_mandir}/man8/%{name}-journal-gatewayd.socket.8.*
%{_datadir}/%{name}/gatewayd/browse.html
+%files container
+%{systemd_libdir}/system/dbus-org.freedesktop.import1.service
+%{systemd_libdir}/system/dbus-org.freedesktop.machine1.service
+%{systemd_libdir}/system/machine.slice
+%{systemd_libdir}/system/machines.target
+%{systemd_libdir}/system/machines.target.wants/var-lib-machines.mount
+%{systemd_libdir}/system/remote-fs.target.wants/var-lib-machines.mount
+%{systemd_libdir}/system/systemd-importd.service
+%{systemd_libdir}/system/systemd-machined.service
+%{systemd_libdir}/system/systemd-nspawn@.service
+%{systemd_libdir}/system/var-lib-machines.mount
+%{systemd_libdir}/systemd-import
+%{systemd_libdir}/systemd-importd
+%{systemd_libdir}/systemd-machined
+%{systemd_libdir}/systemd-pull
+%{systemd_libdir}/import-pubring.gpg
+/bin/machinectl
+%{_bindir}/systemd-nspawn
+%{_prefix}/lib/tmpfiles.d/systemd-nspawn.conf
+%{_datadir}/dbus-1/system-services/org.freedesktop.import1.service
+%{_datadir}/dbus-1/system-services/org.freedesktop.machine1.service
+%{_datadir}/dbus-1/system.d/org.freedesktop.import1.conf
+%{_datadir}/dbus-1/system.d/org.freedesktop.machine1.conf
+%{_datadir}/polkit-1/actions/org.freedesktop.import1.policy
+%{_datadir}/polkit-1/actions/org.freedesktop.machine1.policy
+%{_mandir}/man1/machinectl.1.*
+%{_mandir}/man1/systemd-nspawn.1.*
+%{_mandir}/man8/systemd-machined.8.*
+%{_mandir}/man8/systemd-machined.service.8.*
+%{_mandir}/man8/libnss_mymachines.so.*.8.*
+%{_mandir}/man8/nss-mymachines.8.*
+
+%files -n %{libnss_mymachines}
+/%{_lib}/libnss_mymachines.so.%{libnss_major}
+
%files -n %{libnss_myhostname}
/%{_lib}/libnss_myhostname.so.%{libnss_major}*
-/%{_lib}/libnss_mymachines.so.%{libnss_major}
+
+%files -n %{libnss_resolve}
/%{_lib}/libnss_resolve.so.%{libnss_major}
+
+%files -n %{libnss_systemd}
/%{_lib}/libnss_systemd.so.%{libnss_major}
-%{_mandir}/man8/libnss_myhostname.so*.8*
-%{_mandir}/man8/libnss_mymachines.so*.8*
-%{_mandir}/man8/nss-myhostname.8*
-%{_mandir}/man8/nss-mymachines.8*
%files -n %{libsystemd}
/%{_lib}/libsystemd.so.%{libsystemd_major}*