Compare commits

...

158 Commits
master ... f36

Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek 53cd77523e Revert one patch that is causing selinux troubles 2023-02-02 13:09:43 +01:00
Zbigniew Jędrzejewski-Szmek f377b012f2 Revert patch that causes selinux avcs 2023-02-02 13:08:38 +01:00
Zbigniew Jędrzejewski-Szmek 5788784598 Version 250.10 2023-02-01 18:02:55 +01:00
Zbigniew Jędrzejewski-Szmek 08af0db2a3 Fix upgrade detection in %posttrans scriptlet (rhbz#2115094)
4047e4fb7b got things very wrong.
The trick with "[ $1 -eq 1 ]" doesn't work for transaction triggers
because the argument is not provided by rpm. We need to use a state
file to propagate the information from %post to %posttrans.

(cherry picked from commit bab6dfc23a)
2023-01-29 16:44:56 +01:00
Zbigniew Jędrzejewski-Szmek 5be6189564 Do not touch /etc/resolv.conf on upgrades
(cherry-picked from 4047e4fb7b)
2023-01-29 16:44:40 +01:00
Zbigniew Jędrzejewski-Szmek a69e3c53bf Add forgotten changelog entry
F36 is not using rpmautospec :(
2023-01-29 16:42:12 +01:00
Nicolas Chauvet aa4c1caf96 Fixup patch for scheduler
Signed-off-by: Nicolas Chauvet <kwizart@gmail.com>
2022-12-26 14:06:13 +01:00
Zbigniew Jędrzejewski-Szmek 8b7a753a0a Version 250.9
- Latest bugfix release with a bunch of fixes (homed, networkd, manager,
  resolved, documentation): rhbz#2133792, rhbz#2135778, rhbz#2152685,
  and also #2031810, #2121106.
- CVE-2022-4415: systemd: coredump not respecting fs.suid_dumpable kernel
  setting
2022-12-20 19:46:03 +01:00
Zbigniew Jędrzejewski-Szmek e518927ce6 Version 250.8 2022-07-14 15:10:16 +02:00
Daan De Meyer 5d156ae24a Move networkd man pages to networkd package 2022-07-14 15:07:00 +02:00
Zbigniew Jędrzejewski-Szmek d5adfef1ad Drop Obsoletes for systemd-standalone-{tmpfiles,sysusers}
It turns out that with the Obsoletes, dnf will just install the normal
systemd package if systemd-standalone-* is requested. The commit message
for b36512ad8f which added this says I tested
with local package builds (where it works), but not when going through the
full repo with all packages.

I'm adding the Provides instead, so that it's possible to request on or
the other more easily.
2022-07-14 15:06:05 +02:00
Zbigniew Jędrzejewski-Szmek 9751564650 Add patch to fix build on i686 2022-06-03 09:59:51 +02:00
Zbigniew Jędrzejewski-Szmek a5272297b3 Version 250.7 2022-06-02 20:52:27 +02:00
Zbigniew Jędrzejewski-Szmek 92e01919e5 Version 250.6 2022-05-25 17:48:20 +02:00
Zbigniew Jędrzejewski-Szmek 1ff9b90627 Supress errors from useradd/groupadd
(cherry picked from commit a65bd010dd)
2022-05-25 17:34:41 +02:00
Zbigniew Jędrzejewski-Szmek cfee8d47db Add Conflicts for older systemd and systemd-udev versions
(cherry picked from commit 23ee798cbd923f9e44444460c5994aa73f027082)
2022-05-25 17:33:33 +02:00
Zbigniew Jędrzejewski-Szmek 322bdbdf07 Run sysusers and friends also if systemd is not running
I tested this with 'sudo dnf --installroot=…', with both
systemd+system-udev installed in one transaction, and in two separate
transactions. Users are created as expected in both cases.

(cherry picked from commit 3a876074d2)
2022-05-20 16:35:27 +02:00
Zbigniew Jędrzejewski-Szmek 34346c3662 Remove bfq patch in packit builds
(cherry picked from commit 95c9cf61af)
2022-05-20 16:35:27 +02:00
Zbigniew Jędrzejewski-Szmek 54f0a8df78 Version 250.5 2022-05-20 16:24:54 +02:00
Zbigniew Jędrzejewski-Szmek 62cd72228a Fix regexp syntax 2022-03-18 13:39:32 +01:00
Zbigniew Jędrzejewski-Szmek 24e81e56a2 Fix the wrong file assignment done in previous version 2022-03-18 13:35:22 +01:00
Zbigniew Jędrzejewski-Szmek cf2f43fd04 Fix bug number 2022-03-17 21:41:47 +01:00
Zbigniew Jędrzejewski-Szmek ddc8f75483 Really move libcryptsetup plugins to -udev 2022-03-17 21:40:26 +01:00
David Tardon 5c19e29a84 Move systemd-cryptenroll to systemd-udev 2022-03-17 21:40:24 +01:00
Michael Catanzaro 750b1da141 Disable default DNS over TLS (#1889901) 2022-03-14 09:49:23 -05:00
Zbigniew Jędrzejewski-Szmek a31629ed62 Avoid trying to create the symlink if there's a dangling symlink already
'test -e' says 'no' for dangling symlinks.

Let's also ignore the error if this fails. We shouldn't fail the
transaction.
2022-02-24 20:27:51 +01:00
Zbigniew Jędrzejewski-Szmek 3cd1f84f9a Specify owner of utmp/wtmp/btmp/lastlog as root in the rpm listing
The analysis in 1ba983e0be was wrong.
Both systemd-journal and utmp need to be created. For some reason rpm
reports only the first group which is not available. It was
complaining about systemd-journal, and when that was "fixed", it
started complaining about utmp. Let's apply the same logic here.
Non-root users of files owned by utmp group should only matter after a
reboot, and tmpfiles will adjust the ownership.

Running transaction
  Running scriptlet: filesystem-3.16-2.fc36.x86_64                        1/1
  Preparing        :                                                      1/1
  Installing       : libgcc-12.0.1-0.8.fc37.x86_64                       1/76
  Running scriptlet: libgcc-12.0.1-0.8.fc37.x86_64                       1/76
  Installing       : fedora-release-identity-basic-37-0.2.noarch         2/76
  Installing       : tzdata-2021e-4.fc36.noarch                          3/76
  Installing       : pcre2-syntax-10.39-1.fc36.1.noarch                  4/76
  Installing       : ncurses-base-6.2-9.20210508.fc36.noarch             5/76
  Installing       : fedora-gpg-keys-37-0.1.noarch                       6/76
  Installing       : fedora-release-37-0.2.noarch                        7/76
  Installing       : fedora-release-common-37-0.2.noarch                 8/76
  Installing       : fedora-repos-rawhide-37-0.1.noarch                  9/76
  Installing       : fedora-repos-37-0.1.noarch                         10/76
  Installing       : setup-2.13.9.1-3.fc36.noarch                       11/76
  Running scriptlet: setup-2.13.9.1-3.fc36.noarch                       11/76
  Installing       : filesystem-3.16-2.fc36.x86_64                      12/76
  Installing       : basesystem-11-13.fc36.noarch                       13/76
  Installing       : glibc-minimal-langpack-2.35-2.fc37.x86_64          14/76
  Installing       : glibc-common-2.35-2.fc37.x86_64                    15/76
  Running scriptlet: glibc-2.35-2.fc37.x86_64                           16/76
  Installing       : glibc-2.35-2.fc37.x86_64                           16/76
  Running scriptlet: glibc-2.35-2.fc37.x86_64                           16/76
  Installing       : ncurses-libs-6.2-9.20210508.fc36.x86_64            17/76
  Installing       : bash-5.1.16-2.fc36.x86_64                          18/76
  Running scriptlet: bash-5.1.16-2.fc36.x86_64                          18/76
  Installing       : libuuid-2.38-0.2.fc36.x86_64                       19/76
  Installing       : libcap-2.48-4.fc36.x86_64                          20/76
  Installing       : libattr-2.5.1-4.fc36.x86_64                        21/76
  Installing       : libacl-2.3.1-3.fc36.x86_64                         22/76
  Installing       : libzstd-1.5.2-1.fc36.x86_64                        23/76
  Installing       : xz-libs-5.2.5-8.fc36.x86_64                        24/76
  Installing       : zlib-1.2.11-31.fc36.x86_64                         25/76
  Installing       : bzip2-libs-1.0.8-11.fc36.x86_64                    26/76
  Installing       : libcap-ng-0.8.2-9.fc36.x86_64                      27/76
  Installing       : audit-libs-3.0.7-1.fc36.x86_64                     28/76
  Installing       : libsepol-3.3-3.fc36.x86_64                         29/76
  Installing       : libxcrypt-4.4.28-1.fc37.x86_64                     30/76
  Installing       : lz4-libs-1.9.3-4.fc36.x86_64                       31/76
  Installing       : pcre2-10.39-1.fc36.1.x86_64                        32/76
  Installing       : libselinux-3.3-4.fc36.x86_64                       33/76
  Installing       : libsemanage-3.3-3.fc37.x86_64                      34/76
  Installing       : shadow-utils-2:4.11.1-2.fc37.x86_64                35/76
  Installing       : sed-4.8-10.fc36.x86_64                             36/76
  Installing       : dbus-common-1:1.13.20-3.fc36.noarch                37/76
  Running scriptlet: dbus-common-1:1.13.20-3.fc36.noarch                37/76
  Installing       : alternatives-1.19-2.fc36.x86_64                    38/76
  Installing       : expat-2.4.6-1.fc37.x86_64                          39/76
  Installing       : gmp-1:6.2.1-2.fc36.x86_64                          40/76
  Installing       : json-c-0.15-3.fc36.x86_64                          41/76
  Installing       : libargon2-20171227-8.fc36.x86_64                   42/76
  Installing       : libeconf-0.4.0-3.fc36.x86_64                       43/76
  Installing       : pam-libs-1.5.2-11.fc37.x86_64                      44/76
  Installing       : libffi-3.4.2-8.fc36.x86_64                         45/76
  Installing       : p11-kit-0.24.1-2.fc36.x86_64                       46/76
  Installing       : libgpg-error-1.44-1.fc36.x86_64                    47/76
  Installing       : libgcrypt-1.10.0-1.fc36.x86_64                     48/76
  Installing       : systemd-libs-250.3-4.fc37.x86_64                   49/76
  Running scriptlet: dbus-broker-29-5.fc36.x86_64                       50/76
useradd warning: dbus's uid 81 outside of the SYS_UID_MIN 201 and SYS_UID_MAX 999 range.

  Installing       : dbus-broker-29-5.fc36.x86_64                       50/76
  Running scriptlet: dbus-broker-29-5.fc36.x86_64                       50/76
  Installing       : dbus-1:1.13.20-3.fc36.x86_64                       51/76
  Installing       : libseccomp-2.5.3-2.fc36.x86_64                     52/76
  Installing       : libsmartcols-2.38-0.2.fc36.x86_64                  53/76
  Installing       : libtasn1-4.18.0-2.fc36.x86_64                      54/76
  Installing       : p11-kit-trust-0.24.1-2.fc36.x86_64                 55/76
  Running scriptlet: p11-kit-trust-0.24.1-2.fc36.x86_64                 55/76
  Installing       : libunistring-1.0-1.fc36.x86_64                     56/76
  Installing       : libidn2-2.3.2-4.fc36.x86_64                        57/76
  Installing       : pcre-8.45-1.fc36.1.x86_64                          58/76
  Installing       : grep-3.7-2.fc36.x86_64                             59/76
  Installing       : crypto-policies-20220203-2.git112f859.fc36.noarch  60/76
  Running scriptlet: crypto-policies-20220203-2.git112f859.fc36.noarch  60/76
  Installing       : coreutils-common-9.0-3.fc36.x86_64                 61/76
  Installing       : openssl-libs-1:3.0.0-1.fc36.x86_64                 62/76
  Installing       : coreutils-9.0-3.fc36.x86_64                        63/76
  Running scriptlet: ca-certificates-2021.2.52-3.fc36.noarch            64/76
  Installing       : ca-certificates-2021.2.52-3.fc36.noarch            64/76
  Running scriptlet: ca-certificates-2021.2.52-3.fc36.noarch            64/76
  Installing       : libblkid-2.38-0.2.fc36.x86_64                      65/76
  Running scriptlet: libblkid-2.38-0.2.fc36.x86_64                      65/76
  Installing       : libmount-2.38-0.2.fc36.x86_64                      66/76
  Installing       : util-linux-core-2.38-0.2.fc36.x86_64               67/76
  Running scriptlet: util-linux-core-2.38-0.2.fc36.x86_64               67/76
  Installing       : libfdisk-2.38-0.2.fc36.x86_64                      68/76
  Installing       : kmod-libs-29-7.fc36.x86_64                         69/76
  Installing       : cryptsetup-libs-2.4.3-2.fc36.x86_64                70/76
  Installing       : device-mapper-libs-1.02.175-7.fc36.x86_64          71/76
  Installing       : device-mapper-1.02.175-7.fc36.x86_64               72/76
  Installing       : systemd-pam-250.3-4.fc37.x86_64                    73/76
  Installing       : systemd-resolved-250.3-4.fc37.x86_64               74/76
  Running scriptlet: systemd-resolved-250.3-4.fc37.x86_64               74/76
  Installing       : systemd-networkd-250.3-4.fc37.x86_64               75/76
  Running scriptlet: systemd-networkd-250.3-4.fc37.x86_64               75/76
  Installing       : systemd-250.3-4.fc37.x86_64                        76/76
warning: group utmp does not exist - using root
warning: group utmp does not exist - using root
warning: group utmp does not exist - using root
warning: group utmp does not exist - using root

  Running scriptlet: systemd-250.3-4.fc37.x86_64                        76/76
Creating group 'utmp' with GID 22.
Creating group 'input' with GID 104.
Creating group 'kvm' with GID 36.
Creating group 'render' with GID 105.
Creating group 'sgx' with GID 106.
Creating group 'systemd-journal' with GID 190.
Creating group 'systemd-network' with GID 192.
Creating user 'systemd-network' (systemd Network Management) with UID 192 and GID 192.
Creating group 'systemd-oom' with GID 999.
Creating user 'systemd-oom' (systemd Userspace OOM Killer) with UID 999 and GID 999.
Creating group 'systemd-resolve' with GID 193.
Creating user 'systemd-resolve' (systemd Resolver) with UID 193 and GID 193.

  Running scriptlet: filesystem-3.16-2.fc36.x86_64                      76/76
  Running scriptlet: ca-certificates-2021.2.52-3.fc36.noarch            76/76
  Running scriptlet: systemd-resolved-250.3-4.fc37.x86_64               76/76
'/etc/resolv.conf' -> '../run/systemd/resolve/stub-resolv.conf'

  Running scriptlet: systemd-250.3-4.fc37.x86_64                        76/76
2022-02-24 00:15:33 +01:00
Zbigniew Jędrzejewski-Szmek 890fc095b6 Move part of %post scriptlet for resolved to %posttrans (rhbz#2018913) 2022-02-24 00:15:33 +01:00
Zbigniew Jędrzejewski-Szmek cf9a3be466 Bump release 2022-02-16 22:42:05 +01:00
Zbigniew Jędrzejewski-Szmek a262b349c7 Add patch for new kernel headers
It's already included in systemd-stable, but v250.4 hasn't been tagged
yet.

(cherry picked from commit 4c2d7265ec)
2022-02-16 22:39:01 +01:00
Zbigniew Jędrzejewski-Szmek f4416d7304 Drop unused dependencies for scriptlets
(cherry picked from commit e48b9066b7)
2022-02-16 22:38:56 +01:00
Zbigniew Jędrzejewski-Szmek 7cb9d9ece0 Specify owner of /var/log/journal as root in the rpm listing
$ rpm -qlv systemd |grep -v 'root     root'
-rw-rw-r--    1 root     utmp         0 Jan 22 03:38 /run/utmp
-rw-rw----    1 root     utmp         0 Jan 22 03:38 /var/log/btmp
-rw-rw-r--    1 root     utmp         0 Jan 22 03:38 /var/log/lastlog
-rw-rw-r--    1 root     utmp         0 Jan 22 03:38 /var/log/wtmp
drwxr-sr-x    2 root     systemd-     0 Jan 22 03:38 /var/log/journal

During installation rpm would log an error that systemd-journal group
is unknown. We create all our users by calling sysusers in the %post
scriptlet, but that is too late. To avoid the warning we could either
add a %pre scriptlet, but that'd require adding a dependency on
shadow-utils for groupadd, since we can't use our own tools before we
are installed. Let's instead create the directory owned by root.root,
and change the group afterwards. The group ownership is for file
ownership, and in the worst case (we don't assign the group or set
mode +s), unprivileged users will not be able to read the logs.

We also use 'utmp' group, but that is provided by setup.rpm and is not
an issue.

https://bugzilla.redhat.com/show_bug.cgi?id=2018913#c24
(cherry picked from commit 1ba983e0be)
2022-02-16 22:38:52 +01:00
Zbigniew Jędrzejewski-Szmek e65d52fe63 Drop scriptlet for handling nobody user upgrades from Fedora <28
For https://fedoraproject.org/wiki/Changes/RenameNobodyUser a scriptlet
was introduced with prevents nss-systemd from synthesizing entries for nobody.
Let's remove the scriptlet: very few people upgrade from such old systems,
and even if they do, having a duplicate entry for nobody is annoying
but hardly a big problem.

(The other side of this, support in nss-systemd remains in place.)

This allows deps on the tools used in the scriptlet to be dropped from -libs.

While at it, also drop noop ldconfig scriptlets.

(cherry picked from commit cac0b2a5a7)
2022-02-16 22:38:48 +01:00
Zbigniew Jędrzejewski-Szmek f42ae67ed3 Add pam_namespace to systemd-user pam config 2022-02-10 17:42:47 +01:00
Zbigniew Jędrzejewski-Szmek 3ce3375cc6 Remove duplicated pam systemd-user file 2022-02-10 17:37:56 +01:00
Fedora Release Engineering c763537617 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-22 02:12:42 +00:00
Zbigniew Jędrzejewski-Szmek 238e8e0e64 Fix creation of /var/log/lastlog
I have no idea how I managed to screw that up yesterday…
2022-01-19 08:31:33 +01:00
Zbigniew Jędrzejewski-Szmek f97cf5817a Take ownership of /var/log/lastlog
https://pagure.io/setup/pull-request/30 and
https://src.fedoraproject.org/rpms/util-linux/pull-request/10 are the
opposite steps for setup and util-linux.
2022-01-18 16:22:31 +01:00
Zbigniew Jędrzejewski-Szmek 3fe8cebea3 Version 250.3 2022-01-18 12:56:37 +01:00
Zbigniew Jędrzejewski-Szmek d1787ccd07 Version 250.2 2022-01-10 22:04:43 +01:00
Zbigniew Jędrzejewski-Szmek c1e2f480f7 Disable bpf filters on s390x 2022-01-04 18:27:08 +01:00
Zbigniew Jędrzejewski-Szmek 206f30e9fd Version 250.1 2022-01-04 18:27:08 +01:00
Zbigniew Jędrzejewski-Szmek 620e0cff6b Install only license files relevant to the effective license
We installed all the license files for the licenses used in the sources
(as %doc), but that doesn't seem useful.
2022-01-04 18:27:08 +01:00
Zbigniew Jędrzejewski-Szmek 60d0bbefe2 Disable bpf filters on arm64 2021-12-30 21:42:10 +01:00
Zbigniew Jędrzejewski-Szmek 114f45fe1f Skip bpf filtering on arm32 and ppc64el 2021-12-28 16:10:15 +01:00
Zbigniew Jędrzejewski-Szmek 7993a98ea4 Enable bpf-framework 2021-12-25 15:31:58 +01:00
Zbigniew Jędrzejewski-Szmek 3c872dc5d9 Fix warning about systemd-boot-update.service not existing on arm32 2021-12-25 11:02:05 +01:00
Zbigniew Jędrzejewski-Szmek 2edf38c273 Version 250 2021-12-23 21:15:44 +01:00
Zbigniew Jędrzejewski-Szmek 34a8fa5907 Switch unit status name format to 'combined' 2021-12-23 13:45:31 +01:00
Zbigniew Jędrzejewski-Szmek b1af825426 Version 250-rc3 2021-12-20 19:48:35 +01:00
Zbigniew Jędrzejewski-Szmek 7f4e198603 Create /etc/resolv.conf symlink if nothing is present yet 2021-12-18 17:40:12 +01:00
Zbigniew Jędrzejewski-Szmek 184bb74091 Move libcryptsetup-token plugins to -udev 2021-12-14 19:09:00 +01:00
Zbigniew Jędrzejewski-Szmek 711d924ba3 Move systemd-boot-update.service to -udev subpackage
It will not be enabled on upgrades, but I think this is OK. sd-boot
is not very widely used anyway.
2021-12-12 13:01:40 +01:00
Pavel Březina 0898a89444 spec: remove nsswitch.conf scriptlet
Related to: https://fedoraproject.org/wiki/Changes/Make_Authselect_Mandatory

Both systemd and resolved nss modules are now enabled by default in
authselect. Users are now expected to use authselect to configure
the system and packages should no longer support non-authselect
configurations.

Resolves: rhbz#2023743
2021-12-10 17:09:21 +01:00
Zbigniew Jędrzejewski-Szmek b24b99d669 Add Recommends for dlopened libs and move files into subpackages 2021-12-09 23:23:39 +01:00
Zbigniew Jędrzejewski-Szmek 1634b1b16a Revert "spec: remove nsswitch.conf scriptlet"
This reverts commit 2afe364ac4.

Unfortunately the build failed on dependencies:
DEBUG util.py:444:  Error:
DEBUG util.py:444:   Problem: package authselect-libs-1.3.0-1.fc36.x86_64 conflicts with glibc < 2.34.9000-27 provided by glibc-2.34.9000-26.fc36.x86_64
DEBUG util.py:444:    - package util-linux-2.37.2-1.fc36.x86_64 requires /etc/pam.d/system-auth, but none of the providers can be installed
DEBUG util.py:444:    - package gawk-5.1.1-1.fc36.x86_64 requires libm.so.6()(64bit), but none of the providers can be installed
DEBUG util.py:444:    - package gawk-5.1.1-1.fc36.x86_64 requires libm.so.6(GLIBC_2.2.5)(64bit), but none of the providers can be installed
DEBUG util.py:444:    - package gawk-5.1.1-1.fc36.x86_64 requires libm.so.6(GLIBC_2.29)(64bit), but none of the providers can be installed
DEBUG util.py:444:    - package gawk-5.1.1-1.fc36.x86_64 requires rtld(GNU_HASH), but none of the providers can be installed
DEBUG util.py:444:    - package gawk-5.1.1-1.fc36.x86_64 requires libc.so.6(GLIBC_2.34)(64bit), but none of the providers can be installed
DEBUG util.py:444:    - conflicting requests

I need to build the package again in rawhide, so this needs to be reverted
for now.
2021-12-09 18:49:59 +01:00
Pavel Březina 2afe364ac4 spec: remove nsswitch.conf scriptlet
Related to: https://fedoraproject.org/wiki/Changes/Make_Authselect_Mandatory

Both systemd and resolved nss modules are now enabled by default in
authselect. Users are now expected to use authselect to configure
the system and packages should no longer support non-authselect
configurations.

Resolves: rhbz#2023743
2021-12-09 18:27:16 +01:00
Zbigniew Jędrzejewski-Szmek 11bf124056 Fix memleak 2021-12-09 16:02:25 +01:00
Zbigniew Jędrzejewski-Szmek ce4156b3dd Version 250-rc1
The crypto backend is switched to openssl.
gcrypt is still used for FSS in libsystemd.so.
2021-12-09 16:02:25 +01:00
Zbigniew Jędrzejewski-Szmek e19aaa4604 Drop comments about already-merged pull request 2021-12-03 15:48:22 +01:00
Ludwig Nussel 6ffa8d89d6 Fix video link 2021-12-02 16:28:17 +00:00
Zbigniew Jędrzejewski-Szmek d1ad6b189d %ghost /var/lib/{machines,portables} 2021-11-24 10:00:32 +01:00
Davide Cavalca b7c95ddd9e Disable legacy iptables support 2021-11-19 08:29:38 -08:00
Luca BRUNO 21ca64d8e0
sysusers/provides: parse and output static IDs
This adds support for parsing static UIDs and GIDs from sysusers.d
fragments, and automatically forwarding them to the generated
'Provides' entries.
It will allow inspecting users/groups with static IDs directly
from package metadata:
```
$ rpm --query --provides --package gdm-41.0-3.fc36.x86_64.rpm
[...]
group(gdm) = 42
user(gdm) = 42
```
2021-11-16 16:36:58 +00:00
Zbigniew Jędrzejewski-Szmek 2d54326a8c Bump release
Oh, no autorelease here!
2021-11-15 14:09:32 +01:00
Zbigniew Jędrzejewski-Szmek 1d712f8acf Supress errors on selinux systems
See https://bugzilla.redhat.com/show_bug.cgi?id=2023332.
https://bugzilla.redhat.com/show_bug.cgi?id=2023332 is also related.
2021-11-15 13:47:07 +01:00
Zbigniew Jędrzejewski-Szmek 87e1ce3317 Version 249.7 2021-11-14 16:12:23 +01:00
Petr Menšík 27cc5e08c2 Switch to NM resolver on systemd-resolved uninstall
If /etc/resolv.conf pointed to systemd-resolved stub configuration, it
is obvious it would stop working. Compensate it by deleting the link, it
would be created again on installation. Try to pass ownership to NM,
which also provides similar file. Keep it missing otherwise, might be
created by unknown tool on reboot.

Signed-off-by: Petr Menšík <pemensik@redhat.com>
2021-11-14 09:38:52 +00:00
Kir Kolyshkin 9309bd3038 Fix scope activation from a user instance
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2021-11-11 15:36:06 -08:00
Zbigniew Jędrzejewski-Szmek 89ea50d07a Fix helper to restart user units with older systemd 2021-11-08 10:27:00 +01:00
Zbigniew Jędrzejewski-Szmek ebeb76453a Version 249.6 2021-11-04 14:33:29 +01:00
Adam Williamson 6a6e2b723e Backport PR #133 to fix boot 2021-10-29 14:25:29 -07:00
Zbigniew Jędrzejewski-Szmek 837a32b7cd Version 249.5 2021-10-13 09:13:06 +02:00
Zbigniew Jędrzejewski-Szmek 013143c94e Wrap package descriptions at 80 columns 2021-09-29 17:19:21 +02:00
Zbigniew Jędrzejewski-Szmek 9802d8ce77 Fix build with the latest kernels 2021-09-15 16:59:31 +02:00
Sahana Prasad 46a408102a Rebuilt with OpenSSL 3.0.0 2021-09-14 19:16:25 +02:00
Zbigniew Jędrzejewski-Szmek 7a99d80faa Version 249.4 2021-08-24 14:51:54 +02:00
Zbigniew Jędrzejewski-Szmek b0031ef378 Version 294.3 2021-08-06 16:11:50 +02:00
Zbigniew Jędrzejewski-Szmek 4d6b947613 Version 249.2 2021-07-23 17:05:52 +02:00
Michael Catanzaro e78d9b34cb Build with -Ddefault-dns-over-tls=opportunistic 2021-07-23 12:45:59 +02:00
Zbigniew Jędrzejewski-Szmek c61b9c5d29 Version 249.1 2021-07-20 15:18:39 +02:00
Zbigniew Jędrzejewski-Szmek a6bdda479d Add sfdisk to BuildRequires
https://bugzilla.redhat.com/show_bug.cgi?id=1983450
2021-07-20 09:40:39 +02:00
Neal Gompa a0d61b955d Use correct NEWS URLs for systemd 249 releases in changelog entries 2021-07-07 20:54:55 -04:00
Neal Gompa a54f704deb Make local checkout builds use Release: 0
This ensures that local checkout builds always have a lower Release
than officially built snapshot releases.
2021-07-07 20:54:21 -04:00
Zbigniew Jędrzejewski-Szmek 6dd3849ca6 Version 249 2021-07-07 21:47:57 +02:00
Zbigniew Jędrzejewski-Szmek d0f46326ec Version 249-rc3 2021-07-01 20:17:16 +02:00
Zbigniew Jędrzejewski-Szmek c323a213de Adjust check for outdated triggers file
With the switch to jinja2, the file is generated during normal build, so
we need to move the check later.
2021-06-25 18:30:40 +02:00
Zbigniew Jędrzejewski-Szmek 379f157396 Version 249-rc2 2021-06-25 17:25:07 +02:00
Adam Williamson 2383d1a974 top systemd providing systemd-resolved, now the subpackage exists 2021-06-17 14:28:18 -07:00
Zbigniew Jędrzejewski-Szmek b764a2387b resolved: fix skipping of scriptlet on upgrades
We don't want to preset and we don't want to create the symlink either.
2021-06-16 22:37:47 +02:00
Petr Menšík be0f563352 Create separate systemd-resolved package
Move systemd-resolved daemon and related tools to its own subpackage.
Keep only nss-resolve in systemd, the service itself is moved to
subpackage. It has quite different functionality than systemd package
and deserves own package.

Still recommend resolved from main package

Keep backward compatibility and still recommend systemd-resolved. Allow
removal, but would be installed by default.
2021-06-16 22:37:44 +02:00
Davide Cavalca 1627707067 Switch systemd-oomd-defaults to noarch 2021-06-16 22:22:24 +02:00
Zbigniew Jędrzejewski-Szmek 807d245ab1 Use ternarny operators 2021-06-16 22:22:12 +02:00
Zbigniew Jędrzejewski-Szmek a49146325a Use systemd-sysusers to create users
This allows a fairly big dependency chain to be pruned in the future,
now other packages pull in setup:

  /usr/bin/groupadd → shadow-utils → setup.

It seems we don't need the setup rpm for anything in minimal installations.

There should be no functional change. Testing will be prudent.
2021-06-16 22:21:39 +02:00
Zbigniew Jędrzejewski-Szmek 33320dcf58 Version 249-rc1 2021-06-16 22:21:12 +02:00
Zbigniew Jędrzejewski-Szmek 535a8b5b98 Pull in util-linux-core in preference over util-linux
I hope that ( … or … ) does the right thing here.

See b50e3f3a07.
2021-06-16 22:17:30 +02:00
Zbigniew Jędrzejewski-Szmek a82ca9b3d8 Only pull in systemd-rpm-macros if rpm-build is installed
systemd-rpm-macros is small, but it pulls in bash and is always one more package.
It is only useful if the rpm building utilities are there, so let's conditionalize
on that.
2021-06-16 22:17:26 +02:00
Zbigniew Jędrzejewski-Szmek 05f788e704 Add support and directions for doing builds with --build-in-place 2021-06-01 09:01:14 +02:00
Zbigniew Jędrzejewski-Szmek 975bf63eb5 Shellcheckify sysusers.generate-pre.sh
There should be almost no functional change, but shellcheck complains
less. User/group descriptions with escaped characters are handled
properly.
2021-06-01 09:01:14 +02:00
Zbigniew Jędrzejewski-Szmek 1575061001 sysusers.generate-pre: indentation 2021-06-01 09:01:14 +02:00
David Tardon b5ae705da9 Fix ELF dependencies on 32-bit architectures 2021-05-20 17:08:36 +02:00
Zbigniew Jędrzejewski-Szmek d58c95a2fe Add Provides:systemd-resolved
This is in preparation for https://src.fedoraproject.org/rpms/systemd/pull-request/52,
splitting out systemd-resolved subpackage. The new package should
be pulled in by comps, but this would create a "flag day", because
the systemd-resolved name is currently unknown. So let's add the
virtual Provides now. Even if the package is never split out, it doesn't
cause any harm.
2021-05-19 11:28:14 +02:00
David Tardon 0806bb5b1d Drop superfluous Recommends: libcryptsetup
systemd-cryptsetup and systemd-veritysetup link with libcryptsetup, so
this dependency is already in Requires. (Well, not in bootstrap mode,
but I'm pretty sure we don't want to publish rpms built in bootstrap
mode, so it shouldn't matter.)
2021-05-18 14:11:41 +02:00
Zbigniew Jędrzejewski-Szmek ec9ca01d16 Adjust BuildRequires
python3-devel hasn't been needed since we split out the python module,
a few years ago.

Pull in jinja2 for https://github.com/systemd/systemd/pull/19630.
2021-05-17 08:04:52 +02:00
Zbigniew Jędrzejewski-Szmek 67ce438bf3 Version 248.3 2021-05-15 18:59:15 +02:00
Zbigniew Jędrzejewski-Szmek bc53b30e4d Version 248.2 2021-05-07 16:25:27 +02:00
Zbigniew Jędrzejewski-Szmek db26d980dd Correct file modes for %ghosted files
/var/log/btmp was changed in https://github.com/systemd/systemd/commit/f6e64b78cc,
but never adjusted here.
2021-05-07 16:25:27 +02:00
Zbigniew Jędrzejewski-Szmek 141af483cc Pull in tpm2-tss dependency 2021-05-06 15:31:15 +02:00
Zbigniew Jędrzejewski-Szmek 42c305ce28 Version 248.1 2021-05-06 15:31:14 +02:00
Adam Williamson 58e2c63a03 Re-enable resolved caching, hope all major bugs are fixed
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-04-06 13:40:25 -07:00
Zbigniew Jędrzejewski-Szmek c6e8c30b17 Mark README files as doc
/etc/rc.d/init.d/README was marked as %config(noreplace), which seems
to be a clear bug. But this primarily affects new README files in
all the .d directories.
2021-03-31 10:03:27 +02:00
Zbigniew Jędrzejewski-Szmek f0032c4da6 Version 248 2021-03-31 10:02:07 +02:00
Anita Zhang a62a7c17cc Increase oomd user memory pressure limit to 50% for 20s (#1941170)
There isn't really a one size fits all policy since pressure can change
a lot based on whether you have flash or spinning disks (and your swap
configuration as well). But let's be a bit more conservative here.
2021-03-30 12:11:37 +02:00
Zbigniew Jędrzejewski-Szmek a004447ba3 owner-check: make sending of mails optional 2021-03-30 12:11:34 +02:00
Zbigniew Jędrzejewski-Szmek 310b8e6c95 Move nss-myhostname before nss-mdns4 2021-03-26 17:51:05 +01:00
Zbigniew Jędrzejewski-Szmek d6a1608082 Make sure not to lose systemd-networkd enablement when upgrading from F32 2021-03-26 17:49:04 +01:00
Zbigniew Jędrzejewski-Szmek 65248cc181 Revert patch that seems to cause problems with dns resolution 2021-03-24 11:46:41 +01:00
Zbigniew Jędrzejewski-Szmek 6384abb1d1 A few more patches 2021-03-23 01:08:51 +01:00
Adam Williamson 58e51a6f6e Disable resolved cache via config snippet (#1940715) 2021-03-19 18:33:30 -07:00
Yu Watanabe 98c9d9f8c5 Disable epoll_pwait2() in sd-event 2021-03-19 04:34:25 +09:00
Yu Watanabe a602ccade1 Drop #pragma message from patch 2021-03-19 02:10:21 +09:00
Yu Watanabe f7802408f9 Disable epoll2_pwait2() for 32bit archs 2021-03-19 01:27:13 +09:00
Yu Watanabe 45fafe9791 Version 248-rc4 2021-03-18 23:41:25 +09:00
Adam Williamson 22e7d02418 Backport PR #19009 to fix CNAME redirect resolving some more (#1933433) 2021-03-16 14:58:01 -07:00
Zbigniew Jędrzejewski-Szmek 4fcd500d9b Patch to fix tests on i686 and arm32 2021-03-11 20:45:51 +01:00
Zbigniew Jędrzejewski-Szmek 0a7c16de28 Version 248-rc3 2021-03-11 15:26:42 +01:00
Zbigniew Jędrzejewski-Szmek 274df24b64 Add work-around for crash during upgrades 2021-03-11 13:23:45 +01:00
Zbigniew Jędrzejewski-Szmek 4b2af1ee0f Backport one patch for beta freeze exception 2021-03-11 12:37:25 +01:00
Adam Williamson e5f70dadb2 Backport PR #18892 to fix stub resolver CNAME chain resolving (#1933433) 2021-03-06 11:08:13 -08:00
Josh Boyer 13d1341b10 Don't set the fallback hostname to "fedora" on non-Fedora OSes
From a branding perspective, having the fallback hostname be "fedora" for an OS that is not Fedora Linux is incorrect.  Go back to using "localhost" in those cases.
2021-03-01 14:10:02 +00:00
Zbigniew Jędrzejewski-Szmek 4d3f7b560d Version 248-rc2 2021-02-23 19:08:11 +01:00
Zbigniew Jędrzejewski-Szmek 729e28aae5 Bump release 2021-02-23 09:46:02 +01:00
Zbigniew Jędrzejewski-Szmek 89b56696f1 Update transtriggers
We needed to rebuild anyway to use updated macros internally, so no big loss ;)
2021-02-23 09:36:03 +01:00
Zbigniew Jędrzejewski-Szmek e0b3ead233 Restore trigger freshness check
This reverts commit db19323db2.
Paths are adjusted. The condition is inverted to actually check the
right thing.

The test is moved before build to make it easier to see. Meson does
the .in substitutions immediately after configuration, so this should
be easier to see.
2021-02-23 09:33:34 +01:00
Zbigniew Jędrzejewski-Szmek 9a7ed05bbc Upload sources 2021-02-23 02:41:30 +01:00
Zbigniew Jędrzejewski-Szmek 1992c5552f Version 248-rc1 2021-02-23 02:15:45 +01:00
Zbigniew Jędrzejewski-Szmek 3ba8081e77 Use %version_no_tilde instead of custom macro 2021-02-23 01:48:03 +01:00
Michel Alexandre Salim 2d2d8b7165 Increase oomd user memory pressure limit to 10% (#1929856)
Signed-off-by: Michel Alexandre Salim <salimma@fedoraproject.org>
2021-02-17 16:19:16 -08:00
Zbigniew Jędrzejewski-Szmek 0257583091 Rename trigger to appease rpm 2021-02-16 18:59:45 +01:00
Michel Alexandre Salim 9a909cfdf6 Add `%triggerun` to call systemctl preset for systemd-oomd
Signed-off-by: Michel Alexandre Salim <salimma@fedoraproject.org>
2021-02-16 08:39:32 -08:00
Zbigniew Jędrzejewski-Szmek c4675f57dd Rework %post/%postun scriptlets
All scriptlets to disable services upon final package removal are
removed. Removing rpm from a running system is not allowed by dnf and
would generally result in mayhem. Trying to clean up our enablement
symlinks is not useful. Nobody tests this and it almost certainly was
incomplete.

Only do 'journalctl --update-catalog' if /var is writeable, and remove
suppression of errors from 'journalctl --update-catalog'. It shouldn't
fail, and it it does, we should figure out why.

On upgrades, execute 'journalctl --update-catalog' and
'systemd-tmpfiles --create' in %postun, not %post. This way we won't
look at possibly-about-to-be-removed configuration.

Restart various services upon upgrade: systemd-timedated.service
systemd-timesyncd.service systemd-portabled.service
systemd-homed.service systemd-hostnamed.service
systemd-journald.service systemd-localed.service systemd-userdbd.service.
Not doing this was a bug.

user@.service and systemd-logind.service will need special handling
and are not done in this patch.
2021-02-11 14:46:01 +01:00
Anita Zhang 834f04c00b Bump to 247.3-2 for systemd-oomd finishes and systemd-oomd-defaults subpackage
Changes for https://fedoraproject.org/wiki/Changes/EnableSystemdOomd.
Backports primarily PR #18361, #18444, and #18401 (#18401 is not merged
at the time of writing this commit) + some minor PRs to handle conflicts.
Creates systemd-oomd-defaults subpackage to install unit drop-ins that
will configure systemd-oomd to monitor and act.
2021-02-11 13:09:33 +01:00
Zbigniew Jędrzejewski-Szmek d1321e2ba9 Add script to mail inactive maintainers 2021-02-11 13:08:32 +01:00
Anita Zhang 0175bb7014 Create systemd-oom user in %pre 2021-02-11 12:03:41 +00:00
Tristan Cacqueray ee7e4881a0 Add zuul configuration to exclude standalone sub-packages in install test
Depends-On: https://pagure.io/zuul-distro-jobs/pull-request/94
2021-02-05 16:20:52 +00:00
Zbigniew Jędrzejewski-Szmek 8a86f313c7 Version 247.3 2021-02-02 18:06:07 +01:00
Zbigniew Jędrzejewski-Szmek 5baa3097f2 Merge repeated systemctl invocations in scriptlets 2021-02-02 15:22:45 +01:00
Zbigniew Jędrzejewski-Szmek 7e740c5252 Add rpminspect file to skip failing tests 2021-02-02 15:22:41 +01:00
Zbigniew Jędrzejewski-Szmek 54b5e90428 Restore patches that were removed by mistake
Reverses one chunk of 88c9300a60.
2021-02-01 19:28:03 +01:00
Zbigniew Jędrzejewski-Szmek 88c9300a60 Reorder patch to separate downstream-only patches
For https://github.com/systemd-ci-incubator/systemd/pull/5:
we want to drop any upstream patches when building from upstream git.
2021-01-28 12:00:51 +01:00
Fedora Release Engineering 3f3c4bc8c8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-27 21:31:58 +00:00
Zbigniew Jędrzejewski-Szmek 2de2f66739 Remove systemd-networkd recommendation in eln builds
Apparently the Recommends causes the networkd subpackage to be
pulled into eln by default, which is unwanted.
2021-01-26 11:53:14 +01:00
Zbigniew Jędrzejewski-Szmek 45c8a69a1e Fix bfq patch again
https://bugzilla.redhat.com/show_bug.cgi?id=1813219#c3
2021-01-13 16:41:37 +01:00
Zbigniew Jędrzejewski-Szmek 387db8643f Make lto opt-out work again 2021-01-13 13:52:14 +01:00
Jonathan G. Underwood 5b6dfac2cc Add patch to allow crypttab to support workqueue disablement
This patch enables support of the following options in
/etc/crypttab:

    - no-read-workqueue
    - no-write-workqueue

This patch corresponds to the upstream pull request that has been
merged and will be in systemd 248:

    https://github.com/systemd/systemd/pull/18062/
2020-12-23 20:09:35 +00:00
Zbigniew Jędrzejewski-Szmek 3e123da08e Version 247.2 2020-12-16 16:32:59 +01:00
Zbigniew Jędrzejewski-Szmek 0a51c274d6 Revert the fallback hostname revert
Sadly, this does not work.

It seems NM queries resolved for the local IP address and gets "linux"
and sets that as the transient hostname. Resolved has a "fallback hostname"
(that will now again be "fedora"), but it also has a fallback fallback hostname
that is "linux" that it used in reverse dns queries and such. NM gets
the "linux" name and tells hostnamed to use that as the transient hostname.
I don't think this is an improvement, since "linux" is a problematic
as "fedora". So let's revert this for now to avoid pointless churn,
until we figure out a real solution.
2020-12-08 20:11:57 +01:00
Bastien Nocera a91e823771 + systemd-247.1-2
Unset fallback-hostname as plenty of applications expected localhost
  to mean "default hostname" without ever standardising it (#1892235)

This reverts commit 6eb8bcde28.
2020-12-04 10:51:13 +01:00
21 changed files with 1052 additions and 456 deletions

1
.gitignore vendored
View File

@ -1,4 +1,5 @@
*~
/.mail.list
/systemd-*/
/.build-*.log
/x86_64/

5
.zuul.yaml Normal file
View File

@ -0,0 +1,5 @@
- project:
vars:
install_repo_exclude:
- systemd-standalone-tmpfiles
- systemd-standalone-sysuser

View File

@ -0,0 +1,28 @@
From cc89389775b230e51d6e7a7e3e65f8a1928dbf2b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Thu, 2 Feb 2023 13:03:32 +0100
Subject: [PATCH] Revert "units: allow systemd-userdbd to change process name"
This reverts commit 9357d2342981a8b4fcfa2d170b7749c27d364fdd.
https://bugzilla.redhat.com/show_bug.cgi?id=2166509
---
units/systemd-userdbd.service.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/units/systemd-userdbd.service.in b/units/systemd-userdbd.service.in
index b57661100c..84dea04f55 100644
--- a/units/systemd-userdbd.service.in
+++ b/units/systemd-userdbd.service.in
@@ -16,7 +16,7 @@ Before=sysinit.target
DefaultDependencies=no
[Service]
-CapabilityBoundingSet=CAP_DAC_READ_SEARCH CAP_SYS_RESOURCE
+CapabilityBoundingSet=CAP_DAC_READ_SEARCH
ExecStart={{ROOTLIBEXECDIR}}/systemd-userdbd
IPAddressDeny=any
LimitNOFILE={{HIGH_RLIMIT_NOFILE}}
--
2.39.1

View File

@ -1,70 +0,0 @@
From 2e9d763e7cbeb33954bbe3f96fd94de2cd62edf7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Thu, 12 Nov 2020 14:28:24 +0100
Subject: [PATCH] test-path-util: do not fail if the fd_is_mount_point check
fails
This test fails on i686 and ppc64le in koji:
/* test_path */
Assertion 'fd_is_mount_point(fd, "/", 0) > 0' failed at src/test/test-path-util.c:85, function test_path(). Aborting.
I guess some permission error is the most likely.
---
src/test/test-path-util.c | 23 +++++++++++++++++------
1 file changed, 17 insertions(+), 6 deletions(-)
diff --git a/src/test/test-path-util.c b/src/test/test-path-util.c
index f4f8d0550b..be428334f3 100644
--- a/src/test/test-path-util.c
+++ b/src/test/test-path-util.c
@@ -40,8 +40,6 @@ static void test_path_simplify(const char *in, const char *out, const char *out_
}
static void test_path(void) {
- _cleanup_close_ int fd = -1;
-
log_info("/* %s */", __func__);
test_path_compare("/goo", "/goo", 0);
@@ -80,10 +78,6 @@ static void test_path(void) {
assert_se(streq(basename("/aa///file..."), "file..."));
assert_se(streq(basename("file.../"), ""));
- fd = open("/", O_RDONLY|O_CLOEXEC|O_DIRECTORY|O_NOCTTY);
- assert_se(fd >= 0);
- assert_se(fd_is_mount_point(fd, "/", 0) > 0);
-
test_path_simplify("aaa/bbb////ccc", "aaa/bbb/ccc", "aaa/bbb/ccc");
test_path_simplify("//aaa/.////ccc", "/aaa/./ccc", "/aaa/ccc");
test_path_simplify("///", "/", "/");
@@ -120,6 +114,22 @@ static void test_path(void) {
assert_se(!path_equal_ptr(NULL, "/a"));
}
+static void test_path_is_mountpoint(void) {
+ _cleanup_close_ int fd = -1;
+ int r;
+
+ log_info("/* %s */", __func__);
+
+ fd = open("/", O_RDONLY|O_CLOEXEC|O_DIRECTORY|O_NOCTTY);
+ assert_se(fd >= 0);
+
+ r = fd_is_mount_point(fd, "/", 0);
+ if (r < 0)
+ log_warning_errno(r, "Failed to check if / is a mount point, ignoring: %m");
+ else
+ assert_se(r == 1);
+}
+
static void test_path_equal_root(void) {
/* Nail down the details of how path_equal("/", ...) works. */
@@ -714,6 +724,7 @@ int main(int argc, char **argv) {
test_print_paths();
test_path();
+ test_path_is_mountpoint();
test_path_equal_root();
test_find_executable_full();
test_find_executable(argv[0]);

View File

@ -1,33 +0,0 @@
From e8bca4ba55f855260eda684a16e8feb5f20b1deb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Thu, 12 Nov 2020 15:06:12 +0100
Subject: [PATCH] test-path-util: ignore test failure
---
src/test/test-path-util.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/test/test-path-util.c b/src/test/test-path-util.c
index be428334f3..207c659b8b 100644
--- a/src/test/test-path-util.c
+++ b/src/test/test-path-util.c
@@ -120,14 +120,17 @@ static void test_path_is_mountpoint(void) {
log_info("/* %s */", __func__);
+ (void) system("uname -a");
+ (void) system("mountpoint /");
+
fd = open("/", O_RDONLY|O_CLOEXEC|O_DIRECTORY|O_NOCTTY);
assert_se(fd >= 0);
r = fd_is_mount_point(fd, "/", 0);
if (r < 0)
log_warning_errno(r, "Failed to check if / is a mount point, ignoring: %m");
- else
- assert_se(r == 1);
+ else if (r == 0)
+ log_warning("/ is not a mountpoint?");
}
static void test_path_equal_root(void) {

2
10-oomd-defaults.conf Normal file
View File

@ -0,0 +1,2 @@
[OOM]
DefaultMemoryPressureDurationSec=20s

View File

@ -0,0 +1,2 @@
[Slice]
ManagedOOMSwap=kill

View File

@ -0,0 +1,3 @@
[Service]
ManagedOOMMemoryPressure=kill
ManagedOOMMemoryPressureLimit=50%

29
21705.patch Normal file
View File

@ -0,0 +1,29 @@
From ca52de3b56d5e70232bee29314cd84f5596c1e7f Mon Sep 17 00:00:00 2001
From: Daan De Meyer <daan.j.demeyer@gmail.com>
Date: Thu, 9 Dec 2021 15:46:13 +0100
Subject: [PATCH] process-util: Fix memory leak
---
src/basic/process-util.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/basic/process-util.c b/src/basic/process-util.c
index 1b96d3ca8543..c97185215847 100644
--- a/src/basic/process-util.c
+++ b/src/basic/process-util.c
@@ -221,9 +221,12 @@ int get_process_cmdline(pid_t pid, size_t max_columns, ProcessCmdlineFlags flags
return -ENOMEM;
/* Drop trailing empty strings. See issue #21186. */
- STRV_FOREACH_BACKWARDS(p, args)
- if (isempty(*p))
- *p = mfree(*p);
+ STRV_FOREACH_BACKWARDS(p, args) {
+ if (!isempty(*p))
+ break;
+
+ *p = mfree(*p);
+ }
ans = quote_command_line(args, shflags);
if (!ans)

14
README.build-in-place Normal file
View File

@ -0,0 +1,14 @@
== Building systemd rpms for local development using rpmbuild --build-in-place ==
This approach is based on https://github.com/filbranden/git-rpmbuild
and filbranden's talk during ASG2019 [https://www.youtube.com/watch?v=fVM1kJrymRM].
```
git clone https://github.com/systemd/systemd
fedpkg clone systemd fedora-systemd
cd systemd
rpmbuild -bb --build-in-place --noprep --define "_sourcedir $PWD/../fedora-systemd" --define "_rpmdir $PWD/rpms" --with inplace ../systemd.spec
sudo dnf upgrade --setopt install_weak_deps=False rpms/*/*.rpm
```
`--without lto` and `--without tests` may be useful to speed up the build.

53
owner-check.sh Executable file
View File

@ -0,0 +1,53 @@
#!/bin/bash
set -e
verb="$1"
[ "$verb" = "-s" ] && do_send=1 || do_send=
[ -n "$do_send" ] && [ -z "$server" -o -z "login" ] && { echo '$server and $login need to be set'; exit 1; }
header=
from=systemd-maint@fedoraproject.org
time='2 years ago'
# time='1 day ago'
port=587
for user in "$@"; do
echo "checking $user"
p=$(git log -1 --all --author "$user")
if [ -z "$p" ]; then
echo "No commits from $user, check spelling"
exit 1
fi
t=$(git shortlog --all --author "$user" --since "@{$time}" | wc -l)
if [ $t != 0 ]; then
echo "$t commits in the last two years, OK"
echo
continue
fi
echo "$p" | head -n6
echo ".. adding to list"
if [ -z "$header" ]; then
echo '$USER$;$EMAIL$' >.mail.list
header=done
fi
echo "$user;$user@fedoraproject.org" >>.mail.list
echo
done
[ -z "$header" ] && exit 0
[ -n "$do_send" ] || exit 0
echo "Sending mails…"
set -x
massmail -F "$from" \
-C "$from" \
-S 'write access to the fedora systemd package' \
-z "$server" -u "$login" -P "$port" \
.mail.list <owner-check.template

20
owner-check.template Normal file
View File

@ -0,0 +1,20 @@
Dear $USER$,
the automation to check activity in the systemd dist-git repo [1]
determined that you haven't done any commits in the last two years.
To decrease the potential for unauthorized access, such checks will be
executed periodically. Not-used accounts with write access to the repo
will be downgraded to "ticket" (no write privileges).
If you want to retain access, please reply to this mail.
Otherwise, in two weeks, your access mode will be changed to "ticket".
Even without write access, anyone can open a pull request in pagure,
so write access is not necessary to contribute to the package.
Obviously such changes not permanent, so even if your access mode is
downgraded, it can easily be restored later on.
Yours friendly,
./owner-check.sh
[1] https://src.fedoraproject.org/rpms/systemd

13
rpminspect.yaml Normal file
View File

@ -0,0 +1,13 @@
# Disable badfuncs check that has tons of false positives.
badfuncs:
exclude_path: .*
# don't report changed content of compiled files
# that is expected with every update
changedfiles:
exclude_path: .*
# completely disabled inspections:
inspections:
# we know about our patches, no need to report anything
patches: off

View File

@ -1 +1 @@
SHA512 (systemd-247.1.tar.gz) = 2a737afcee4409c2be073d8cb650c3465a25c101b3c3072ea6e6a0614d06e3ed7ae55c84f9ae60555915ad1480b3a13aa72fef4b9210139afe6b0d7a7629385a
SHA512 (systemd-250.10.tar.gz) = 1453be225411af46670852d6f7fb64e6b8b85a1bc521fafbc0134f2107145997fb241a88e1018a029b73bcd74bb79ebe67b71507f8d90c3921bc39fd486f1799

View File

@ -22,11 +22,13 @@ o_rpm_macros = open('.file-list-rpm-macros', 'w')
o_devel = open('.file-list-devel', 'w')
o_container = open('.file-list-container', 'w')
o_networkd = open('.file-list-networkd', 'w')
o_oomd_defaults = open('.file-list-oomd-defaults', 'w')
o_remote = open('.file-list-remote', 'w')
o_resolve = open('.file-list-resolve', 'w')
o_tests = open('.file-list-tests', 'w')
o_standalone_tmpfiles = open('.file-list-standalone-tmpfiles', 'w')
o_standalone_sysusers = open('.file-list-standalone-sysusers', 'w')
o_rest = open('.file-list-rest', 'w')
o_main = open('.file-list-main', 'w')
for file in files(buildroot):
n = file.path[1:]
if re.match(r'''/usr/(share|include)$|
@ -56,7 +58,11 @@ for file in files(buildroot):
o = o_rpm_macros
elif '/usr/lib/systemd/tests' in n:
o = o_tests
elif re.search(r'/lib.*\.pc|/man3/|/usr/include|(?<!/libsystemd-shared-...).so$', n):
elif re.search(r'/libsystemd-shared-.*\.so$', n):
o = o_main
elif re.search(r'/libcryptsetup-token-systemd-.*\.so$', n):
o = o_udev
elif re.search(r'/lib.*\.pc|/man3/|/usr/include|\.so$', n):
o = o_devel
elif re.search(r'''journal-(remote|gateway|upload)|
systemd-remote\.conf|
@ -64,6 +70,7 @@ for file in files(buildroot):
/var/log/journal/remote
''', n, re.X):
o = o_remote
elif re.search(r'''mymachines|
machinectl|
systemd-nspawn|
@ -75,17 +82,23 @@ for file in files(buildroot):
org.freedesktop.(import|machine)1
''', n, re.X):
o = o_container
elif re.search(r'''/usr/lib/systemd/network/80-|
networkd|
networkctl|
org.freedesktop.network1
org.freedesktop.network1|
systemd\.network|
systemd\.netdev
''', n, re.X):
o = o_networkd
elif '.so.' in n:
o = o_libs
elif re.search(r'''udev(?!\.pc)|
hwdb|
bootctl|
boot-update|
sd-boot|systemd-boot\.|loader.conf|
bless-boot|
boot-system-token|
@ -96,6 +109,8 @@ for file in files(buildroot):
random-seed|
modules-load|
timesync|
crypttab|
cryptenroll|
cryptsetup|
kmod|
quota|
@ -108,15 +123,35 @@ for file in files(buildroot):
repart|
gpt-auto|
volatile-root|
verity-setup|
veritysetup|
integritysetup|
integritytab|
remount-fs|
/boot$|
/boot/efi|
/kernel/|
/kernel$|
/modprobe.d
''', n, re.X):
/modprobe.d|
binfmt|
sysctl|
coredump|
homed|home1|
portabled|portable1
''', n, re.X): # coredumpctl, homectl, portablectl are included in the main package because
# they can be used to interact with remote daemons. Also, the user could be
# confused if those user-facing binaries are not available.
o = o_udev
elif re.search(r'''resolved|resolve1|
systemd-resolve|
resolvconf|
systemd\.(positive|negative)
''', n, re.X): # resolvectl and nss-resolve are in the main package.
o = o_resolve
elif re.search(r'10-oomd-.*defaults.conf|lib/systemd/oomd.conf.d', n, re.X):
o = o_oomd_defaults
elif n.endswith('.standalone'):
if 'tmpfiles' in n:
o = o_standalone_tmpfiles
@ -124,8 +159,9 @@ for file in files(buildroot):
o = o_standalone_sysusers
else:
assert False, 'Found .standalone not belonging to known packages'
else:
o = o_rest
o = o_main
if n in known_files:
prefix = ' '.join(known_files[n].split()[:-1])
@ -133,6 +169,8 @@ for file in files(buildroot):
prefix += ' '
elif file.is_dir() and not file.is_symlink():
prefix = '%dir '
elif 'README' in n:
prefix = '%doc '
elif n.startswith('/etc'):
prefix = '%config(noreplace) '
else:

View File

@ -7,4 +7,5 @@ account include system-auth
session required pam_selinux.so close
session required pam_selinux.so nottys open
session required pam_loginuid.so
session required pam_namespace.so
session include system-auth

File diff suppressed because it is too large Load Diff

View File

@ -12,49 +12,49 @@ user() {
home="$5"
shell="$6"
[ "$desc" = '-' ] && desc=
[ "$home" = '-' -o "$home" = '' ] && home=/
[ "$shell" = '-' -o "$shell" = '' ] && shell=/sbin/nologin
[ "$desc" = '-' ] && desc=
{ [ "$home" = '-' ] || [ "$home" = '' ]; } && home=/
{ [ "$shell" = '-' ] || [ "$shell" = '' ]; } && shell=/sbin/nologin
if [ "$uid" = '-' -o "$uid" = '' ]; then
cat <<EOF
if [ "$uid" = '-' ] || [ "$uid" = '' ]; then
cat <<EOF
getent passwd '$user' >/dev/null || \\
useradd -r -g '$group' -d '$home' -s '$shell' -c '$desc' '$user'
useradd -r -g '$group' -d '$home' -s '$shell' -c '$desc' '$user' || :
EOF
else
cat <<EOF
if ! getent passwd '$user' >/dev/null ; then
if ! getent passwd '$uid' >/dev/null ; then
useradd -r -u '$uid' -g '$group' -d '$home' -s /sbin/nologin -c '$desc' '$user'
else
useradd -r -g '$group' -d '$home' -s /sbin/nologin -c '$desc' '$user'
cat <<EOF
if ! getent passwd '$user' >/dev/null; then
if ! getent passwd '$uid' >/dev/null; then
useradd -r -u '$uid' -g '$group' -d '$home' -s /sbin/nologin -c '$desc' '$user' || :
else
useradd -r -g '$group' -d '$home' -s /sbin/nologin -c '$desc' '$user' || :
fi
fi
EOF
fi
fi
}
group() {
group="$1"
gid="$2"
if [ "$gid" = '-' ]; then
cat <<EOF
getent group '$group' >/dev/null || groupadd -r '$group'
EOF
else
cat <<EOF
getent group '$group' >/dev/null || groupadd -f -g '$gid' -r '$group'
EOF
fi
if [ "$gid" = '-' ]; then
cat <<-EOF
getent group '$group' >/dev/null || groupadd -r '$group' || :
EOF
else
cat <<-EOF
getent group '$group' >/dev/null || groupadd -f -g '$gid' -r '$group' || :
EOF
fi
}
parse() {
while read line || [ "$line" ]; do
[ "${line:0:1}" = '#' -o "${line:0:1}" = ';' ] && continue
while read -r line || [ -n "$line" ] ; do
{ [ "${line:0:1}" = '#' ] || [ "${line:0:1}" = ';' ]; } && continue
line="${line## *}"
[ -z "$line" ] && continue
eval arr=( $line )
eval "arr=( $line )"
case "${arr[0]}" in
('u')
group "${arr[1]}" "${arr[2]}"
@ -74,6 +74,6 @@ parse() {
for fn in "$@"; do
[ -e "$fn" ] || continue
echo "# generated from $(basename $fn)"
parse < "$fn"
echo "# generated from $(basename "$fn")"
parse <"$fn"
done

View File

@ -1,5 +1,40 @@
#!/bin/bash
process_u() {
if [ ! -z "${2##*[!0-9]*}" ]; then
# Single shared static ID.
echo "user($1) = $2"
echo "group($1) = $2"
elif [[ $2 == *:* ]]; then
# UID:<group>.
uid=$(echo $2 | cut -d':' -f1 -)
group=$(echo $2 | cut -d':' -f2 -)
if [ ! -z "${group##*[!0-9]*}" ]; then
# UID:GID.
echo "user($1) = ${uid}"
echo "group($1) = ${group}"
else
# UID:<groupname>.
echo "user($1) = ${uid}"
echo "group(${group})"
fi
else
# Dynamic (or something else uninteresting).
echo "user($1)"
echo "group($1)"
fi
}
process_g() {
if [ ! -z "${2##*[!0-9]*}" ]; then
# Static GID.
echo "group($1) = $2"
else
# Dynamic (or something else uninteresting).
echo "group($1)"
fi
}
parse() {
while read line; do
[ "${line:0:1}" = '#' -o "${line:0:1}" = ';' ] && continue
@ -8,12 +43,10 @@ parse() {
set -- $line
case "$1" in
('u')
echo "user($2)"
echo "group($2)"
# TODO: user:group support
process_u "$2" "$3"
;;
('g')
echo "group($2)"
process_g "$2" "$3"
;;
('m')
echo "user($2)"

View File

@ -1,111 +1,99 @@
# -*- Mode: rpm-spec; indent-tabs-mode: nil -*- */
# SPDX-License-Identifier: LGPL-2.1+
# SPDX-License-Identifier: LGPL-2.1-or-later
#
# This file is part of systemd.
#
# Copyright 2015 Zbigniew Jędrzejewski-Szmek
# Copyright 2018 Neal Gompa
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
#
# systemd is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
# The contents of this are an example to be copied into systemd.spec.
#
# Minimum rpm version supported: 4.13.0
# Minimum rpm version supported: 4.14.0
%transfiletriggerin -P 900900 -- /usr/lib/systemd/system /etc/systemd/system
# This script will run after any package is initially installed or
# upgraded. We care about the case where a package is initially
# installed, because other cases are covered by the *un scriptlets,
# so sometimes we will reload needlessly.
if test -d /run/systemd/system; then
%{_bindir}/systemctl daemon-reload
/usr/lib/systemd/systemd-update-helper system-reload-restart || :
%transfiletriggerin -P 900899 -- /usr/lib/systemd/user /etc/systemd/user
if selinuxenabled &>/dev/null; then
/usr/lib/systemd/systemd-update-helper user-reload-restart 2>/dev/null || :
else
/usr/lib/systemd/systemd-update-helper user-reload-restart || :
fi
%transfiletriggerun -- /usr/lib/systemd/system /etc/systemd/system
%transfiletriggerpostun -P 1000100 -- /usr/lib/systemd/system /etc/systemd/system
# On removal, we need to run daemon-reload after any units have been
# removed. %transfiletriggerpostun would be ideal, but it does not get
# executed for some reason.
# removed.
# On upgrade, we need to run daemon-reload after any new unit files
# have been installed, but before %postun scripts in packages get
# executed. %transfiletriggerun gets the right list of files
# but it is invoked too early (before changes happen).
# %filetriggerpostun happens at the right time, but it fires for
# every package.
# To execute the reload at the right time, we create a state
# file in %transfiletriggerun and execute the daemon-reload in
# the first %filetriggerpostun.
# executed.
/usr/lib/systemd/systemd-update-helper system-reload || :
if test -d "/run/systemd/system"; then
mkdir -p "%{_localstatedir}/lib/rpm-state/systemd"
touch "%{_localstatedir}/lib/rpm-state/systemd/needs-reload"
%transfiletriggerpostun -P 1000099 -- /usr/lib/systemd/user /etc/systemd/user
# Execute daemon-reload in user managers.
if selinuxenabled &>/dev/null; then
/usr/lib/systemd/systemd-update-helper user-reload 2>/dev/null || :
else
/usr/lib/systemd/systemd-update-helper user-reload || :
fi
%filetriggerpostun -P 1000100 -- /usr/lib/systemd/system /etc/systemd/system
if test -f "%{_localstatedir}/lib/rpm-state/systemd/needs-reload"; then
rm -rf "%{_localstatedir}/lib/rpm-state/systemd"
%{_bindir}/systemctl daemon-reload
%transfiletriggerpostun -P 10000 -- /usr/lib/systemd/system /etc/systemd/system
# We restart remaining system services that should be restarted here.
/usr/lib/systemd/systemd-update-helper system-restart || :
%transfiletriggerpostun -P 9999 -- /usr/lib/systemd/user /etc/systemd/user
# We restart remaining user services that should be restarted here.
if selinuxenabled &>/dev/null; then
/usr/lib/systemd/systemd-update-helper user-restart 2>/dev/null || :
else
/usr/lib/systemd/systemd-update-helper user-restart || :
fi
%transfiletriggerin -P 100700 -- /usr/lib/sysusers.d
%transfiletriggerin -P 1000700 -- /usr/lib/sysusers.d
# This script will process files installed in /usr/lib/sysusers.d to create
# specified users automatically. The priority is set such that it
# will run before the tmpfiles file trigger.
if test -d /run/systemd/system; then
%{_bindir}/systemd-sysusers || :
fi
systemd-sysusers || :
%transfiletriggerin -P 100500 -- /usr/lib/tmpfiles.d
# This script will process files installed in /usr/lib/tmpfiles.d to create
# tmpfiles automatically. The priority is set such that it will run
# after the sysusers file trigger, but before any other triggers.
if test -d /run/systemd/system; then
%{_bindir}/systemd-tmpfiles --create || :
fi
%transfiletriggerin udev -- /usr/lib/udev/hwdb.d
%transfiletriggerin -P 1000700 udev -- /usr/lib/udev/hwdb.d
# This script will automatically invoke hwdb update if files have been
# installed or updated in /usr/lib/udev/hwdb.d.
if test -d /run/systemd/system; then
%{_bindir}/systemd-hwdb update || :
fi
systemd-hwdb update || :
%transfiletriggerin -- /usr/lib/systemd/catalog
%transfiletriggerin -P 1000700 -- /usr/lib/systemd/catalog
# This script will automatically invoke journal catalog update if files
# have been installed or updated in /usr/lib/systemd/catalog.
if test -d /run/systemd/system; then
%{_bindir}/journalctl --update-catalog || :
fi
journalctl --update-catalog || :
%transfiletriggerin udev -- /usr/lib/udev/rules.d
# This script will automatically update udev with new rules if files
# have been installed or updated in /usr/lib/udev/rules.d.
if test -e /run/udev/control; then
%{_bindir}/udevadm control --reload || :
fi
%transfiletriggerin -- /usr/lib/sysctl.d
# This script will automatically apply sysctl rules if files have been
# installed or updated in /usr/lib/sysctl.d.
if test -d /run/systemd/system; then
/usr/lib/systemd/systemd-sysctl || :
fi
%transfiletriggerin -- /usr/lib/binfmt.d
%transfiletriggerin -P 1000700 -- /usr/lib/binfmt.d
# This script will automatically apply binfmt rules if files have been
# installed or updated in /usr/lib/binfmt.d.
if test -d /run/systemd/system; then
if test -d "/run/systemd/system"; then
# systemd-binfmt might fail if binfmt_misc kernel module is not loaded
# during install
/usr/lib/systemd/systemd-binfmt || :
fi
%transfiletriggerin -P 1000600 -- /usr/lib/tmpfiles.d
# This script will process files installed in /usr/lib/tmpfiles.d to create
# tmpfiles automatically. The priority is set such that it will run
# after the sysusers file trigger, but before any other triggers.
if test -d "/run/systemd/system"; then
systemd-tmpfiles --create || :
fi
%transfiletriggerin -P 1000600 udev -- /usr/lib/udev/rules.d
# This script will automatically update udev with new rules if files
# have been installed or updated in /usr/lib/udev/rules.d.
if test -e /run/udev/control; then
udevadm control --reload || :
fi
%transfiletriggerin -P 1000500 -- /usr/lib/sysctl.d
# This script will automatically apply sysctl rules if files have been
# installed or updated in /usr/lib/sysctl.d.
if test -d "/run/systemd/system"; then
/usr/lib/systemd/systemd-sysctl || :
fi

View File

@ -1,4 +1,4 @@
From 223ea50950f97ed4e67311dfcffed7ffc27a7cd3 Mon Sep 17 00:00:00 2001
From b506a814bdd5d86461d9e4087f99a05753b238e4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Wed, 14 Aug 2019 15:57:42 +0200
Subject: [PATCH] udev: use bfq as the default scheduler
@ -23,18 +23,18 @@ index 0000000000..480b941761
@@ -0,0 +1,5 @@
+# do not edit this file, it will be overwritten on update
+
+ACTION=="add", SUBSYSTEM=="block", \
+ACTION=="add", SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", \
+ KERNEL=="mmcblk*[0-9]|msblk*[0-9]|mspblk*[0-9]|sd*[!0-9]|sr*", \
+ ATTR{queue/scheduler}="bfq"
diff --git a/rules.d/meson.build b/rules.d/meson.build
index ca4445d774..38d6aa6970 100644
index e6533e001a..bfa26904d0 100644
--- a/rules.d/meson.build
+++ b/rules.d/meson.build
@@ -3,6 +3,7 @@
rules = files('''
60-autosuspend.rules
60-block.rules
+ 60-block-scheduler.rules
60-cdrom_id.rules
60-drm.rules
60-evdev.rules
@@ -7,6 +7,7 @@ install_data(
rules = files(
'60-autosuspend.rules',
'60-block.rules',
+ '60-block-scheduler.rules',
'60-cdrom_id.rules',
'60-drm.rules',
'60-evdev.rules',