SHA256
1
0
forked from pool/systemd

Accepting request 647604 from Base:System

OBS-URL: https://build.opensuse.org/request/show/647604
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/systemd?expand=0&rev=288
This commit is contained in:
Dominique Leuenberger 2018-11-13 15:34:40 +00:00 committed by Git OBS Bridge
parent d40672a994
commit 7756ea9467
10 changed files with 512 additions and 140 deletions

View File

@ -0,0 +1,185 @@
From d3acd5b49a6a321dc3b1512416132b8724b2fd20 Mon Sep 17 00:00:00 2001
From: Franck Bui <fbui@suse.com>
Date: Tue, 6 Nov 2018 11:51:26 +0100
Subject: [PATCH] logind: keep backward compatibility with UserTasksMax= in
logind.conf
Since commit 284149392755f086d0a71, UserTasksMax= support has been simply
dropped.
A generator is used to automatically create an appropriate dropin that has the
same effect. However since the snippet is generated in /run, sysadmin is
encouraged to copy it in /etc to make it persistent.
The main advantages to use a generator are:
- sysadmin is aware of this backward incompatible change
- he will be the one who will fix logind.conf manually (to remove the use of
UserTasksMax=)
- he will decide how to name the snippet and possibly merge it with an
existing one
Expect this generator to be dropped in the future.
---
meson.build | 8 ++++
src/login/compat-tasks-max-generator.c | 66 ++++++++++++++++++++++++++
src/login/logind-user.c | 43 +++++++++++++++--
3 files changed, 112 insertions(+), 5 deletions(-)
create mode 100644 src/login/compat-tasks-max-generator.c
diff --git a/meson.build b/meson.build
index 5c7c165ba..7e3e8ca16 100644
--- a/meson.build
+++ b/meson.build
@@ -1701,6 +1701,14 @@ if conf.get('ENABLE_LOGIND') == 1
endif
endif
+executable('logind-compat-tasks-max-generator',
+ 'src/login/compat-tasks-max-generator.c',
+ include_directories : includes,
+ link_with : [libshared, liblogind_core],
+ install_rpath : rootlibexecdir,
+ install : true,
+ install_dir : systemgeneratordir)
+
executable('systemd-user-runtime-dir',
user_runtime_dir_sources,
include_directories : includes,
diff --git a/src/login/compat-tasks-max-generator.c b/src/login/compat-tasks-max-generator.c
new file mode 100644
index 000000000..404ca5f23
--- /dev/null
+++ b/src/login/compat-tasks-max-generator.c
@@ -0,0 +1,66 @@
+#include <stdint.h>
+
+#include "alloc-util.h"
+#include "dropin.h"
+#include "logind.h"
+#include "path-util.h"
+
+static const char *arg_dest = "/tmp";
+
+static int read_manager_configuration(uint64_t *user_tasks_max) {
+ Manager m = {};
+ int r;
+
+ manager_reset_config(&m);
+ m.user_tasks_max = 0;
+
+ r = manager_parse_config_file(&m);
+ if (r < 0)
+ return log_warning_errno(r, "Failed to parse logind.conf: %m");
+
+ if (m.user_tasks_max == 0)
+ return 0;
+
+ *user_tasks_max = m.user_tasks_max;
+ return 1;
+}
+
+int main(int argc, char *argv[]) {
+ _cleanup_free_ char *p = NULL;
+ uint64_t user_tasks_max;
+ int r = 0;
+
+ if (argc > 1 && argc != 4) {
+ log_error("This program takes three or no arguments.");
+ return EXIT_FAILURE;
+ }
+
+ if (argc > 1)
+ arg_dest = argv[1];
+
+ log_set_prohibit_ipc(true);
+ log_set_target(LOG_TARGET_AUTO);
+ log_parse_environment();
+ log_open();
+
+ umask(0022);
+
+ r = read_manager_configuration(&user_tasks_max);
+ if (r == 0)
+ return EXIT_SUCCESS;
+ if (r < 0)
+ return EXIT_FAILURE;
+
+ p = path_join(arg_dest, "user-.slice.d", "50-limits.conf");
+ if (!p)
+ return EXIT_FAILURE;
+
+ log_warning("Creating %s to keep compability\n"
+ "Consider copying the snippet in /etc/systemd/system/user-.slice.d/\n", p);
+
+ r = write_drop_in_format(arg_dest, "user-.slice", 50, "limits",
+ "# Automatically generated by logind-compat-tasks-max-generator\n\n"
+ "[Slice]\nTasksMax=%" PRIu64, user_tasks_max);
+
+ return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS;
+}
diff --git a/src/login/logind-user.c b/src/login/logind-user.c
index 66f5c896d..fe58b0398 100644
--- a/src/login/logind-user.c
+++ b/src/login/logind-user.c
@@ -743,17 +743,50 @@ int config_parse_compat_user_tasks_max(
void *data,
void *userdata) {
+ uint64_t *m = data;
+ uint64_t k;
+ int r;
+
assert(filename);
assert(lvalue);
assert(rvalue);
assert(data);
- log_syntax(unit, LOG_NOTICE, filename, line, 0,
+ log_syntax(unit, LOG_WARNING, filename, line, 0,
"Support for option %s= has been removed.",
lvalue);
- log_info("Hint: try creating /etc/systemd/system/user-.slice.d/50-limits.conf with:\n"
- " [Slice]\n"
- " TasksMax=%s",
- rvalue);
+
+ if (isempty(rvalue)) {
+ *m = system_tasks_max_scale(DEFAULT_USER_TASKS_MAX_PERCENTAGE, 100U);
+ return 0;
+ }
+
+ if (streq(rvalue, "infinity")) {
+ *m = CGROUP_LIMIT_MAX;
+ return 0;
+ }
+
+ /* Try to parse as percentage */
+ r = parse_percent(rvalue);
+ if (r >= 0)
+ k = system_tasks_max_scale(r, 100U);
+ else {
+
+ /* If the passed argument was not a percentage, or out of range, parse as byte size */
+
+ r = safe_atou64(rvalue, &k);
+ if (r < 0) {
+ log_syntax(unit, LOG_ERR, filename, line, r, "Failed to parse tasks maximum, ignoring: %s", rvalue);
+ return 0;
+ }
+ }
+
+ if (k <= 0 || k >= UINT64_MAX) {
+ log_syntax(unit, LOG_ERR, filename, line, 0, "Tasks maximum out of range, ignoring: %s", rvalue);
+ return 0;
+ }
+
+ *m = k;
+
return 0;
}
--
2.19.0

View File

@ -1,24 +0,0 @@
# Set optimal IO schedulers for HDD and SSD
ACTION!="add", GOTO="scheduler_end"
SUBSYSTEM!="block", GOTO="scheduler_end"
# Do not change scheduler if `elevator` cmdline parameter is set
IMPORT{cmdline}="elevator"
ENV{elevator}=="?*", GOTO="scheduler_end"
# Determine if BLK-MQ is enabled
TEST=="%S%p/mq", ENV{.IS_MQ}="1"
# MQ: BFQ scheduler for HDD
ENV{.IS_MQ}=="1", ATTR{queue/rotational}!="0", ATTR{queue/scheduler}="bfq"
# MQ: deadline scheduler for SSD
ENV{.IS_MQ}=="1", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="mq-deadline"
# Non-MQ: CFQ scheduler for HDD
ENV{.IS_MQ}!="1", ATTR{queue/rotational}!="0", ATTR{queue/scheduler}="cfq"
# Non-MQ: deadline scheduler for SSD
ENV{.IS_MQ}!="1", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="deadline"
LABEL="scheduler_end"

View File

@ -1,24 +0,0 @@
# do not edit this file, it will be overwritten on update
#
# Hotplug physical CPU
#
SUBSYSTEM=="cpu", ACTION=="add", TEST=="online", ATTR{online}=="0", ATTR{online}="1"
#
# Hotplug physical memory. Instances of tmpfs are remounted so their
# size are recalculated. This might be needed if some sizes were
# specified relative to the total amount of memory (boo#869603). For
# now make it simple and remount all tmpfs regardless of how their
# size are specified. It should be handled by the kernel as it has a
# lot of shortcomings anyways (tmpfs mounted by other processes, mount
# namespaces, ...)
#
SUBSYSTEM=="memory", ACTION=="add", PROGRAM=="/usr/bin/systemd-detect-virt", RESULT!="zvm", ATTR{state}=="offline", \
ATTR{state}="online", \
RUN+="/bin/sh -c ' \
while read src dst fs opts unused; do \
case $fs in \
tmpfs) mount -o remount \"$dst\" ;; \
esac \
done </proc/self/mounts"

View File

@ -1,3 +0,0 @@
# enable usb and standard AT Keyboards as wakeup sources for suspend-to-idle (S2I) fate#323814
ACTION=="add", ATTR{power/wakeup}=="disabled", SUBSYSTEM=="serio", ATTR{description}=="i8042 KBD port", ATTR{power/wakeup}="enabled"
ACTION=="add", ATTR{power/wakeup}=="disabled", SUBSYSTEM=="hid", ATTRS{bInterfaceProtocol}=="01", ATTR{power/wakeup}="enabled"

View File

@ -1,3 +1,92 @@
-------------------------------------------------------------------
Fri Nov 9 10:37:21 UTC 2018 - Franck Bui <fbui@suse.com>
- Make systemd-mini-sysvinit provides systemd-sysvinit
Some packages (such as shepherd-bins) want to conflicts with
systemd-sysvinit: they should also conflict with
systemd-mini-sysvinit.
-------------------------------------------------------------------
Wed Nov 7 08:45:08 UTC 2018 - Franck Bui <fbui@suse.com>
- Add 0001-logind-keep-backward-compatibility-with-UserTasksMax.patch
We have to keep support for UserTasksMax= for a while before
dropping it. This patch is supposed to do that and also to make
users aware of this change. It also hints how to configure that
differently.
-------------------------------------------------------------------
Wed Nov 7 07:05:31 UTC 2018 - Franck Bui <fbui@suse.com>
- Import commit f39674d6d114d999c50672c7bea8cad21e1eaed9
7d1e04e85 units: use =yes rather than =true everywhere
185ce0d34 units: assign user-runtime-dir@.service to user-%i.slice
a051f5e41 units: make sure user-runtime-dir@.service is Type=oneshot
30c6842c3 units: set StopWhenUnneeded= for the user slice units too
e74de046e login: fix typo in log message
-------------------------------------------------------------------
Mon Nov 5 13:10:54 UTC 2018 - Franck Bui <fbui@suse.com>
- Own %{_libexecdir}/modules-load.d (again)
This was incorrectly dropped during the split of the SUSE specific
configurations.
-------------------------------------------------------------------
Fri Nov 2 14:17:34 UTC 2018 - Franck Bui <fbui@suse.com>
- Drop a Conflicts: in systemd-coredump
It not needed anymore since the mini variant of systemd-coredump is
not built anymore.
-------------------------------------------------------------------
Fri Nov 2 13:54:36 UTC 2018 - Franck Bui <fbui@suse.com>
- Import commit b54f5d7a8b41898ce98f43cd1a6cc92c0071806d
5def29d24 coredump: only install coredump.conf when ENABLED_COREDUMP=true
9133e2d6e dhcp6: make sure we have enough space for the DHCP6 option header (bsc#1113632 CVE-2018-15688)
ebc3fa418 dhcp6: split assert_return() to be more debuggable when hit
51eefb6ac chown-recursive: let's rework the recursive logic to use O_PATH (bsc#1113666 CVE-2018-15687)
e1e1aa237 core: skip unit deserialization and move to the next one when unit_deserialize() fails
1c726c87d core: when deserializing state always use read_line(…, LONG_LINE_MAX, …) (bsc#1113665 CVE-2018-15686)
4cd7d11ac core: don't create Requires for workdir if "missing ok" (bsc#1113083)
-------------------------------------------------------------------
Fri Nov 2 13:51:46 UTC 2018 - Franck Bui <fbui@suse.com>
- Make systemd-coredump sub-package optional
and don't build the mini variant.
-------------------------------------------------------------------
Fri Nov 2 12:02:18 UTC 2018 - Franck Bui <fbui@suse.com>
- Drop duplicated %{?mini} suffix for systemd-{container,coredump} subpackages
"-mini" is already part of the name of the main package so there's
no need to append it again for those sub packages. It's only needed
when the name of a subpackage is completely redefined, IOW when '-n'
option is used with the %package directive.
-------------------------------------------------------------------
Fri Nov 2 11:08:27 UTC 2018 - Franck Bui <fbui@suse.com>
- Dont ship /usr/sbin/resolvconf symlink for now
It conflicts with the bin shipped by openresolv and provides
limited compat only.
-------------------------------------------------------------------
Wed Oct 24 10:07:36 UTC 2018 - Franck Bui <fbui@suse.com>
- Upgrade to v239 (commit 6d8584e7e8e5d13d2bab49b9e6f6d2ec39759978)
-------------------------------------------------------------------
Mon Oct 15 16:23:05 UTC 2018 - Franck Bui <fbui@suse.com>
@ -35,6 +124,17 @@ Fri Sep 28 06:16:06 UTC 2018 - fbui@suse.com
d464f06934 journal: fix syslog_parse_identifier()
e70422883a socket-util: attempt SO_RCVBUFFORCE/SO_SNDBUFFORCE only if SO_RCVBUF/SO_SNDBUF fails (bsc#991901)
-------------------------------------------------------------------
Fri Sep 28 06:05:03 UTC 2018 - Thomas.Blume@suse.com
- split off SUSE specific configuration from systemd package (fate#325478)
* remove 60-io-scheduler.rules
* remove 80-hotplug-cpu-mem.rules
* remove 99-wakeup-from-idle.rules
* remove /usr/lib/modules-load.d/sg.conf
these are now maintained in the new package system-tuning-common-SUSE
-------------------------------------------------------------------
Fri Sep 14 12:55:49 UTC 2018 - fbui@suse.com

View File

@ -26,10 +26,11 @@
##### WARNING: please do not edit this auto generated spec file. Use the systemd.spec! #####
%define mini -mini
%define min_kernel_version 4.5
%define suse_version +suse.100.g19b3868d3
%define suse_version +suse.87.gf39674d6d
%bcond_with gnuefi
%if 0%{?bootstrap}
%bcond_with coredump
%bcond_with sysvcompat
%bcond_with machined
%bcond_with importd
@ -37,6 +38,7 @@
%bcond_with resolved
%bcond_with journal_remote
%else
%bcond_without coredump
%bcond_without sysvcompat
%bcond_without machined
%bcond_without importd
@ -51,7 +53,7 @@
Name: systemd-mini
Url: http://www.freedesktop.org/wiki/Software/systemd
Version: 237
Version: 239
Release: 0
Summary: A System and Session Manager
License: LGPL-2.1-or-later
@ -156,10 +158,6 @@ Source101: scripts-systemd-upgrade-from-pre-210.sh
Source102: scripts-systemd-migrate-sysconfig-i18n.sh
Source200: scripts-udev-convert-lib-udev-path.sh
Source1000: 60-io-scheduler.rules
Source1001: 80-hotplug-cpu-mem.rules
Source1002: 99-wakeup-from-idle.rules
# Patches listed in here are put in quarantine. Normally all
# changes must go to upstream first and then are cherry-picked in the
# SUSE git repository. But in very few cases, some stuff might be
@ -167,6 +165,7 @@ Source1002: 99-wakeup-from-idle.rules
# patches are temporary and should be removed as soon as a fix is
# merged by upstream.
Patch1: 0001-resolved-create-etc-resolv.conf-symlink-at-runtime.patch
Patch2: 0001-logind-keep-backward-compatibility-with-UserTasksMax.patch
%description
Systemd is a system and service manager, compatible with SysV and LSB
@ -198,6 +197,7 @@ Group: System/Base
Requires: %{name} = %{version}-%{release}
Provides: sbin_init
Conflicts: otherproviders(sbin_init)
Provides: systemd-sysvinit = %{version}-%{release}
Provides: sysvinit:/sbin/init
%description sysvinit
@ -297,23 +297,22 @@ Conflicts: libudev-devel
This package contains the development files for the library libudev, a
dynamic library, which provides access to udev device information.
%package coredump%{mini}
%if %{with coredump}
%package coredump
Summary: Systemd tools for coredump management
License: LGPL-2.1-or-later
Group: System/Base
Requires: %{name} = %{version}-%{release}
%systemd_requires
Provides: systemd:%{_bindir}/coredumpctl
%if 0%{?bootstrap}
Conflicts: systemd-coredump
%endif
%description coredump%{mini}
%description coredump
Systemd tools to store and manage coredumps.
This package contains systemd-coredump, coredumpctl.
%endif
%package container%{?mini}
%package container
Summary: Systemd tools for container management
License: LGPL-2.1-or-later
Group: System/Base
@ -324,7 +323,7 @@ Provides: systemd:%{_bindir}/systemd-nspawn
Conflicts: systemd-container
%endif
%description container%{?mini}
%description container
Systemd tools to spawn and manage containers and virtual machines.
This package contains systemd-nspawn, machinectl, systemd-machined,
@ -438,6 +437,7 @@ opensuse_ntp_servers=({0..3}.opensuse.pool.ntp.org)
-Ddocdir=%{_docdir}/systemd \
-Drootprefix=/usr \
-Dsplit-usr=true \
-Dsplit-bin=true \
-Dpamlibdir=/%{_lib}/security \
-Drpmmacrosdir=%{_prefix}/lib/rpm/macros.d \
-Dcertificate-root=%{_sysconfdir}/pki/systemd \
@ -447,6 +447,7 @@ opensuse_ntp_servers=({0..3}.opensuse.pool.ntp.org)
-Drc-local=/etc/init.d/boot.local \
-Dhalt-local=/etc/init.d/halt.local \
-Ddebug-shell=/bin/bash \
-Dportabled=false \
-Dseccomp=auto \
-Dselinux=auto \
-Dapparmor=auto \
@ -457,6 +458,9 @@ opensuse_ntp_servers=({0..3}.opensuse.pool.ntp.org)
-Dhtml=false \
-Dmyhostname=false \
%endif
%if %{without coredump}
-Dcoredump=false \
%endif
%if %{without networkd}
-Dnetworkd=false \
%endif
@ -487,6 +491,14 @@ mv %{buildroot}%{_libdir}/libnss_myhostname.so.2 %{buildroot}/%{_lib}
rm %{buildroot}%{_libdir}/libnss_systemd.so*
%endif
# Don't ship resolvconf symlink for now as it conflicts with the
# binary shipped by openresolv and provides limited compatibility
# only
%if %{with resolved}
rm %{buildroot}%{_sbindir}/resolvconf
rm %{buildroot}%{_mandir}/man1/resolvconf.1*
%endif
# FIXME: these symlinks should die.
mkdir -p %{buildroot}/{sbin,lib,bin}
ln -sf %{_bindir}/udevadm %{buildroot}/sbin/udevadm
@ -502,11 +514,6 @@ install -m0755 -D %{S:3} %{buildroot}/%{_sbindir}/systemd-sysv-convert
install -m0755 -D %{S:4} %{buildroot}/%{_prefix}/lib/systemd/systemd-sysv-install
%endif
# The rules that we shouldn't maintain
install -m0644 -D %{S:1000} %{buildroot}%{_udevrulesdir}/60-io-scheduler.rules
install -m0644 -D %{S:1001} %{buildroot}%{_udevrulesdir}/80-hotplug-cpu-mem.rules
install -m0644 -D %{S:1002} %{buildroot}%{_udevrulesdir}/99-wakeup-from-idle.rules
# Package the scripts used to fix all packaging issues. Also drop the
# "scripts-{systemd/udev}" prefix which is used because osc doesn't
# allow directory structure...
@ -541,13 +548,6 @@ mv %{buildroot}/%{_unitdir}/tmp.mount %{buildroot}/%{_datadir}/systemd/
# don't enable wall ask password service, it spams every console (bnc#747783)
rm %{buildroot}%{_unitdir}/multi-user.target.wants/systemd-ask-password-wall.path
# create %%{_libexecdir}/modules-load.d
mkdir -p %{buildroot}%{_libexecdir}/modules-load.d
cat << EOF > %{buildroot}%{_libexecdir}/modules-load.d/sg.conf
# load sg module at boot time
sg
EOF
# do not ship sysctl defaults in systemd package, will be part of
# aaa_base (in procps for now)
rm -f %{buildroot}%{_sysctldir}/50-default.conf
@ -808,7 +808,7 @@ systemctl daemon-reload || :
%postun -n libudev%{?mini}1 -p /sbin/ldconfig
%postun -n libsystemd0%{?mini} -p /sbin/ldconfig
%post container%{?mini}
%post container
%tmpfiles_create systemd-nspawn.conf
if [ $1 -gt 1 ]; then
# Convert /var/lib/machines subvolume to make it suitable for
@ -885,14 +885,17 @@ fi
/bin/systemd
/bin/systemd-ask-password
/bin/systemctl
%{_bindir}/busctl
%{_bindir}/bootctl
%{_bindir}/hostnamectl
%{_bindir}/kernel-install
%{_bindir}/localectl
%if %{with networkd}
%{_bindir}/networkctl
%endif
%{_bindir}/busctl
%{_bindir}/bootctl
%{_bindir}/kernel-install
%{_bindir}/hostnamectl
%{_bindir}/localectl
%if %{with resolved}
%{_bindir}/resolvectl
%endif
%{_bindir}/systemctl
%{_bindir}/systemd-analyze
%{_bindir}/systemd-delta
@ -929,8 +932,13 @@ fi
%{_prefix}/lib/kernel/install.d/50-depmod.install
%{_prefix}/lib/kernel/install.d/90-loaderentry.install
%dir %{_prefix}/lib/systemd
%dir %{_prefix}/lib/systemd/user
%dir %{_prefix}/lib/systemd/system
%dir %{_unitdir}
%{_userunitdir}
%if %{with coredump}
%exclude %{_prefix}/lib/systemd/systemd-coredump
%exclude %{_unitdir}/systemd-coredump*
%exclude %{_unitdir}/sockets.target.wants/systemd-coredump.socket
%endif
%if %{with journal_remote}
%exclude %{_unitdir}/systemd-journal-gatewayd.*
%exclude %{_unitdir}/systemd-journal-remote.*
@ -939,14 +947,11 @@ fi
%exclude %{_prefix}/lib/systemd/systemd-journal-remote
%exclude %{_prefix}/lib/systemd/systemd-journal-upload
%endif
%exclude %{_prefix}/lib/systemd/systemd-coredump
%exclude %{_prefix}/lib/systemd/systemd-udevd
%exclude %{_unitdir}/systemd-udev*.*
%exclude %{_unitdir}/*.target.wants/systemd-udev*.*
%exclude %{_unitdir}/initrd-udevadm-cleanup-db.service
%exclude %{_unitdir}/systemd-nspawn@.service
%exclude %{_unitdir}/systemd-coredump*
%exclude %{_unitdir}/sockets.target.wants/systemd-coredump.socket
%if %{with machined}
%exclude %{_prefix}/lib/systemd/systemd-machined
%exclude %{_unitdir}/systemd-machined.service
@ -973,7 +978,9 @@ fi
%{_unitdir}/*.socket
%{_unitdir}/*.wants
%{_unitdir}/*.path
%{_userunitdir}/
%{_unitdir}/user-.slice.d/
%{_prefix}/lib/systemd/systemd-*
%{_prefix}/lib/systemd/systemd
%{_prefix}/lib/systemd/libsystemd-shared-*.so
@ -1007,9 +1014,8 @@ fi
%{_prefix}/lib/systemd/boot/efi/*.stub
%endif
%dir %{_libexecdir}/modules-load.d
%dir %{_sysconfdir}/modules-load.d
%{_libexecdir}/modules-load.d/sg.conf
%{_libexecdir}/modules-load.d
%{_sysusersdir}/
%dir %{_sysconfdir}/tmpfiles.d
@ -1064,6 +1070,7 @@ fi
%{_datadir}/dbus-1/system.d/org.freedesktop.systemd1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.hostname1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.timedate1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.timesync1.conf
%if %{with networkd}
%{_sysconfdir}/systemd/system/dbus-org.freedesktop.network1.service
%{_datadir}/dbus-1/system.d/org.freedesktop.network1.conf
@ -1073,7 +1080,7 @@ fi
%{_datadir}/dbus-1/system.d/org.freedesktop.resolve1.conf
%endif
# FIXME: why should we have to own this dir ?
# FIXME: why do we have to own this dir ?
%dir %{_prefix}/lib/modprobe.d
%{_prefix}/lib/modprobe.d/systemd.conf
@ -1101,6 +1108,7 @@ fi
%{_datadir}/dbus-1/system-services/org.freedesktop.login1.service
%{_datadir}/dbus-1/system-services/org.freedesktop.hostname1.service
%{_datadir}/dbus-1/system-services/org.freedesktop.timedate1.service
%{_datadir}/dbus-1/system-services/org.freedesktop.timesync1.service
%if %{with networkd}
%{_datadir}/dbus-1/system-services/org.freedesktop.network1.service
%endif
@ -1136,9 +1144,11 @@ fi
%{_mandir}/man8/systemd-journald*
%{_mandir}/man8/systemd-u[ps]*
%{_mandir}/man8/30-systemd-environment-d-generator.*
%if %{with coredump}
%exclude %{_mandir}/man1/coredumpctl*
%exclude %{_mandir}/man5/coredump.conf*
%exclude %{_mandir}/man8/systemd-coredump*
%endif
%exclude %{_mandir}/man*/*nspawn*
%if %{with machined}
%exclude %{_mandir}/man*/machinectl*
@ -1192,6 +1202,13 @@ fi
/sbin/poweroff
/sbin/telinit
/sbin/runlevel
%{_sbindir}/init
%{_sbindir}/reboot
%{_sbindir}/halt
%{_sbindir}/shutdown
%{_sbindir}/poweroff
%{_sbindir}/telinit
%{_sbindir}/runlevel
%if ! 0%{?bootstrap}
%{_mandir}/man1/init.1*
%{_mandir}/man8/halt.8*
@ -1269,7 +1286,8 @@ fi
%{_mandir}/man3/*udev*.3*
%endif
%files coredump%{?mini}
%if %{with coredump}
%files coredump
%defattr(-,root,root)
%{_bindir}/coredumpctl
%{_prefix}/lib/systemd/systemd-coredump
@ -1283,12 +1301,12 @@ fi
%{_mandir}/man5/coredump.conf*
%{_mandir}/man8/systemd-coredump*
%endif
%endif
%files container%{?mini}
%files container
%defattr(-,root,root)
%{_bindir}/systemd-nspawn
%{_unitdir}/systemd-nspawn@.service
%{_tmpfilesdir}/systemd-nspawn.conf
%if %{with networkd}
%{_prefix}/lib/systemd/network/80-container-ve.network
%{_prefix}/lib/systemd/network/80-container-vz.network
@ -1306,6 +1324,7 @@ fi
%{_datadir}/dbus-1/system.d/org.freedesktop.machine1.conf
%{_datadir}/dbus-1/system-services/org.freedesktop.machine1.service
%{_datadir}/polkit-1/actions/org.freedesktop.machine1.policy
%{_tmpfilesdir}/systemd-nspawn.conf
%endif
%if %{with importd}
%{_prefix}/lib/systemd/systemd-import*

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1a821019ddd446a6a4d25c5152b0cdd42b197c8657c69dadc393dd36b189784f
size 4629044

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f62d64a099b2cb1fec5146914220d6396777b06c6d5075a479b1dfc22838c2c5
size 4854560

View File

@ -1,3 +1,92 @@
-------------------------------------------------------------------
Fri Nov 9 10:37:21 UTC 2018 - Franck Bui <fbui@suse.com>
- Make systemd-mini-sysvinit provides systemd-sysvinit
Some packages (such as shepherd-bins) want to conflicts with
systemd-sysvinit: they should also conflict with
systemd-mini-sysvinit.
-------------------------------------------------------------------
Wed Nov 7 08:45:08 UTC 2018 - Franck Bui <fbui@suse.com>
- Add 0001-logind-keep-backward-compatibility-with-UserTasksMax.patch
We have to keep support for UserTasksMax= for a while before
dropping it. This patch is supposed to do that and also to make
users aware of this change. It also hints how to configure that
differently.
-------------------------------------------------------------------
Wed Nov 7 07:05:31 UTC 2018 - Franck Bui <fbui@suse.com>
- Import commit f39674d6d114d999c50672c7bea8cad21e1eaed9
7d1e04e85 units: use =yes rather than =true everywhere
185ce0d34 units: assign user-runtime-dir@.service to user-%i.slice
a051f5e41 units: make sure user-runtime-dir@.service is Type=oneshot
30c6842c3 units: set StopWhenUnneeded= for the user slice units too
e74de046e login: fix typo in log message
-------------------------------------------------------------------
Mon Nov 5 13:10:54 UTC 2018 - Franck Bui <fbui@suse.com>
- Own %{_libexecdir}/modules-load.d (again)
This was incorrectly dropped during the split of the SUSE specific
configurations.
-------------------------------------------------------------------
Fri Nov 2 14:17:34 UTC 2018 - Franck Bui <fbui@suse.com>
- Drop a Conflicts: in systemd-coredump
It not needed anymore since the mini variant of systemd-coredump is
not built anymore.
-------------------------------------------------------------------
Fri Nov 2 13:54:36 UTC 2018 - Franck Bui <fbui@suse.com>
- Import commit b54f5d7a8b41898ce98f43cd1a6cc92c0071806d
5def29d24 coredump: only install coredump.conf when ENABLED_COREDUMP=true
9133e2d6e dhcp6: make sure we have enough space for the DHCP6 option header (bsc#1113632 CVE-2018-15688)
ebc3fa418 dhcp6: split assert_return() to be more debuggable when hit
51eefb6ac chown-recursive: let's rework the recursive logic to use O_PATH (bsc#1113666 CVE-2018-15687)
e1e1aa237 core: skip unit deserialization and move to the next one when unit_deserialize() fails
1c726c87d core: when deserializing state always use read_line(…, LONG_LINE_MAX, …) (bsc#1113665 CVE-2018-15686)
4cd7d11ac core: don't create Requires for workdir if "missing ok" (bsc#1113083)
-------------------------------------------------------------------
Fri Nov 2 13:51:46 UTC 2018 - Franck Bui <fbui@suse.com>
- Make systemd-coredump sub-package optional
and don't build the mini variant.
-------------------------------------------------------------------
Fri Nov 2 12:02:18 UTC 2018 - Franck Bui <fbui@suse.com>
- Drop duplicated %{?mini} suffix for systemd-{container,coredump} subpackages
"-mini" is already part of the name of the main package so there's
no need to append it again for those sub packages. It's only needed
when the name of a subpackage is completely redefined, IOW when '-n'
option is used with the %package directive.
-------------------------------------------------------------------
Fri Nov 2 11:08:27 UTC 2018 - Franck Bui <fbui@suse.com>
- Dont ship /usr/sbin/resolvconf symlink for now
It conflicts with the bin shipped by openresolv and provides
limited compat only.
-------------------------------------------------------------------
Wed Oct 24 10:07:36 UTC 2018 - Franck Bui <fbui@suse.com>
- Upgrade to v239 (commit 6d8584e7e8e5d13d2bab49b9e6f6d2ec39759978)
-------------------------------------------------------------------
Mon Oct 15 16:23:05 UTC 2018 - Franck Bui <fbui@suse.com>
@ -35,6 +124,17 @@ Fri Sep 28 06:16:06 UTC 2018 - fbui@suse.com
d464f06934 journal: fix syslog_parse_identifier()
e70422883a socket-util: attempt SO_RCVBUFFORCE/SO_SNDBUFFORCE only if SO_RCVBUF/SO_SNDBUF fails (bsc#991901)
-------------------------------------------------------------------
Fri Sep 28 06:05:03 UTC 2018 - Thomas.Blume@suse.com
- split off SUSE specific configuration from systemd package (fate#325478)
* remove 60-io-scheduler.rules
* remove 80-hotplug-cpu-mem.rules
* remove 99-wakeup-from-idle.rules
* remove /usr/lib/modules-load.d/sg.conf
these are now maintained in the new package system-tuning-common-SUSE
-------------------------------------------------------------------
Fri Sep 14 12:55:49 UTC 2018 - fbui@suse.com

View File

@ -24,10 +24,11 @@
%define bootstrap 0
%define mini %nil
%define min_kernel_version 4.5
%define suse_version +suse.100.g19b3868d3
%define suse_version +suse.87.gf39674d6d
%bcond_with gnuefi
%if 0%{?bootstrap}
%bcond_with coredump
%bcond_with sysvcompat
%bcond_with machined
%bcond_with importd
@ -35,6 +36,7 @@
%bcond_with resolved
%bcond_with journal_remote
%else
%bcond_without coredump
%bcond_without sysvcompat
%bcond_without machined
%bcond_without importd
@ -49,7 +51,7 @@
Name: systemd
Url: http://www.freedesktop.org/wiki/Software/systemd
Version: 237
Version: 239
Release: 0
Summary: A System and Session Manager
License: LGPL-2.1-or-later
@ -154,10 +156,6 @@ Source101: scripts-systemd-upgrade-from-pre-210.sh
Source102: scripts-systemd-migrate-sysconfig-i18n.sh
Source200: scripts-udev-convert-lib-udev-path.sh
Source1000: 60-io-scheduler.rules
Source1001: 80-hotplug-cpu-mem.rules
Source1002: 99-wakeup-from-idle.rules
# Patches listed in here are put in quarantine. Normally all
# changes must go to upstream first and then are cherry-picked in the
# SUSE git repository. But in very few cases, some stuff might be
@ -165,6 +163,7 @@ Source1002: 99-wakeup-from-idle.rules
# patches are temporary and should be removed as soon as a fix is
# merged by upstream.
Patch1: 0001-resolved-create-etc-resolv.conf-symlink-at-runtime.patch
Patch2: 0001-logind-keep-backward-compatibility-with-UserTasksMax.patch
%description
Systemd is a system and service manager, compatible with SysV and LSB
@ -196,6 +195,7 @@ Group: System/Base
Requires: %{name} = %{version}-%{release}
Provides: sbin_init
Conflicts: otherproviders(sbin_init)
Provides: systemd-sysvinit = %{version}-%{release}
Provides: sysvinit:/sbin/init
%description sysvinit
@ -295,23 +295,22 @@ Conflicts: libudev-devel
This package contains the development files for the library libudev, a
dynamic library, which provides access to udev device information.
%package coredump%{mini}
%if %{with coredump}
%package coredump
Summary: Systemd tools for coredump management
License: LGPL-2.1-or-later
Group: System/Base
Requires: %{name} = %{version}-%{release}
%systemd_requires
Provides: systemd:%{_bindir}/coredumpctl
%if 0%{?bootstrap}
Conflicts: systemd-coredump
%endif
%description coredump%{mini}
%description coredump
Systemd tools to store and manage coredumps.
This package contains systemd-coredump, coredumpctl.
%endif
%package container%{?mini}
%package container
Summary: Systemd tools for container management
License: LGPL-2.1-or-later
Group: System/Base
@ -322,7 +321,7 @@ Provides: systemd:%{_bindir}/systemd-nspawn
Conflicts: systemd-container
%endif
%description container%{?mini}
%description container
Systemd tools to spawn and manage containers and virtual machines.
This package contains systemd-nspawn, machinectl, systemd-machined,
@ -436,6 +435,7 @@ opensuse_ntp_servers=({0..3}.opensuse.pool.ntp.org)
-Ddocdir=%{_docdir}/systemd \
-Drootprefix=/usr \
-Dsplit-usr=true \
-Dsplit-bin=true \
-Dpamlibdir=/%{_lib}/security \
-Drpmmacrosdir=%{_prefix}/lib/rpm/macros.d \
-Dcertificate-root=%{_sysconfdir}/pki/systemd \
@ -445,6 +445,7 @@ opensuse_ntp_servers=({0..3}.opensuse.pool.ntp.org)
-Drc-local=/etc/init.d/boot.local \
-Dhalt-local=/etc/init.d/halt.local \
-Ddebug-shell=/bin/bash \
-Dportabled=false \
-Dseccomp=auto \
-Dselinux=auto \
-Dapparmor=auto \
@ -455,6 +456,9 @@ opensuse_ntp_servers=({0..3}.opensuse.pool.ntp.org)
-Dhtml=false \
-Dmyhostname=false \
%endif
%if %{without coredump}
-Dcoredump=false \
%endif
%if %{without networkd}
-Dnetworkd=false \
%endif
@ -485,6 +489,14 @@ mv %{buildroot}%{_libdir}/libnss_myhostname.so.2 %{buildroot}/%{_lib}
rm %{buildroot}%{_libdir}/libnss_systemd.so*
%endif
# Don't ship resolvconf symlink for now as it conflicts with the
# binary shipped by openresolv and provides limited compatibility
# only
%if %{with resolved}
rm %{buildroot}%{_sbindir}/resolvconf
rm %{buildroot}%{_mandir}/man1/resolvconf.1*
%endif
# FIXME: these symlinks should die.
mkdir -p %{buildroot}/{sbin,lib,bin}
ln -sf %{_bindir}/udevadm %{buildroot}/sbin/udevadm
@ -500,11 +512,6 @@ install -m0755 -D %{S:3} %{buildroot}/%{_sbindir}/systemd-sysv-convert
install -m0755 -D %{S:4} %{buildroot}/%{_prefix}/lib/systemd/systemd-sysv-install
%endif
# The rules that we shouldn't maintain
install -m0644 -D %{S:1000} %{buildroot}%{_udevrulesdir}/60-io-scheduler.rules
install -m0644 -D %{S:1001} %{buildroot}%{_udevrulesdir}/80-hotplug-cpu-mem.rules
install -m0644 -D %{S:1002} %{buildroot}%{_udevrulesdir}/99-wakeup-from-idle.rules
# Package the scripts used to fix all packaging issues. Also drop the
# "scripts-{systemd/udev}" prefix which is used because osc doesn't
# allow directory structure...
@ -539,13 +546,6 @@ mv %{buildroot}/%{_unitdir}/tmp.mount %{buildroot}/%{_datadir}/systemd/
# don't enable wall ask password service, it spams every console (bnc#747783)
rm %{buildroot}%{_unitdir}/multi-user.target.wants/systemd-ask-password-wall.path
# create %%{_libexecdir}/modules-load.d
mkdir -p %{buildroot}%{_libexecdir}/modules-load.d
cat << EOF > %{buildroot}%{_libexecdir}/modules-load.d/sg.conf
# load sg module at boot time
sg
EOF
# do not ship sysctl defaults in systemd package, will be part of
# aaa_base (in procps for now)
rm -f %{buildroot}%{_sysctldir}/50-default.conf
@ -806,7 +806,7 @@ systemctl daemon-reload || :
%postun -n libudev%{?mini}1 -p /sbin/ldconfig
%postun -n libsystemd0%{?mini} -p /sbin/ldconfig
%post container%{?mini}
%post container
%tmpfiles_create systemd-nspawn.conf
if [ $1 -gt 1 ]; then
# Convert /var/lib/machines subvolume to make it suitable for
@ -883,14 +883,17 @@ fi
/bin/systemd
/bin/systemd-ask-password
/bin/systemctl
%{_bindir}/busctl
%{_bindir}/bootctl
%{_bindir}/hostnamectl
%{_bindir}/kernel-install
%{_bindir}/localectl
%if %{with networkd}
%{_bindir}/networkctl
%endif
%{_bindir}/busctl
%{_bindir}/bootctl
%{_bindir}/kernel-install
%{_bindir}/hostnamectl
%{_bindir}/localectl
%if %{with resolved}
%{_bindir}/resolvectl
%endif
%{_bindir}/systemctl
%{_bindir}/systemd-analyze
%{_bindir}/systemd-delta
@ -927,8 +930,13 @@ fi
%{_prefix}/lib/kernel/install.d/50-depmod.install
%{_prefix}/lib/kernel/install.d/90-loaderentry.install
%dir %{_prefix}/lib/systemd
%dir %{_prefix}/lib/systemd/user
%dir %{_prefix}/lib/systemd/system
%dir %{_unitdir}
%{_userunitdir}
%if %{with coredump}
%exclude %{_prefix}/lib/systemd/systemd-coredump
%exclude %{_unitdir}/systemd-coredump*
%exclude %{_unitdir}/sockets.target.wants/systemd-coredump.socket
%endif
%if %{with journal_remote}
%exclude %{_unitdir}/systemd-journal-gatewayd.*
%exclude %{_unitdir}/systemd-journal-remote.*
@ -937,14 +945,11 @@ fi
%exclude %{_prefix}/lib/systemd/systemd-journal-remote
%exclude %{_prefix}/lib/systemd/systemd-journal-upload
%endif
%exclude %{_prefix}/lib/systemd/systemd-coredump
%exclude %{_prefix}/lib/systemd/systemd-udevd
%exclude %{_unitdir}/systemd-udev*.*
%exclude %{_unitdir}/*.target.wants/systemd-udev*.*
%exclude %{_unitdir}/initrd-udevadm-cleanup-db.service
%exclude %{_unitdir}/systemd-nspawn@.service
%exclude %{_unitdir}/systemd-coredump*
%exclude %{_unitdir}/sockets.target.wants/systemd-coredump.socket
%if %{with machined}
%exclude %{_prefix}/lib/systemd/systemd-machined
%exclude %{_unitdir}/systemd-machined.service
@ -971,7 +976,9 @@ fi
%{_unitdir}/*.socket
%{_unitdir}/*.wants
%{_unitdir}/*.path
%{_userunitdir}/
%{_unitdir}/user-.slice.d/
%{_prefix}/lib/systemd/systemd-*
%{_prefix}/lib/systemd/systemd
%{_prefix}/lib/systemd/libsystemd-shared-*.so
@ -1005,9 +1012,8 @@ fi
%{_prefix}/lib/systemd/boot/efi/*.stub
%endif
%dir %{_libexecdir}/modules-load.d
%dir %{_sysconfdir}/modules-load.d
%{_libexecdir}/modules-load.d/sg.conf
%{_libexecdir}/modules-load.d
%{_sysusersdir}/
%dir %{_sysconfdir}/tmpfiles.d
@ -1062,6 +1068,7 @@ fi
%{_datadir}/dbus-1/system.d/org.freedesktop.systemd1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.hostname1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.timedate1.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.timesync1.conf
%if %{with networkd}
%{_sysconfdir}/systemd/system/dbus-org.freedesktop.network1.service
%{_datadir}/dbus-1/system.d/org.freedesktop.network1.conf
@ -1071,7 +1078,7 @@ fi
%{_datadir}/dbus-1/system.d/org.freedesktop.resolve1.conf
%endif
# FIXME: why should we have to own this dir ?
# FIXME: why do we have to own this dir ?
%dir %{_prefix}/lib/modprobe.d
%{_prefix}/lib/modprobe.d/systemd.conf
@ -1099,6 +1106,7 @@ fi
%{_datadir}/dbus-1/system-services/org.freedesktop.login1.service
%{_datadir}/dbus-1/system-services/org.freedesktop.hostname1.service
%{_datadir}/dbus-1/system-services/org.freedesktop.timedate1.service
%{_datadir}/dbus-1/system-services/org.freedesktop.timesync1.service
%if %{with networkd}
%{_datadir}/dbus-1/system-services/org.freedesktop.network1.service
%endif
@ -1134,9 +1142,11 @@ fi
%{_mandir}/man8/systemd-journald*
%{_mandir}/man8/systemd-u[ps]*
%{_mandir}/man8/30-systemd-environment-d-generator.*
%if %{with coredump}
%exclude %{_mandir}/man1/coredumpctl*
%exclude %{_mandir}/man5/coredump.conf*
%exclude %{_mandir}/man8/systemd-coredump*
%endif
%exclude %{_mandir}/man*/*nspawn*
%if %{with machined}
%exclude %{_mandir}/man*/machinectl*
@ -1190,6 +1200,13 @@ fi
/sbin/poweroff
/sbin/telinit
/sbin/runlevel
%{_sbindir}/init
%{_sbindir}/reboot
%{_sbindir}/halt
%{_sbindir}/shutdown
%{_sbindir}/poweroff
%{_sbindir}/telinit
%{_sbindir}/runlevel
%if ! 0%{?bootstrap}
%{_mandir}/man1/init.1*
%{_mandir}/man8/halt.8*
@ -1267,7 +1284,8 @@ fi
%{_mandir}/man3/*udev*.3*
%endif
%files coredump%{?mini}
%if %{with coredump}
%files coredump
%defattr(-,root,root)
%{_bindir}/coredumpctl
%{_prefix}/lib/systemd/systemd-coredump
@ -1281,12 +1299,12 @@ fi
%{_mandir}/man5/coredump.conf*
%{_mandir}/man8/systemd-coredump*
%endif
%endif
%files container%{?mini}
%files container
%defattr(-,root,root)
%{_bindir}/systemd-nspawn
%{_unitdir}/systemd-nspawn@.service
%{_tmpfilesdir}/systemd-nspawn.conf
%if %{with networkd}
%{_prefix}/lib/systemd/network/80-container-ve.network
%{_prefix}/lib/systemd/network/80-container-vz.network
@ -1304,6 +1322,7 @@ fi
%{_datadir}/dbus-1/system.d/org.freedesktop.machine1.conf
%{_datadir}/dbus-1/system-services/org.freedesktop.machine1.service
%{_datadir}/polkit-1/actions/org.freedesktop.machine1.policy
%{_tmpfilesdir}/systemd-nspawn.conf
%endif
%if %{with importd}
%{_prefix}/lib/systemd/systemd-import*