summaryrefslogtreecommitdiff
path: root/sys-apps
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps')
-rw-r--r--sys-apps/Manifest.gzbin49660 -> 49666 bytes
-rw-r--r--sys-apps/gscanbus/Manifest2
-rw-r--r--sys-apps/gscanbus/files/gscanbus-0.8-incompatible-function-pointer-types.patch30
-rw-r--r--sys-apps/gscanbus/gscanbus-0.8-r1.ebuild24
-rw-r--r--sys-apps/hdparm/Manifest2
-rw-r--r--sys-apps/hdparm/files/hdparm-9.65-graceful-lfs.patch16
-rw-r--r--sys-apps/hdparm/hdparm-9.65-r2.ebuild50
-rw-r--r--sys-apps/systemd/Manifest2
-rw-r--r--sys-apps/systemd/files/systemd-253.5-services-stop.patch36
-rw-r--r--sys-apps/systemd/files/systemd-254.1-tmpfiles-setup-dev-early.patch252
10 files changed, 124 insertions, 290 deletions
diff --git a/sys-apps/Manifest.gz b/sys-apps/Manifest.gz
index 36e394941d56..448a4aea7b29 100644
--- a/sys-apps/Manifest.gz
+++ b/sys-apps/Manifest.gz
Binary files differ
diff --git a/sys-apps/gscanbus/Manifest b/sys-apps/gscanbus/Manifest
index b888e7f1e388..54ca4667e3c7 100644
--- a/sys-apps/gscanbus/Manifest
+++ b/sys-apps/gscanbus/Manifest
@@ -1,4 +1,6 @@
AUX gscanbus-0.8-Wimplicit-function-declaration.patch 386 BLAKE2B 0408be6cfaad0a1b90b7d48b2b131fd8d66823ac3ed159b6005257d61f29d3dc871bef1e403c5fb0454444def5d158fe85cff035bf9c8687f8984bd5cc83240d SHA512 ecc49af667ad35c56c12e83e23ecbcb771bb14fa750bd2ebe3b334e6fb666d113fb45a1f77a575459b8bf51888057a7e17ed3cb5998cf0a3845978234d0afd57
+AUX gscanbus-0.8-incompatible-function-pointer-types.patch 1130 BLAKE2B 3022fbd0df217d857bd5631e848b2ca5651b40267d4e2b717096be17b2368d5680e8a678c53342fa623c52b6f01fe2ab646bd6df419f1bf04c84e19695b0cffe SHA512 0e15bf6df646df1cf49b236805c37ad9189fe2030ed7653ccb33172842c68befccd7015b1080fb4bbcfaea19afb59d9e0cca39dbc5bb1cf16f56ead43f54d27d
DIST gscanbus-0.8.tar.gz 215739 BLAKE2B a07b5f067a064715522ecf3665c84390cf720c4ebd3ea276259107b1a17c0c26e6a439b6c3e6e1a76644572967d8aa38f18f7bf96ba3a77ba0f70937f6e7f903 SHA512 a5f97acb57869b151fbdee5747510f554b8d67b1889ce199ba803bc75a91d1a8b98239799ce61d775923dfff0767db518a46cf9222eb370150ea158eecde95be
+EBUILD gscanbus-0.8-r1.ebuild 612 BLAKE2B 668b1ab7ea62eb636e90eb5c277446770d2a4ed0681c1ccc7184c1aa44862e7774e05a51d3467556c20abd54d3d969514edd343fa5f9dc2220891a9668ecbc45 SHA512 69bf84f52d0185ed3f8ca0f00032cba9653b7b287e0c13448608223e2965130a409059f35dc96b1a5fb2eeab54b2efe9198df768c70037a561a58a62628ee813
EBUILD gscanbus-0.8.ebuild 545 BLAKE2B 2f50ac890b5e6b28cdcec82d8accb6bb9b626d679bca23cf204ac49825a9afc69e0a17343f8ea20259ba7af458f2cce4430e8d186b557b78b18b945679c72e29 SHA512 361de4996ef51837ebb20b29bced179899cae71ffcb97fddb7745392cc58bcf5b8037db26f863e17befcc98e086923d48bfb7296e4774f3663fbd17b33286d8c
MISC metadata.xml 337 BLAKE2B 08327a3cea827bcb0635c1c2414127b5c2a22b89fc9348c7e761103da21a3859cc21e66307f6639bdbc5869282ca9e0804e1e790f63e70c93ae71aa2557c79f9 SHA512 6569a7d21c5674fa138d772911c352ed93feeea8e1951a9d848c591f84e00bfb4022ad6776cdfd36bfc57b5f010830b24037dd16bbd985a042a847fc3c2cd40a
diff --git a/sys-apps/gscanbus/files/gscanbus-0.8-incompatible-function-pointer-types.patch b/sys-apps/gscanbus/files/gscanbus-0.8-incompatible-function-pointer-types.patch
new file mode 100644
index 000000000000..d38603c34962
--- /dev/null
+++ b/sys-apps/gscanbus/files/gscanbus-0.8-incompatible-function-pointer-types.patch
@@ -0,0 +1,30 @@
+Bug: https://bugs.gentoo.org/887001
+--- a/menues.c
++++ b/menues.c
+@@ -280,7 +280,7 @@ static void readQuadletApp(gpointer callback_data, guint callback_action,
+ gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog->dialog)->vbox),
+ table, TRUE, TRUE, 0);
+
+- transactionDialogAddOkClose(dialog, readQuadletAppOk);
++ transactionDialogAddOkClose(dialog, (GtkSignalFunc)readQuadletAppOk);
+
+ gtk_widget_show_all(dialog->dialog);
+ }
+@@ -336,7 +336,7 @@ static void writeQuadletApp(gpointer callback_data, guint callback_action,
+ gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog->dialog)->vbox),
+ table, TRUE, TRUE, 0);
+
+- transactionDialogAddOkClose(dialog, writeQuadletAppOk);
++ transactionDialogAddOkClose(dialog, (GtkSignalFunc)writeQuadletAppOk);
+
+ gtk_widget_show_all(dialog->dialog);
+ }
+@@ -417,7 +417,7 @@ static void readBlockApp(gpointer callback_data, guint callback_action,
+ table, TRUE, TRUE, 0);
+
+ //dialogAddOkClose(dialog->dialog, readBlockAppOk);
+- transactionDialogAddOkClose(dialog, readBlockAppOk);
++ transactionDialogAddOkClose(dialog, (GtkSignalFunc)readBlockAppOk);
+
+ gtk_widget_show_all(dialog->dialog);
+ }
diff --git a/sys-apps/gscanbus/gscanbus-0.8-r1.ebuild b/sys-apps/gscanbus/gscanbus-0.8-r1.ebuild
new file mode 100644
index 000000000000..d11c19a7efae
--- /dev/null
+++ b/sys-apps/gscanbus/gscanbus-0.8-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Bus scanning, testing and topology visualizing tool for Linux IEEE1394 subsystem"
+HOMEPAGE="https://sourceforge.net/projects/gscanbus.berlios/"
+SRC_URI="mirror://sourceforge/${PN}.berlios/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+RDEPEND="
+ sys-libs/libraw1394
+ x11-libs/gtk+:2"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-Wimplicit-function-declaration.patch
+ "${FILESDIR}"/${P}-incompatible-function-pointer-types.patch
+
+)
diff --git a/sys-apps/hdparm/Manifest b/sys-apps/hdparm/Manifest
index df8765486358..e27f80c170d0 100644
--- a/sys-apps/hdparm/Manifest
+++ b/sys-apps/hdparm/Manifest
@@ -1,7 +1,9 @@
AUX hdparm-9.60-build.patch 1153 BLAKE2B c3eb037e0576a066fe2a2c6e00406dcfd3e99e23b468a4fbc0f5ac545d8a1b214168769da94271242b2119d480e34dbcaa734b636231021c03e2a57f585426cc SHA512 d3f76575074806c7981aacdf7a5a4e1e97a2afbcd09e8821cf1c064f8960b397e2ccdd534fb95b91f43f35c481f94463fb1fe485189436bd5de8178823d7c9eb
+AUX hdparm-9.65-graceful-lfs.patch 420 BLAKE2B 1caf2a127eeab439554b2cef9c03dbb3c4487810558053993a5dfa1eaeb0d60daf1bbec5841ecd7d68622adb54f9b28b58fbd8f3d25f315493b756f3051557f6 SHA512 ba6ade5e62bea7b84025187e10fdd6a804ccb634fed48963630a0f3f223cc2fa1cd654dd2fbd72a7acf87bc8084614122b7d70d9c03c2ee7e9eb1ffd738329ad
AUX hdparm-conf.d.3 872 BLAKE2B 15376fc6f37624e6a57c97b11101b190512db4493e4f7f0c1d9e3ba6fe77e013d4044197751696988c5ac7c96e38e9737bc3bd2e270274c94db85228d5c2eb98 SHA512 968c6b9d26a71bf724728c259d35a499a644496875eac255dcac3cb4a7e5cadb677a4f6e5e0f8bbd7e1826b6fb77cb39af15b11d1e59b3e9daf9ba442b9e6f02
AUX hdparm-init-8 1360 BLAKE2B 779329470a9980621d6d25e44ecb9a830565f3501fa51a10d78f1134214b9a8e5cc88148e9d7536ade6af2b88aee9a1e2e40b8c8b38cd2c409d23b1ad673cf7d SHA512 0417168cf540d2385c5edc4e199c9c2318f97c397d4bbb8b0ac6d4dcadf153564a51a9a5da172442c75a670f79fdec84da5db777a1400cf3c8d8cf6a7066fcc8
DIST hdparm-9.65.tar.gz 140425 BLAKE2B 79b1c16e7807f82a992ed7f22faef57045c56da4a281fbd8db3b8846b193ccc4b42329fa6abbebf8b652fbefb13aa0f18dfa726e802e8e1a45c94f414fb303b9 SHA512 4ffc8902b90cee10d68af8ddb9f3b9454d523ecd49cdaaed254b4d7a999462a8ad5ec1bb5d7684b09fefa41b5941ab533b167dad290003b51c795a633ca88913
EBUILD hdparm-9.65-r1.ebuild 1009 BLAKE2B d4fdee8b1dbdcd3a40d317b1738e6ff18e6387db5f9c783a707a08fb669a0afde773caa544c8ae3796d6bbc280e6e46e1a1e74f5a68c7d0f72cb2da389860d8d SHA512 c5069dd8d20238342292049ba4ccacfe0e0f97fc05021e350b8cd3306f4b254828de17a479a5379daaabb416735e8a4e35af629f114e1a84fa2dab105e7fcdcc
+EBUILD hdparm-9.65-r2.ebuild 1087 BLAKE2B afed20b2ae25b64f5d12d2a97111966defbff2421b77961ceea27d4e09b4bd3353411210dc626e93a0a3780634b4fd1054b71ad97877eb440312db7ecc97fbbc SHA512 b39becda9990717d5a73e78b93102272b64b61c68fc857a134a0285f7aac8cd78b1517dfe75987c06ab4a3311cfd18738aeb81781016b8cc398f2015fdb16de5
EBUILD hdparm-9.65.ebuild 996 BLAKE2B 1c2a9a8af1caa482459c00b63ab37551e712bb576dc3003abdf282cf27d2234fac5a1eab1a974b501b126f920aaacf23d95f05a7e0c3a3bad80230d30b87dd85 SHA512 6bbd130af03a8460186f3e2be15e4a60cfb3ecfe64acc913eb0a8720591c0831029bb9255798d65c70dbb7d4f0779632074051eacf8864419da22b5b298ab3dc
MISC metadata.xml 334 BLAKE2B 4401fa870e66675b64077c7dc271c1775a3b7148a4c720ac670222d0f61ce634507725e77e5ef2b9efb6d363ca23dc2a884645ab630ffccc8e737b7139e23d47 SHA512 a71c8c705afd12b3609542d13b18697e9c4626c0c41006ccbdacd248c1c621b0fa93a522561494120c0be181d091fc27e466a25af3be25b4f3b4cc14ec5e652a
diff --git a/sys-apps/hdparm/files/hdparm-9.65-graceful-lfs.patch b/sys-apps/hdparm/files/hdparm-9.65-graceful-lfs.patch
new file mode 100644
index 000000000000..bb8df3735deb
--- /dev/null
+++ b/sys-apps/hdparm/files/hdparm-9.65-graceful-lfs.patch
@@ -0,0 +1,16 @@
+# Guard _LARGEFILE64_SOURCE define to avoid warning with append-lfs-flags
+# https://bugs.gentoo.org/914505
+diff --git a/hdparm.c b/hdparm.c
+index eb9796b..a3204f9 100644
+--- a/hdparm.c
++++ b/hdparm.c
+@@ -4,7 +4,9 @@
+ */
+ #define HDPARM_VERSION "v9.65"
+
++#ifndef _LARGEFILE64_SOURCE
+ #define _LARGEFILE64_SOURCE /*for lseek64*/
++#endif
+ #define _BSD_SOURCE /* for strtoll() */
+ #include <unistd.h>
+ #include <stdlib.h>
diff --git a/sys-apps/hdparm/hdparm-9.65-r2.ebuild b/sys-apps/hdparm/hdparm-9.65-r2.ebuild
new file mode 100644
index 000000000000..9f39facd3441
--- /dev/null
+++ b/sys-apps/hdparm/hdparm-9.65-r2.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs flag-o-matic
+
+DESCRIPTION="Utility to change hard drive performance parameters"
+HOMEPAGE="https://sourceforge.net/projects/hdparm/"
+SRC_URI="mirror://sourceforge/hdparm/${P}.tar.gz"
+
+# GPL-2 only
+LICENSE="BSD GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="static"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-9.60-build.patch
+ "${FILESDIR}"/${P}-graceful-lfs.patch
+)
+
+src_prepare() {
+ default
+
+ use static && append-ldflags -static
+}
+
+src_configure() {
+ append-lfs-flags
+}
+
+src_compile() {
+ emake STRIP="true" CC="$(tc-getCC)"
+}
+
+src_install() {
+ into /
+ dosbin hdparm contrib/idectl
+
+ newinitd "${FILESDIR}"/hdparm-init-8 hdparm
+ newconfd "${FILESDIR}"/hdparm-conf.d.3 hdparm
+
+ doman hdparm.8
+ dodoc hdparm.lsm Changelog README.acoustic hdparm-sysconfig
+
+ docinto wiper
+ dodoc wiper/{README.txt,wiper.sh}
+ docompress -x /usr/share/doc/${PF}/wiper/wiper.sh
+}
diff --git a/sys-apps/systemd/Manifest b/sys-apps/systemd/Manifest
index f904ad8e976f..78ca59083458 100644
--- a/sys-apps/systemd/Manifest
+++ b/sys-apps/systemd/Manifest
@@ -3,8 +3,6 @@ AUX gentoo-journald-audit-r1.patch 1941 BLAKE2B 93f1a0ba8dd575359e5ab4bd04f99ed3
AUX legacy.conf 80 BLAKE2B 23eca4dd1743a5cf77767894d23d419c1663147c5aee6be971da64fdea0531eadfe97ac8bc4e63b44404dcf89940d438de6b7081158b78639945ce0fadbb103c SHA512 f74f05991102b644dee7822a80cb8e6c14cd1eb48bd9342bc662d5947b9f04d32e875d2a5e6476a67bdbface4d2b2159b99c11d72eb4658c5cb4caf595f138be
AUX nsswitch.conf 734 BLAKE2B 5f5a7821a84f6c8aa31fe9a68c29a1a0f24be578d427a623f14a9ef795e7da481f226efe5511d92932b5edf5638fa719808a0c3a0b8fd340799dd6bcb703a0a1 SHA512 dcbd51dacaaebdff32edb3840cc7b9b47b6521009b8786690e3673a2e78bc60bfd8e591b1048c5d452117c6659b9917ae2864462f5057cc39b704b0130522e60
AUX systemd-253-initrd-generators.patch 1486 BLAKE2B 85a7f714aa1743bd88e01b45624dc4104e4d762732745d9958019063f6ac91ffd89ae84e03f728e6040a58643f253a5ea7f77f44ef71620e686e23aed61876e4 SHA512 f8aab9f4bbf5a73c52144013fd7001dc78974211f11abb58a0f5eceff59b3ebf670409846fff854daec10219074602674176730f85583db0e81275289e89c66b
-AUX systemd-253.5-services-stop.patch 1429 BLAKE2B 3e191d2f98173c4b75791b8ade557f250229021d50c84efb9010ed06bb9a4df6e0b084625d9c3c8dbb16b8378a7c62ddbb3be4cf17790169709c581c09802fea SHA512 74e3cab089d1d3ca1603b3180638dfe2a6a0dfc494b9b72920f1b0cbe659784582d9757ba1b3f75b0c6469ae88a782a26da89049b5571b0f1ec50e845092ab21
-AUX systemd-254.1-tmpfiles-setup-dev-early.patch 9923 BLAKE2B 943f1eab877623ac6ad1b1ce51adbff4c4f8c9857dcb869711b10421c2173b7d25b838e82773de9404fe1b77dbe9593085dd104730f48619bf1799b056c9f4c4 SHA512 8984bc8fcbc495082b60ccd33a74269832c6cbe6d8907df8193a26a89867e5358cdeecfb9c7d093b35c11b3351f9b55778425ddb4de7d806209a63d71b368139
AUX systemd-user.pam 122 BLAKE2B cccc07cab47dfc0481438e503c34fa1a0b2c6b1f8ab282197719a523421d2a526f19230bb459e0347cbeb2046e35a407c78178a3fb5b79619e987cbc4ac7d5e4 SHA512 c5437677ff00fbb45798fe594e8d61b1c2bfc2d103105d7bd82e476240452477ac263700800f5d0ba91ddc895eb85f4517d5cb15c80611ec1680a686d47cd781
DIST systemd-stable-253.11.tar.gz 12116691 BLAKE2B bb8d95e77ad970ba642346fd0179384258b13b94aacb9f6ff05d4967f5e13d1c709f8b917e485a227fb126e552429c4e302b959eb4697a69dc88b45836c36646 SHA512 0018a544f924725f1e7664bfbee0c66591514c077e97352ae5d8d90b6dccfd4d07b9876f25923afa9782b57cc17b8e9ab34c7ae627998804751ba38e46558af4
DIST systemd-stable-253.12.tar.gz 12117485 BLAKE2B 8ed9e5a081c59a304698c8194fd15858ec03e44ca55466b4f07af659582abb9648c081d1756439c5d5cc6eb55783be987c1b801fea64e66c0abe8ef1df140f9b SHA512 dd099160932258f7baf541e52ce7181565096f93f9311e4d3f6383c2035ab3d39765a7de03fb99b83e16a79db301558577fb14859ef24f3da548e8806ef95ea2
diff --git a/sys-apps/systemd/files/systemd-253.5-services-stop.patch b/sys-apps/systemd/files/systemd-253.5-services-stop.patch
deleted file mode 100644
index 5f2c5aa8890d..000000000000
--- a/sys-apps/systemd/files/systemd-253.5-services-stop.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-https://github.com/systemd/systemd-stable/issues/302
-https://github.com/systemd/systemd/pull/28000
-
-From 5f7f82ba625ee48d662c1f0286f44b8b0918d05d Mon Sep 17 00:00:00 2001
-From: msizanoen <msizanoen@qtmlabs.xyz>
-Date: Mon, 12 Jun 2023 10:30:12 +0700
-Subject: [PATCH] Revert "core/service: when resetting PID also reset known
- flag"
-
-This reverts commit ff32060f2ed37b68dc26256b05e2e69013b0ecfe.
-
-This change is incorrect as we don't want to mark the PID as invalid but
-only mark it as dead.
-
-The change in question also breaks user level socket activation for
-`podman.service` as the termination of the main `podman system service`
-process is not properly handled, causing any application accessing the
-socket to hang.
-
-This is because the user-level `podman.service` unit also hosts two
-non-main processes: `rootlessport` and `rootlessport-child` which causes
-the `cgroup_good` check to still succeed.
-
-The original submitter of this commit is recommended to find another
-more correct way to fix the cgroupsv1 issue on CentOS 8.
---- a/src/core/service.c
-+++ b/src/core/service.c
-@@ -3752,7 +3752,6 @@ static void service_sigchld_event(Unit *u, pid_t pid, int code, int status) {
- return;
-
- s->main_pid = 0;
-- s->main_pid_known = false;
- exec_status_exit(&s->main_exec_status, &s->exec_context, pid, code, status);
-
- if (s->main_command) {
-
diff --git a/sys-apps/systemd/files/systemd-254.1-tmpfiles-setup-dev-early.patch b/sys-apps/systemd/files/systemd-254.1-tmpfiles-setup-dev-early.patch
deleted file mode 100644
index 77f6e19fe6c8..000000000000
--- a/sys-apps/systemd/files/systemd-254.1-tmpfiles-setup-dev-early.patch
+++ /dev/null
@@ -1,252 +0,0 @@
-https://github.com/systemd/systemd/pull/28784
-https://bugs.gentoo.org/911723
-
-From bb7f485f4bddd57bbf50739bafa43d127bab59d6 Mon Sep 17 00:00:00 2001
-From: Yu Watanabe <watanabe.yu+github@gmail.com>
-Date: Sat, 12 Aug 2023 07:54:32 +0900
-Subject: [PATCH] units: introduce systemd-tmpfiles-setup-dev-early.service
-
-This makes tmpfiles, sysusers, and udevd invoked in the following order:
-1. systemd-tmpfiles-setup-dev-early.service
- Create device nodes gracefully, that is, create device nodes anyway
- by ignoring unknown users and groups.
-2. systemd-sysusers.service
- Create users and groups, to make later invocations of tmpfiles and
- udevd can resolve necessary users and groups.
-3. systemd-tmpfiles-setup-dev.service
- Adjust owners of previously created device nodes.
-4. systemd-udevd.service
- Process all devices. Especially to make block devices active and can
- be mountable.
-5. systemd-tmpfiles-setup.service
- Setup basic filesystem.
-
-Follow-up for b42482af904ae0b94a6e4501ec595448f0ba1c06.
-
-Fixes #28653.
-Replaces #28681 and #28732.
----
- man/systemd-tmpfiles.xml | 3 +
- test/TEST-17-UDEV/test.sh | 4 ++
- test/units/testsuite-17.00.sh | 57 +++++++++++++++++++
- units/kmod-static-nodes.service.in | 2 +-
- units/meson.build | 5 ++
- units/systemd-sysusers.service | 2 +
- .../systemd-tmpfiles-setup-dev-early.service | 25 ++++++++
- units/systemd-tmpfiles-setup-dev.service | 3 +-
- units/systemd-tmpfiles-setup.service | 2 +-
- 9 files changed, 100 insertions(+), 3 deletions(-)
- create mode 100755 test/units/testsuite-17.00.sh
- create mode 100644 units/systemd-tmpfiles-setup-dev-early.service
-
-diff --git a/man/systemd-tmpfiles.xml b/man/systemd-tmpfiles.xml
-index decd66d5c667..0db2a4b03b46 100644
---- a/man/systemd-tmpfiles.xml
-+++ b/man/systemd-tmpfiles.xml
-@@ -19,6 +19,7 @@
- <refnamediv>
- <refname>systemd-tmpfiles</refname>
- <refname>systemd-tmpfiles-setup.service</refname>
-+ <refname>systemd-tmpfiles-setup-dev-early.service</refname>
- <refname>systemd-tmpfiles-setup-dev.service</refname>
- <refname>systemd-tmpfiles-clean.service</refname>
- <refname>systemd-tmpfiles-clean.timer</refname>
-@@ -35,6 +36,7 @@
-
- <para>System units:
- <literallayout><filename>systemd-tmpfiles-setup.service</filename>
-+<filename>systemd-tmpfiles-setup-dev-early.service</filename>
- <filename>systemd-tmpfiles-setup-dev.service</filename>
- <filename>systemd-tmpfiles-clean.service</filename>
- <filename>systemd-tmpfiles-clean.timer</filename></literallayout></para>
-@@ -64,6 +66,7 @@
- searched for a matching file and the file found that has the highest priority is executed.</para>
-
- <para>System services (<filename>systemd-tmpfiles-setup.service</filename>,
-+ <filename>systemd-tmpfiles-setup-dev-early.service</filename>,
- <filename>systemd-tmpfiles-setup-dev.service</filename>,
- <filename>systemd-tmpfiles-clean.service</filename>) invoke <command>systemd-tmpfiles</command> to create
- system files and to perform system wide cleanup. Those services read administrator-controlled
-diff --git a/test/TEST-17-UDEV/test.sh b/test/TEST-17-UDEV/test.sh
-index 6b8f08fc328a..f7a907549607 100755
---- a/test/TEST-17-UDEV/test.sh
-+++ b/test/TEST-17-UDEV/test.sh
-@@ -8,5 +8,9 @@ TEST_NO_NSPAWN=1
- # shellcheck source=test/test-functions
- . "${TEST_BASE_DIR:?}/test-functions"
-
-+test_append_files() {
-+ instmods snd_seq snd_timer tun
-+ generate_module_dependencies
-+}
-
- do_test "$@"
-diff --git a/test/units/testsuite-17.00.sh b/test/units/testsuite-17.00.sh
-new file mode 100755
-index 000000000000..d2aec60b1326
---- /dev/null
-+++ b/test/units/testsuite-17.00.sh
-@@ -0,0 +1,57 @@
-+#!/usr/bin/env bash
-+# SPDX-License-Identifier: LGPL-2.1-or-later
-+set -ex
-+set -o pipefail
-+
-+# shellcheck source=test/units/util.sh
-+. "$(dirname "$0")"/util.sh
-+
-+# Tests for issue #28588 and #28653.
-+
-+# On boot, services need to be started in the following order:
-+# 1. systemd-tmpfiles-setup-dev-early.service
-+# 2. systemd-sysusers.service
-+# 3. systemd-tmpfiles-setup-dev.service
-+# 4. systemd-udevd.service
-+
-+output="$(systemctl show --property After --value systemd-udevd.service)"
-+assert_in "systemd-tmpfiles-setup-dev-early.service" "$output"
-+assert_in "systemd-sysusers.service" "$output"
-+assert_in "systemd-tmpfiles-setup-dev.service" "$output"
-+
-+output="$(systemctl show --property After --value systemd-tmpfiles-setup-dev.service)"
-+assert_in "systemd-tmpfiles-setup-dev-early.service" "$output"
-+assert_in "systemd-sysusers.service" "$output"
-+
-+output="$(systemctl show --property After --value systemd-sysusers.service)"
-+assert_in "systemd-tmpfiles-setup-dev-early.service" "$output"
-+
-+check_owner_and_mode() {
-+ local dev=${1?}
-+ local user=${2?}
-+ local group=${3?}
-+ local mode=${4:-}
-+
-+ if [[ -e "$dev" ]]; then
-+ assert_in "$user" "$(stat --format=%U "$dev")"
-+ assert_in "$group" "$(stat --format=%G "$dev")"
-+ if [[ -n "$mode" ]]; then
-+ assert_in "$mode" "$(stat --format=%#0a "$dev")"
-+ fi
-+ fi
-+
-+ return 0
-+}
-+
-+# Check owner and access mode specified in static-nodes-permissions.conf
-+check_owner_and_mode /dev/snd/seq root audio 0660
-+check_owner_and_mode /dev/snd/timer root audio 0660
-+check_owner_and_mode /dev/loop-control root disk 0660
-+check_owner_and_mode /dev/net/tun root root 0666
-+check_owner_and_mode /dev/fuse root root 0666
-+check_owner_and_mode /dev/vfio/vfio root root 0666
-+check_owner_and_mode /dev/kvm root kvm
-+check_owner_and_mode /dev/vhost-net root kvm
-+check_owner_and_mode /dev/vhost-vsock root kvm
-+
-+exit 0
-diff --git a/units/kmod-static-nodes.service.in b/units/kmod-static-nodes.service.in
-index 777e82d16b90..70605d997e0a 100644
---- a/units/kmod-static-nodes.service.in
-+++ b/units/kmod-static-nodes.service.in
-@@ -10,7 +10,7 @@
- [Unit]
- Description=Create List of Static Device Nodes
- DefaultDependencies=no
--Before=sysinit.target systemd-tmpfiles-setup-dev.service
-+Before=sysinit.target systemd-tmpfiles-setup-dev-early.service
- ConditionCapability=CAP_SYS_MODULE
- ConditionFileNotEmpty=/lib/modules/%v/modules.devname
-
-diff --git a/units/meson.build b/units/meson.build
-index 96ad1dc85016..20665e040874 100644
---- a/units/meson.build
-+++ b/units/meson.build
-@@ -544,6 +544,11 @@ units = [
- 'conditions' : ['ENABLE_TMPFILES'],
- 'symlinks' : ['timers.target.wants/'],
- },
-+ {
-+ 'file' : 'systemd-tmpfiles-setup-dev-early.service',
-+ 'conditions' : ['ENABLE_TMPFILES'],
-+ 'symlinks' : ['sysinit.target.wants/'],
-+ },
- {
- 'file' : 'systemd-tmpfiles-setup-dev.service',
- 'conditions' : ['ENABLE_TMPFILES'],
-diff --git a/units/systemd-sysusers.service b/units/systemd-sysusers.service
-index 84fd66de37aa..de6c71a03825 100644
---- a/units/systemd-sysusers.service
-+++ b/units/systemd-sysusers.service
-@@ -16,6 +16,8 @@ ConditionCredential=|sysusers.extra
-
- DefaultDependencies=no
- After=systemd-remount-fs.service
-+After=systemd-tmpfiles-setup-dev-early.service
-+Before=systemd-tmpfiles-setup-dev.service
- Before=sysinit.target systemd-update-done.service
- Conflicts=shutdown.target initrd-switch-root.target
- Before=shutdown.target initrd-switch-root.target
-diff --git a/units/systemd-tmpfiles-setup-dev-early.service b/units/systemd-tmpfiles-setup-dev-early.service
-new file mode 100644
-index 000000000000..0d6f0daaae32
---- /dev/null
-+++ b/units/systemd-tmpfiles-setup-dev-early.service
-@@ -0,0 +1,25 @@
-+# SPDX-License-Identifier: LGPL-2.1-or-later
-+#
-+# This file is part of systemd.
-+#
-+# 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.
-+
-+[Unit]
-+Description=Create Static Device Nodes in /dev gracefully
-+Documentation=man:tmpfiles.d(5) man:systemd-tmpfiles(8)
-+
-+DefaultDependencies=no
-+Before=sysinit.target local-fs-pre.target systemd-udevd.service
-+Wants=local-fs-pre.target
-+Conflicts=shutdown.target initrd-switch-root.target
-+Before=shutdown.target initrd-switch-root.target
-+
-+[Service]
-+Type=oneshot
-+RemainAfterExit=yes
-+ExecStart=systemd-tmpfiles --prefix=/dev --create --boot --graceful
-+SuccessExitStatus=DATAERR CANTCREAT
-+ImportCredential=tmpfiles.*
-diff --git a/units/systemd-tmpfiles-setup-dev.service b/units/systemd-tmpfiles-setup-dev.service
-index acaa9510aa60..3016b497493f 100644
---- a/units/systemd-tmpfiles-setup-dev.service
-+++ b/units/systemd-tmpfiles-setup-dev.service
-@@ -12,6 +12,7 @@ Description=Create Static Device Nodes in /dev
- Documentation=man:tmpfiles.d(5) man:systemd-tmpfiles(8)
-
- DefaultDependencies=no
-+After=systemd-tmpfiles-setup-dev-early.service
- Before=sysinit.target local-fs-pre.target systemd-udevd.service
- Wants=local-fs-pre.target
- Conflicts=shutdown.target initrd-switch-root.target
-@@ -20,6 +21,6 @@ Before=shutdown.target initrd-switch-root.target
- [Service]
- Type=oneshot
- RemainAfterExit=yes
--ExecStart=systemd-tmpfiles --prefix=/dev --create --boot --graceful
-+ExecStart=systemd-tmpfiles --prefix=/dev --create --boot
- SuccessExitStatus=DATAERR CANTCREAT
- ImportCredential=tmpfiles.*
-diff --git a/units/systemd-tmpfiles-setup.service b/units/systemd-tmpfiles-setup.service
-index 6c5e3de8fd96..6cae32850f4f 100644
---- a/units/systemd-tmpfiles-setup.service
-+++ b/units/systemd-tmpfiles-setup.service
-@@ -21,7 +21,7 @@ RefuseManualStop=yes
- [Service]
- Type=oneshot
- RemainAfterExit=yes
--ExecStart=systemd-tmpfiles --create --remove --boot
-+ExecStart=systemd-tmpfiles --create --remove --boot --exclude-prefix=/dev
- SuccessExitStatus=DATAERR CANTCREAT
- ImportCredential=tmpfiles.*
- ImportCredential=login.motd