public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2022-08-02 23:40 Sam James
  0 siblings, 0 replies; 9+ messages in thread
From: Sam James @ 2022-08-02 23:40 UTC (permalink / raw
  To: gentoo-commits

commit:     a70524f6112e0bd88cbc3c84b77f393e4f6944f5
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Aug  2 23:40:20 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Aug  2 23:40:27 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a70524f6

sys-apps/systemd-utils: fix build w/ glibc 2.36

Closes: https://bugs.gentoo.org/863218
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/systemd-utils/files/251-glibc-2.36.patch | 154 ++++++++++++++++++++++
 sys-apps/systemd-utils/systemd-utils-251.3.ebuild |   3 +
 2 files changed, 157 insertions(+)

diff --git a/sys-apps/systemd-utils/files/251-glibc-2.36.patch b/sys-apps/systemd-utils/files/251-glibc-2.36.patch
new file mode 100644
index 000000000000..65693d747ca3
--- /dev/null
+++ b/sys-apps/systemd-utils/files/251-glibc-2.36.patch
@@ -0,0 +1,154 @@
+https://bugs.gentoo.org/863218
+https://github.com/systemd/systemd/issues/23984
+https://github.com/systemd/systemd/commit/3657d3a01c7e25ff86d7a4642065b367c4ff7484
+https://github.com/systemd/systemd/commit/0a58cd00454cc7b57b04f3a4a334584d743d7f7a
+
+From: Rudi Heitbaum <rudi@heitbaum.com>
+Date: Sat, 23 Jul 2022 10:38:49 +0000
+Subject: [PATCH] glibc: Remove #include <linux/fs.h> to resolve
+ fsconfig_command/mount_attr conflict with glibc 2.36
+
+--- a/meson.build
++++ b/meson.build
+@@ -511,7 +511,6 @@ decl_headers = '''
+ #include <uchar.h>
+ #include <sys/mount.h>
+ #include <sys/stat.h>
+-#include <linux/fs.h>
+ '''
+ 
+ foreach decl : ['char16_t',
+@@ -523,6 +522,17 @@ foreach decl : ['char16_t',
+         # We get -1 if the size cannot be determined
+         have = cc.sizeof(decl, prefix : decl_headers, args : '-D_GNU_SOURCE') > 0
+ 
++        if decl == 'struct mount_attr'
++                if have
++                        want_linux_fs_h = false
++                else
++                        have = cc.sizeof(decl,
++                                         prefix : decl_headers + '#include <linux/fs.h>',
++                                         args : '-D_GNU_SOURCE') > 0
++                        want_linux_fs_h = have
++                endif
++        endif
++
+         if decl == 'struct statx'
+                 if have
+                         want_linux_stat_h = false
+@@ -538,6 +548,7 @@ foreach decl : ['char16_t',
+ endforeach
+ 
+ conf.set10('WANT_LINUX_STAT_H', want_linux_stat_h)
++conf.set10('WANT_LINUX_FS_H', want_linux_fs_h)
+ 
+ foreach ident : ['secure_getenv', '__secure_getenv']
+         conf.set10('HAVE_' + ident.to_upper(), cc.has_function(ident))
+--- a/src/basic/fd-util.c
++++ b/src/basic/fd-util.c
+@@ -3,7 +3,9 @@
+ #include <errno.h>
+ #include <fcntl.h>
+ #include <linux/btrfs.h>
++#if WANT_LINUX_FS_H
+ #include <linux/fs.h>
++#endif
+ #include <linux/magic.h>
+ #include <sys/ioctl.h>
+ #include <sys/resource.h>
+--- a/src/core/namespace.c
++++ b/src/core/namespace.c
+@@ -7,7 +7,9 @@
+ #include <sys/file.h>
+ #include <sys/mount.h>
+ #include <unistd.h>
++#if WANT_LINUX_FS_H
+ #include <linux/fs.h>
++#endif
+ 
+ #include "alloc-util.h"
+ #include "base-filesystem.h"
+--- a/src/shared/mount-util.c
++++ b/src/shared/mount-util.c
+@@ -7,7 +7,9 @@
+ #include <sys/statvfs.h>
+ #include <unistd.h>
+ #include <linux/loop.h>
++#if WANT_LINUX_FS_H
+ #include <linux/fs.h>
++#endif
+ 
+ #include "alloc-util.h"
+ #include "chase-symlinks.h"
+
+From 0a58cd00454cc7b57b04f3a4a334584d743d7f7a Mon Sep 17 00:00:00 2001
+From: Yu Watanabe <watanabe.yu+github@gmail.com>
+Date: Tue, 26 Jul 2022 20:03:12 +0900
+Subject: [PATCH] home: drop conflicted headers
+
+Fixes #24117.
+--- a/src/basic/missing_fs.h
++++ b/src/basic/missing_fs.h
+@@ -64,3 +64,8 @@
+ #ifndef FS_PROJINHERIT_FL
+ #define FS_PROJINHERIT_FL 0x20000000
+ #endif
++
++/* linux/fscrypt.h */
++#ifndef FS_KEY_DESCRIPTOR_SIZE
++#define FS_KEY_DESCRIPTOR_SIZE 8
++#endif
+--- a/src/home/homework-cifs.c
++++ b/src/home/homework-cifs.c
+@@ -1,5 +1,10 @@
+ /* SPDX-License-Identifier: LGPL-2.1-or-later */
+ 
++#include <sys/mount.h>
++#if WANT_LINUX_FS_H
++#include <linux/fs.h>
++#endif
++
+ #include "dirent-util.h"
+ #include "fd-util.h"
+ #include "fileio.h"
+--- a/src/home/homework-luks.c
++++ b/src/home/homework-luks.c
+@@ -4,7 +4,6 @@
+ #include <poll.h>
+ #include <sys/file.h>
+ #include <sys/ioctl.h>
+-#include <sys/mount.h>
+ #include <sys/xattr.h>
+ 
+ #if HAVE_VALGRIND_MEMCHECK_H
+--- a/src/home/homework-mount.c
++++ b/src/home/homework-mount.c
+@@ -2,7 +2,9 @@
+ 
+ #include <sched.h>
+ #include <sys/mount.h>
++#if WANT_LINUX_FS_H
+ #include <linux/fs.h>
++#endif
+ 
+ #include "alloc-util.h"
+ #include "fd-util.h"
+--- a/src/home/homework.h
++++ b/src/home/homework.h
+@@ -1,13 +1,14 @@
+ /* SPDX-License-Identifier: LGPL-2.1-or-later */
+ #pragma once
+ 
+-#include <linux/fs.h>
+ #include <sys/vfs.h>
+ 
+ #include "sd-id128.h"
+ 
++#include "cryptsetup-util.h"
+ #include "homework-password-cache.h"
+ #include "loop-util.h"
++#include "missing_fs.h" /* for FS_KEY_DESCRIPTOR_SIZE, do not include linux/fs.h */
+ #include "missing_keyctl.h"
+ #include "missing_syscall.h"
+ #include "user-record.h"
+

diff --git a/sys-apps/systemd-utils/systemd-utils-251.3.ebuild b/sys-apps/systemd-utils/systemd-utils-251.3.ebuild
index 21ec7a6de8f9..277f36c6be9c 100644
--- a/sys-apps/systemd-utils/systemd-utils-251.3.ebuild
+++ b/sys-apps/systemd-utils/systemd-utils-251.3.ebuild
@@ -105,7 +105,10 @@ QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
 
 src_prepare() {
 	local PATCHES=(
+		# bug #863218
+		"${FILESDIR}/251-glibc-2.36.patch"
 	)
+
 	if use elibc_musl; then
 		PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
 		# Applied upstream in 251.3


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2022-09-18 15:52 Mike Gilbert
  0 siblings, 0 replies; 9+ messages in thread
From: Mike Gilbert @ 2022-09-18 15:52 UTC (permalink / raw
  To: gentoo-commits

commit:     e58e5928b9db0e3fab21848ff6916b1d1a00664a
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 18 15:50:02 2022 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Sep 18 15:52:35 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e58e5928

sys-apps/systemd-utils: drop 250.7, 250.8, 251.2-r1, 251.3, 251.4

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/systemd-utils/Manifest                    |   5 -
 .../250.4-test-systemd-tmpfiles.standalone.patch   |  40 --
 sys-apps/systemd-utils/files/251-glibc-2.36.patch  | 154 ------
 sys-apps/systemd-utils/systemd-utils-250.7.ebuild  | 500 --------------------
 sys-apps/systemd-utils/systemd-utils-250.8.ebuild  | 500 --------------------
 .../systemd-utils/systemd-utils-251.2-r1.ebuild    | 511 --------------------
 sys-apps/systemd-utils/systemd-utils-251.3.ebuild  | 516 ---------------------
 sys-apps/systemd-utils/systemd-utils-251.4.ebuild  | 514 --------------------
 8 files changed, 2740 deletions(-)

diff --git a/sys-apps/systemd-utils/Manifest b/sys-apps/systemd-utils/Manifest
index ba1726b9a6b2..00326fafab24 100644
--- a/sys-apps/systemd-utils/Manifest
+++ b/sys-apps/systemd-utils/Manifest
@@ -1,7 +1,2 @@
-DIST systemd-musl-patches-250.4.tar.gz 28065 BLAKE2B b8366c4bb29705e3f41f07d0105c4d252d543aaac178e968663660eeb573da034813aa50a96c74ac78ae5efeea379e00df33c5a039ec828cf93450ed23786252 SHA512 66e41fab1873021913c32e3f43300ea7babd18a36e6543838ab7fab4c44f5590c6a7414dd50c7ee81e5513b0e5aa01cb6df4231e8e06c609d63011a32b524213
 DIST systemd-musl-patches-251.2.tar.gz 28512 BLAKE2B 4ac6a5220dab8409962a3954af2fb2484af718d0f282129957236ce241fbe8538a90d507a96c7c3d86f4f408ab784a6888b37486405d3276e7734a1bd5aa9680 SHA512 6e56b62234ac54929faea5a7cad699d0b932f869b48e3ba4e1f349a88653b7c787efec24a09b00290c3dc566614e3c1dc2f3c04f04e943f513108a91eca1be82
-DIST systemd-stable-250.7.tar.gz 11214975 BLAKE2B 5d94b4b1f8b0cd6e8284a89ac0d4bd373eccdad2c3d6e6c453df79c8df47ee0f9cfbde764b72b1f9d172d07e2d9f1f1f41c1ab254cf4abd0722469ebc3ad7cf8 SHA512 99bc6f0c9757b280cb694f3fb4d6fe04d5ce55583eb2bae5ddeb324bb5ee9930c1720fcc27293d90cddba188473653ec541a471ae8115710a5850c26d0ba215d
-DIST systemd-stable-250.8.tar.gz 11215608 BLAKE2B 2a66a2d8cb70f265b59640ace907b8d927018fe11c8977e134a33d67683f06b26c1eb3fd5afe40431bc2c15827ba60c46a37ff1a0a4c716dd24b73aca1583d00 SHA512 653f527f10779a31213da06f7587a3617bd4b823bd3e5a43d626c5a4a7301e4a0fb42cf1fd056d28af6d87e52f258da59d5f0d4a2d98076905f9d3fcda6d18fd
-DIST systemd-stable-251.2.tar.gz 11434645 BLAKE2B a7e118649a7d27b789206ea9f6f2d0314e44561367506ee763a9e98fb97579b3fc49c7a402c8da142945dc98444558f0e311557f52c50863cebc7532c17c651f SHA512 0c4011b685a1e8d535af123cbaf79ab53d59ea665ca5350ab1077ad4e962b49c1fd5b1b5bb3f28c3e28145dfd02aa83023f78de5edec15afe84e3e06e742a67c
-DIST systemd-stable-251.3.tar.gz 11435458 BLAKE2B 544238536848ab390b2476d5ad95d33998674be50020b8db0627bb9d0c86be6576c404ce786b01ceec86f1c75b174c6fc2d7e0d7fbab802a78f48c9d0915c2b8 SHA512 fb5b8dc1742562ef95469e90d406cfb6dfcb337860ad1208b460414b88ff0565071bde797d195faa62761206abc881829de6b1009e5d727cad2dfe0764310d5f
 DIST systemd-stable-251.4.tar.gz 11440203 BLAKE2B 58a0ee4adcc9d35b15b9cc98b3da81d1103b61a6c0bee722468a5113cd7d6de1d40c46ef964ba9ecc4746e81b516ae4b2f1d046874d62db066735c652592612e SHA512 7bbfadd80b88a4c3510a5e4e3572e4eab71dafbf6289da038e552988e09ee8da16da3c9bb8a4fbbde6c6236e0e3c352b0a33f9ee0b84f10241f3499383387738

diff --git a/sys-apps/systemd-utils/files/250.4-test-systemd-tmpfiles.standalone.patch b/sys-apps/systemd-utils/files/250.4-test-systemd-tmpfiles.standalone.patch
deleted file mode 100644
index a915cbb43115..000000000000
--- a/sys-apps/systemd-utils/files/250.4-test-systemd-tmpfiles.standalone.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 55bf689308ed00692494d3623bd2064f33c9bbbe Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Sun, 17 Apr 2022 09:48:28 -0400
-Subject: [PATCH] Add test support for  systemd-tmpfiles.standalone
-
----
- meson.build | 10 +++++++++-
- 1 file changed, 9 insertions(+), 1 deletion(-)
-
-diff --git a/meson.build b/meson.build
-index 458370e83d..d60be1b050 100644
---- a/meson.build
-+++ b/meson.build
-@@ -3451,7 +3451,7 @@ if conf.get('ENABLE_TMPFILES') == 1
-         endif
- 
-         if have_standalone_binaries
--                public_programs += executable(
-+                exe = executable(
-                         'systemd-tmpfiles.standalone',
-                         systemd_tmpfiles_sources,
-                         include_directories : includes,
-@@ -3463,6 +3463,14 @@ if conf.get('ENABLE_TMPFILES') == 1
-                         dependencies : [libacl],
-                         install : true,
-                         install_dir : rootbindir)
-+                public_programs += exe
-+
-+                if want_tests != 'false'
-+                        test('test-systemd-tmpfiles.standalone',
-+                             test_systemd_tmpfiles_py,
-+                             # https://github.com/mesonbuild/meson/issues/2681
-+                             args : exe.full_path())
-+                endif
-         endif
- endif
- 
--- 
-2.35.1
-

diff --git a/sys-apps/systemd-utils/files/251-glibc-2.36.patch b/sys-apps/systemd-utils/files/251-glibc-2.36.patch
deleted file mode 100644
index 65693d747ca3..000000000000
--- a/sys-apps/systemd-utils/files/251-glibc-2.36.patch
+++ /dev/null
@@ -1,154 +0,0 @@
-https://bugs.gentoo.org/863218
-https://github.com/systemd/systemd/issues/23984
-https://github.com/systemd/systemd/commit/3657d3a01c7e25ff86d7a4642065b367c4ff7484
-https://github.com/systemd/systemd/commit/0a58cd00454cc7b57b04f3a4a334584d743d7f7a
-
-From: Rudi Heitbaum <rudi@heitbaum.com>
-Date: Sat, 23 Jul 2022 10:38:49 +0000
-Subject: [PATCH] glibc: Remove #include <linux/fs.h> to resolve
- fsconfig_command/mount_attr conflict with glibc 2.36
-
---- a/meson.build
-+++ b/meson.build
-@@ -511,7 +511,6 @@ decl_headers = '''
- #include <uchar.h>
- #include <sys/mount.h>
- #include <sys/stat.h>
--#include <linux/fs.h>
- '''
- 
- foreach decl : ['char16_t',
-@@ -523,6 +522,17 @@ foreach decl : ['char16_t',
-         # We get -1 if the size cannot be determined
-         have = cc.sizeof(decl, prefix : decl_headers, args : '-D_GNU_SOURCE') > 0
- 
-+        if decl == 'struct mount_attr'
-+                if have
-+                        want_linux_fs_h = false
-+                else
-+                        have = cc.sizeof(decl,
-+                                         prefix : decl_headers + '#include <linux/fs.h>',
-+                                         args : '-D_GNU_SOURCE') > 0
-+                        want_linux_fs_h = have
-+                endif
-+        endif
-+
-         if decl == 'struct statx'
-                 if have
-                         want_linux_stat_h = false
-@@ -538,6 +548,7 @@ foreach decl : ['char16_t',
- endforeach
- 
- conf.set10('WANT_LINUX_STAT_H', want_linux_stat_h)
-+conf.set10('WANT_LINUX_FS_H', want_linux_fs_h)
- 
- foreach ident : ['secure_getenv', '__secure_getenv']
-         conf.set10('HAVE_' + ident.to_upper(), cc.has_function(ident))
---- a/src/basic/fd-util.c
-+++ b/src/basic/fd-util.c
-@@ -3,7 +3,9 @@
- #include <errno.h>
- #include <fcntl.h>
- #include <linux/btrfs.h>
-+#if WANT_LINUX_FS_H
- #include <linux/fs.h>
-+#endif
- #include <linux/magic.h>
- #include <sys/ioctl.h>
- #include <sys/resource.h>
---- a/src/core/namespace.c
-+++ b/src/core/namespace.c
-@@ -7,7 +7,9 @@
- #include <sys/file.h>
- #include <sys/mount.h>
- #include <unistd.h>
-+#if WANT_LINUX_FS_H
- #include <linux/fs.h>
-+#endif
- 
- #include "alloc-util.h"
- #include "base-filesystem.h"
---- a/src/shared/mount-util.c
-+++ b/src/shared/mount-util.c
-@@ -7,7 +7,9 @@
- #include <sys/statvfs.h>
- #include <unistd.h>
- #include <linux/loop.h>
-+#if WANT_LINUX_FS_H
- #include <linux/fs.h>
-+#endif
- 
- #include "alloc-util.h"
- #include "chase-symlinks.h"
-
-From 0a58cd00454cc7b57b04f3a4a334584d743d7f7a Mon Sep 17 00:00:00 2001
-From: Yu Watanabe <watanabe.yu+github@gmail.com>
-Date: Tue, 26 Jul 2022 20:03:12 +0900
-Subject: [PATCH] home: drop conflicted headers
-
-Fixes #24117.
---- a/src/basic/missing_fs.h
-+++ b/src/basic/missing_fs.h
-@@ -64,3 +64,8 @@
- #ifndef FS_PROJINHERIT_FL
- #define FS_PROJINHERIT_FL 0x20000000
- #endif
-+
-+/* linux/fscrypt.h */
-+#ifndef FS_KEY_DESCRIPTOR_SIZE
-+#define FS_KEY_DESCRIPTOR_SIZE 8
-+#endif
---- a/src/home/homework-cifs.c
-+++ b/src/home/homework-cifs.c
-@@ -1,5 +1,10 @@
- /* SPDX-License-Identifier: LGPL-2.1-or-later */
- 
-+#include <sys/mount.h>
-+#if WANT_LINUX_FS_H
-+#include <linux/fs.h>
-+#endif
-+
- #include "dirent-util.h"
- #include "fd-util.h"
- #include "fileio.h"
---- a/src/home/homework-luks.c
-+++ b/src/home/homework-luks.c
-@@ -4,7 +4,6 @@
- #include <poll.h>
- #include <sys/file.h>
- #include <sys/ioctl.h>
--#include <sys/mount.h>
- #include <sys/xattr.h>
- 
- #if HAVE_VALGRIND_MEMCHECK_H
---- a/src/home/homework-mount.c
-+++ b/src/home/homework-mount.c
-@@ -2,7 +2,9 @@
- 
- #include <sched.h>
- #include <sys/mount.h>
-+#if WANT_LINUX_FS_H
- #include <linux/fs.h>
-+#endif
- 
- #include "alloc-util.h"
- #include "fd-util.h"
---- a/src/home/homework.h
-+++ b/src/home/homework.h
-@@ -1,13 +1,14 @@
- /* SPDX-License-Identifier: LGPL-2.1-or-later */
- #pragma once
- 
--#include <linux/fs.h>
- #include <sys/vfs.h>
- 
- #include "sd-id128.h"
- 
-+#include "cryptsetup-util.h"
- #include "homework-password-cache.h"
- #include "loop-util.h"
-+#include "missing_fs.h" /* for FS_KEY_DESCRIPTOR_SIZE, do not include linux/fs.h */
- #include "missing_keyctl.h"
- #include "missing_syscall.h"
- #include "user-record.h"
-

diff --git a/sys-apps/systemd-utils/systemd-utils-250.7.ebuild b/sys-apps/systemd-utils/systemd-utils-250.7.ebuild
deleted file mode 100644
index 7c1f1c2f6a75..000000000000
--- a/sys-apps/systemd-utils/systemd-utils-250.7.ebuild
+++ /dev/null
@@ -1,500 +0,0 @@
-# Copyright 2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..11} )
-
-QA_PKGCONFIG_VERSION=$(ver_cut 1)
-
-inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Utilities split out from systemd for OpenRC users"
-HOMEPAGE="https://systemd.io/"
-
-if [[ ${PV} == *.* ]]; then
-	MY_P="systemd-stable-${PV}"
-	S="${WORKDIR}/${MY_P}"
-	SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-else
-	MY_P="systemd-${PV}"
-	S="${WORKDIR}/${MY_P}"
-	SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-fi
-
-MUSL_PATCHSET="systemd-musl-patches-250.4"
-SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
-
-LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="+acl boot +kmod selinux sysusers +tmpfiles test +udev"
-REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
-	selinux? ( sys-libs/libselinux:0= )
-	tmpfiles? (
-		acl? ( sys-apps/acl:0= )
-	)
-	udev? (
-		>=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
-		sys-libs/libcap:0=[${MULTILIB_USEDEP}]
-		virtual/libcrypt:=[${MULTILIB_USEDEP}]
-		acl? ( sys-apps/acl:0= )
-		kmod? ( >=sys-apps/kmod-15:0= )
-	)
-	!udev? (
-		>=sys-apps/util-linux-2.30:0=
-		sys-libs/libcap:0=
-		virtual/libcrypt:=
-	)
-"
-DEPEND="${COMMON_DEPEND}
-	boot? (
-		>=sys-boot/gnu-efi-3.0.2
-	)
-	>=sys-kernel/linux-headers-3.11
-"
-RDEPEND="${COMMON_DEPEND}
-	boot? ( !<sys-boot/systemd-boot-250 )
-	tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
-	udev? (
-		acct-group/audio
-		acct-group/cdrom
-		acct-group/dialout
-		acct-group/disk
-		acct-group/input
-		acct-group/kmem
-		acct-group/kvm
-		acct-group/lp
-		acct-group/render
-		acct-group/sgx
-		acct-group/tape
-		acct-group/tty
-		acct-group/video
-		!sys-apps/gentoo-systemd-integration
-		!sys-apps/hwids[udev]
-		!<sys-fs/udev-250
-		!sys-fs/eudev
-	)
-	!sys-apps/systemd
-"
-PDEPEND="
-	udev? ( >=sys-fs/udev-init-scripts-34 )
-"
-BDEPEND="
-	$(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt
-	dev-util/gperf
-	>=sys-apps/coreutils-8.16
-	sys-devel/gettext
-	virtual/pkgconfig
-"
-
-TMPFILES_OPTIONAL=1
-UDEV_OPTIONAL=1
-
-python_check_deps() {
-	has_version -b "dev-python/jinja[${PYTHON_USEDEP}]"
-}
-
-QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
-QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
-
-src_prepare() {
-	local PATCHES=(
-		"${FILESDIR}/250.4-test-systemd-tmpfiles.standalone.patch"
-	)
-	if use elibc_musl; then
-		PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
-	fi
-	default
-
-	# Remove install_rpath; we link statically
-	local rpath_pattern="install_rpath : rootlibexecdir,"
-	grep -q -e "${rpath_pattern}" meson.build || die
-	sed -i -e "/${rpath_pattern}/d" meson.build || die
-}
-
-multilib_src_configure() {
-	# When bumping to 251, please keep this, but add the revert patch
-	# like in sys-apps/systemd!
-	#
-	# Broken with FORTIFY_SOURCE=3 without a patch. And the patch
-	# wasn't backported to 250.x, but it turns out to break Clang
-	# anyway:  bug #841770.
-	#
-	# Our toolchain sets F_S=2 by default w/ >= -O2, so we need
-	# to unset F_S first, then explicitly set 2, to negate any default
-	# and anything set by the user if they're choosing 3 (or if they've
-	# modified GCC to set 3).
-	#
-	if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
-		# We can't unconditionally do this b/c we fortify needs
-		# some level of optimisation.
-		filter-flags -D_FORTIFY_SOURCE=3
-		append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
-	fi
-
-	local emesonargs=(
-		-Drootprefix="${EPREFIX:-/}"
-		-Dsysvinit-path=
-		$(meson_native_use_bool boot efi)
-		$(meson_native_use_bool boot gnu-efi)
-		$(meson_native_use_bool selinux)
-		$(meson_native_use_bool sysusers)
-		$(meson_use test tests)
-		$(meson_native_use_bool tmpfiles)
-		$(meson_use udev hwdb)
-
-		-Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
-
-		# Link staticly with libsystemd-shared
-		-Dlink-boot-shared=false
-		-Dlink-udev-shared=false
-
-		# systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
-		-Dstandalone-binaries=true
-
-		# Disable all optional features
-		-Dadm-group=false
-		-Danalyze=false
-		-Dapparmor=false
-		-Daudit=false
-		-Dbacklight=false
-		-Dbinfmt=false
-		-Dbzip2=false
-		-Dcoredump=false
-		-Ddbus=false
-		-Delfutils=false
-		-Denvironment-d=false
-		-Dfdisk=false
-		-Dgcrypt=false
-		-Dglib=false
-		-Dgshadow=false
-		-Dgnutls=false
-		-Dhibernate=false
-		-Dhostnamed=false
-		-Didn=false
-		-Dima=false
-		-Dinitrd=false
-		-Dfirstboot=false
-		-Dkernel-install=false
-		-Dldconfig=false
-		-Dlibcryptsetup=false
-		-Dlibcurl=false
-		-Dlibfido2=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dlocaled=false
-		-Dlogind=false
-		-Dlz4=false
-		-Dmachined=false
-		-Dmicrohttpd=false
-		-Dnetworkd=false
-		-Dnscd=false
-		-Dnss-myhostname=false
-		-Dnss-resolve=false
-		-Dnss-systemd=false
-		-Doomd=false
-		-Dopenssl=false
-		-Dp11kit=false
-		-Dpam=false
-		-Dpcre2=false
-		-Dpolkit=false
-		-Dportabled=false
-		-Dpstore=false
-		-Dpwquality=false
-		-Drandomseed=false
-		-Dresolve=false
-		-Drfkill=false
-		-Dseccomp=false
-		-Dsmack=false
-		-Dsysext=false
-		-Dtimedated=false
-		-Dtimesyncd=false
-		-Dtpm=false
-		-Dqrencode=false
-		-Dquotacheck=false
-		-Duserdb=false
-		-Dutmp=false
-		-Dvconsole=false
-		-Dwheel-group=false
-		-Dxdg-autostart=false
-		-Dxkbcommon=false
-		-Dxz=false
-		-Dzlib=false
-		-Dzstd=false
-	)
-
-	if use tmpfiles || use udev; then
-		emesonargs+=( $(meson_native_use_bool acl) )
-	else
-		emesonargs+=( -Dacl=false )
-	fi
-
-	if use udev; then
-		emesonargs+=( $(meson_native_use_bool kmod) )
-	else
-		emesonargs+=( -Dkmod=false )
-	fi
-
-	if use elibc_musl; then
-		# Avoid redefinition of struct ethhdr.
-		append-cppflags -D__UAPI_DEF_ETHHDR=0
-	fi
-
-	if multilib_is_native_abi || use udev; then
-		meson_src_configure
-	fi
-}
-
-efi_arch() {
-	case "$(tc-arch)" in
-		amd64) echo x64 ;;
-		arm)   echo arm ;;
-		arm64) echo aa64 ;;
-		x86)   echo x86 ;;
-	esac
-}
-
-multilib_src_compile() {
-	local targets=()
-	if multilib_is_native_abi; then
-		if use boot; then
-			targets+=(
-				bootctl
-				man/bootctl.1
-				man/kernel-install.8
-				src/boot/efi/linux$(efi_arch).{efi,elf}.stub
-				src/boot/efi/systemd-boot$(efi_arch).efi
-			)
-		fi
-		if use sysusers; then
-			targets+=(
-				systemd-sysusers.standalone
-				man/sysusers.d.5
-				man/systemd-sysusers.8
-			)
-			if use test; then
-				targets+=(
-					systemd-runtest.env
-				)
-			fi
-		fi
-		if use tmpfiles; then
-			targets+=(
-				systemd-tmpfiles.standalone
-				man/tmpfiles.d.5
-				man/systemd-tmpfiles.8
-			)
-			if use test; then
-				targets+=( test-tmpfiles )
-			fi
-		fi
-		if use udev; then
-			targets+=(
-				udevadm
-				systemd-hwdb
-				src/udev/ata_id
-				src/udev/cdrom_id
-				src/udev/fido_id
-				src/udev/mtd_probe
-				src/udev/scsi_id
-				src/udev/udev.pc
-				src/udev/v4l_id
-				man/udev.conf.5
-				man/systemd.link.5
-				man/hwdb.7
-				man/udev.7
-				man/systemd-hwdb.8
-				man/systemd-udevd.service.8
-				man/udevadm.8
-				hwdb.d/60-autosuspend-chromiumos.hwdb
-				rules.d/50-udev-default.rules
-				rules.d/64-btrfs.rules
-			)
-			if use test; then
-				targets+=(
-					# Used by udev-test.pl
-					systemd-detect-virt
-					test/sys
-					test-udev
-
-					test-fido-id-desc
-					test-udev-builtin
-					test-udev-event
-					test-udev-netlink
-					test-udev-node
-					test-udev-util
-				)
-			fi
-		fi
-	fi
-	if use udev; then
-		targets+=(
-			udev:shared_library
-			src/libudev/libudev.pc
-		)
-		if use test; then
-			targets+=(
-				test-libudev
-				test-libudev-sym
-				test-udev-device-thread
-			)
-		fi
-	fi
-	if multilib_is_native_abi || use udev; then
-		meson_src_compile "${targets[@]}"
-	fi
-}
-
-multilib_src_test() {
-	local tests=()
-	if multilib_is_native_abi; then
-		if use sysusers; then
-			tests+=(
-				test-sysusers.standalone
-			)
-		fi
-		if use tmpfiles; then
-			tests+=(
-				test-systemd-tmpfiles.standalone
-				test-tmpfiles
-			)
-		fi
-		if use udev; then
-			tests+=(
-				rule-syntax-check
-				test-fido-id-desc
-				test-udev-builtin
-				test-udev-event
-				test-udev-netlink
-				test-udev-node
-				test-udev-util
-			)
-			if [[ -w /dev ]]; then
-				tests+=( udev-test )
-			else
-				ewarn "Skipping udev-test (needs write access to /dev)"
-			fi
-		fi
-	fi
-	if use udev; then
-		tests+=(
-			test-libudev
-			test-libudev-sym
-			test-udev-device-thread
-		)
-	fi
-	if [[ ${#tests[@]} -ne 0 ]]; then
-		meson_src_test "${tests[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		if use boot; then
-			into /usr
-			dobin bootctl
-			doman man/{bootctl.1,kernel-install.8}
-			insinto usr/lib/systemd/boot/efi
-			doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
-		fi
-		if use sysusers; then
-			into /
-			newbin systemd-sysusers{.standalone,}
-			doman man/{systemd-sysusers.8,sysusers.d.5}
-		fi
-		if use tmpfiles; then
-			into /
-			newbin systemd-tmpfiles{.standalone,}
-			doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
-		fi
-		if use udev; then
-			into /
-			dobin udevadm systemd-hwdb
-			dosym ../../bin/udevadm /lib/systemd/systemd-udevd
-			exeinto /lib/udev
-			doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
-			insinto /lib/udev/rules.d
-			doins rules.d/*.rules
-			insinto /lib/udev/hwdb.d
-			doins hwdb.d/*.hwdb
-			insinto /usr/share/pkgconfig
-			doins src/udev/udev.pc
-			doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
-			newman man/systemd-udevd.service.8 systemd-udevd.8
-
-		fi
-	fi
-	if use udev; then
-		into /usr
-		dolib.so "$(readlink libudev.so.1)" libudev.so{.1,}
-		gen_usr_ldscript -a udev
-		insinto "/usr/$(get_libdir)/pkgconfig"
-		doins src/libudev/libudev.pc
-	fi
-}
-
-multilib_src_install_all() {
-	einstalldocs
-	if use boot; then
-		into /usr
-		dobin src/kernel-install/kernel-install
-		exeinto usr/lib/kernel/install.d
-		doexe src/kernel-install/*.install
-		dobashcomp shell-completion/bash/bootctl
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/{_bootctl,_kernel-install}
-	fi
-	if use tmpfiles; then
-		doinitd "${FILESDIR}"/systemd-tmpfiles-setup
-		doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/_systemd-tmpfiles
-	fi
-	if use udev; then
-		doheader src/libudev/libudev.h
-		insinto /etc/udev
-		doins src/udev/udev.conf
-		keepdir /etc/udev/{hwdb.d,rules.d}
-		insinto /lib/systemd/network
-		doins network/99-default.link
-		insinto /lib/udev/rules.d
-		doins rules.d/*.rules
-		doins "${FILESDIR}"/40-gentoo.rules
-		insinto /lib/udev/hwdb.d
-		doins hwdb.d/*.hwdb
-		dobashcomp shell-completion/bash/udevadm
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/_udevadm
-	fi
-}
-
-add_service() {
-	local initd=$1
-	local runlevel=$2
-
-	ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
-	mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
-	ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
-	eend $?
-}
-
-pkg_postinst() {
-	if [[ -z ${REPLACING_VERSIONS} ]]; then
-		add_service systemd-tmpfiles-setup-dev sysinit
-		add_service systemd-tmpfiles-setup boot
-	fi
-	if use udev; then
-		ebegin "Updating hwdb"
-		systemd-hwdb --root="${ROOT}" update
-		eend $?
-		udev_reload
-	fi
-}

diff --git a/sys-apps/systemd-utils/systemd-utils-250.8.ebuild b/sys-apps/systemd-utils/systemd-utils-250.8.ebuild
deleted file mode 100644
index 9afc4a2e8c10..000000000000
--- a/sys-apps/systemd-utils/systemd-utils-250.8.ebuild
+++ /dev/null
@@ -1,500 +0,0 @@
-# Copyright 2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..11} )
-
-QA_PKGCONFIG_VERSION=$(ver_cut 1)
-
-inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Utilities split out from systemd for OpenRC users"
-HOMEPAGE="https://systemd.io/"
-
-if [[ ${PV} == *.* ]]; then
-	MY_P="systemd-stable-${PV}"
-	S="${WORKDIR}/${MY_P}"
-	SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-else
-	MY_P="systemd-${PV}"
-	S="${WORKDIR}/${MY_P}"
-	SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-fi
-
-MUSL_PATCHSET="systemd-musl-patches-250.4"
-SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
-
-LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="+acl boot +kmod selinux sysusers +tmpfiles test +udev"
-REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
-	selinux? ( sys-libs/libselinux:0= )
-	tmpfiles? (
-		acl? ( sys-apps/acl:0= )
-	)
-	udev? (
-		>=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
-		sys-libs/libcap:0=[${MULTILIB_USEDEP}]
-		virtual/libcrypt:=[${MULTILIB_USEDEP}]
-		acl? ( sys-apps/acl:0= )
-		kmod? ( >=sys-apps/kmod-15:0= )
-	)
-	!udev? (
-		>=sys-apps/util-linux-2.30:0=
-		sys-libs/libcap:0=
-		virtual/libcrypt:=
-	)
-"
-DEPEND="${COMMON_DEPEND}
-	boot? (
-		>=sys-boot/gnu-efi-3.0.2
-	)
-	>=sys-kernel/linux-headers-3.11
-"
-RDEPEND="${COMMON_DEPEND}
-	boot? ( !<sys-boot/systemd-boot-250 )
-	tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
-	udev? (
-		acct-group/audio
-		acct-group/cdrom
-		acct-group/dialout
-		acct-group/disk
-		acct-group/input
-		acct-group/kmem
-		acct-group/kvm
-		acct-group/lp
-		acct-group/render
-		acct-group/sgx
-		acct-group/tape
-		acct-group/tty
-		acct-group/video
-		!sys-apps/gentoo-systemd-integration
-		!sys-apps/hwids[udev]
-		!<sys-fs/udev-250
-		!sys-fs/eudev
-	)
-	!sys-apps/systemd
-"
-PDEPEND="
-	udev? ( >=sys-fs/udev-init-scripts-34 )
-"
-BDEPEND="
-	$(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt
-	dev-util/gperf
-	>=sys-apps/coreutils-8.16
-	sys-devel/gettext
-	virtual/pkgconfig
-"
-
-TMPFILES_OPTIONAL=1
-UDEV_OPTIONAL=1
-
-python_check_deps() {
-	has_version -b "dev-python/jinja[${PYTHON_USEDEP}]"
-}
-
-QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
-QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
-
-src_prepare() {
-	local PATCHES=(
-		"${FILESDIR}/250.4-test-systemd-tmpfiles.standalone.patch"
-	)
-	if use elibc_musl; then
-		PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
-	fi
-	default
-
-	# Remove install_rpath; we link statically
-	local rpath_pattern="install_rpath : rootlibexecdir,"
-	grep -q -e "${rpath_pattern}" meson.build || die
-	sed -i -e "/${rpath_pattern}/d" meson.build || die
-}
-
-multilib_src_configure() {
-	# When bumping to 251, please keep this, but add the revert patch
-	# like in sys-apps/systemd!
-	#
-	# Broken with FORTIFY_SOURCE=3 without a patch. And the patch
-	# wasn't backported to 250.x, but it turns out to break Clang
-	# anyway:  bug #841770.
-	#
-	# Our toolchain sets F_S=2 by default w/ >= -O2, so we need
-	# to unset F_S first, then explicitly set 2, to negate any default
-	# and anything set by the user if they're choosing 3 (or if they've
-	# modified GCC to set 3).
-	#
-	if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
-		# We can't unconditionally do this b/c we fortify needs
-		# some level of optimisation.
-		filter-flags -D_FORTIFY_SOURCE=3
-		append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
-	fi
-
-	local emesonargs=(
-		-Drootprefix="${EPREFIX:-/}"
-		-Dsysvinit-path=
-		$(meson_native_use_bool boot efi)
-		$(meson_native_use_bool boot gnu-efi)
-		$(meson_native_use_bool selinux)
-		$(meson_native_use_bool sysusers)
-		$(meson_use test tests)
-		$(meson_native_use_bool tmpfiles)
-		$(meson_use udev hwdb)
-
-		-Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
-
-		# Link staticly with libsystemd-shared
-		-Dlink-boot-shared=false
-		-Dlink-udev-shared=false
-
-		# systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
-		-Dstandalone-binaries=true
-
-		# Disable all optional features
-		-Dadm-group=false
-		-Danalyze=false
-		-Dapparmor=false
-		-Daudit=false
-		-Dbacklight=false
-		-Dbinfmt=false
-		-Dbzip2=false
-		-Dcoredump=false
-		-Ddbus=false
-		-Delfutils=false
-		-Denvironment-d=false
-		-Dfdisk=false
-		-Dgcrypt=false
-		-Dglib=false
-		-Dgshadow=false
-		-Dgnutls=false
-		-Dhibernate=false
-		-Dhostnamed=false
-		-Didn=false
-		-Dima=false
-		-Dinitrd=false
-		-Dfirstboot=false
-		-Dkernel-install=false
-		-Dldconfig=false
-		-Dlibcryptsetup=false
-		-Dlibcurl=false
-		-Dlibfido2=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dlocaled=false
-		-Dlogind=false
-		-Dlz4=false
-		-Dmachined=false
-		-Dmicrohttpd=false
-		-Dnetworkd=false
-		-Dnscd=false
-		-Dnss-myhostname=false
-		-Dnss-resolve=false
-		-Dnss-systemd=false
-		-Doomd=false
-		-Dopenssl=false
-		-Dp11kit=false
-		-Dpam=false
-		-Dpcre2=false
-		-Dpolkit=false
-		-Dportabled=false
-		-Dpstore=false
-		-Dpwquality=false
-		-Drandomseed=false
-		-Dresolve=false
-		-Drfkill=false
-		-Dseccomp=false
-		-Dsmack=false
-		-Dsysext=false
-		-Dtimedated=false
-		-Dtimesyncd=false
-		-Dtpm=false
-		-Dqrencode=false
-		-Dquotacheck=false
-		-Duserdb=false
-		-Dutmp=false
-		-Dvconsole=false
-		-Dwheel-group=false
-		-Dxdg-autostart=false
-		-Dxkbcommon=false
-		-Dxz=false
-		-Dzlib=false
-		-Dzstd=false
-	)
-
-	if use tmpfiles || use udev; then
-		emesonargs+=( $(meson_native_use_bool acl) )
-	else
-		emesonargs+=( -Dacl=false )
-	fi
-
-	if use udev; then
-		emesonargs+=( $(meson_native_use_bool kmod) )
-	else
-		emesonargs+=( -Dkmod=false )
-	fi
-
-	if use elibc_musl; then
-		# Avoid redefinition of struct ethhdr.
-		append-cppflags -D__UAPI_DEF_ETHHDR=0
-	fi
-
-	if multilib_is_native_abi || use udev; then
-		meson_src_configure
-	fi
-}
-
-efi_arch() {
-	case "$(tc-arch)" in
-		amd64) echo x64 ;;
-		arm)   echo arm ;;
-		arm64) echo aa64 ;;
-		x86)   echo x86 ;;
-	esac
-}
-
-multilib_src_compile() {
-	local targets=()
-	if multilib_is_native_abi; then
-		if use boot; then
-			targets+=(
-				bootctl
-				man/bootctl.1
-				man/kernel-install.8
-				src/boot/efi/linux$(efi_arch).{efi,elf}.stub
-				src/boot/efi/systemd-boot$(efi_arch).efi
-			)
-		fi
-		if use sysusers; then
-			targets+=(
-				systemd-sysusers.standalone
-				man/sysusers.d.5
-				man/systemd-sysusers.8
-			)
-			if use test; then
-				targets+=(
-					systemd-runtest.env
-				)
-			fi
-		fi
-		if use tmpfiles; then
-			targets+=(
-				systemd-tmpfiles.standalone
-				man/tmpfiles.d.5
-				man/systemd-tmpfiles.8
-			)
-			if use test; then
-				targets+=( test-tmpfiles )
-			fi
-		fi
-		if use udev; then
-			targets+=(
-				udevadm
-				systemd-hwdb
-				src/udev/ata_id
-				src/udev/cdrom_id
-				src/udev/fido_id
-				src/udev/mtd_probe
-				src/udev/scsi_id
-				src/udev/udev.pc
-				src/udev/v4l_id
-				man/udev.conf.5
-				man/systemd.link.5
-				man/hwdb.7
-				man/udev.7
-				man/systemd-hwdb.8
-				man/systemd-udevd.service.8
-				man/udevadm.8
-				hwdb.d/60-autosuspend-chromiumos.hwdb
-				rules.d/50-udev-default.rules
-				rules.d/64-btrfs.rules
-			)
-			if use test; then
-				targets+=(
-					# Used by udev-test.pl
-					systemd-detect-virt
-					test/sys
-					test-udev
-
-					test-fido-id-desc
-					test-udev-builtin
-					test-udev-event
-					test-udev-netlink
-					test-udev-node
-					test-udev-util
-				)
-			fi
-		fi
-	fi
-	if use udev; then
-		targets+=(
-			udev:shared_library
-			src/libudev/libudev.pc
-		)
-		if use test; then
-			targets+=(
-				test-libudev
-				test-libudev-sym
-				test-udev-device-thread
-			)
-		fi
-	fi
-	if multilib_is_native_abi || use udev; then
-		meson_src_compile "${targets[@]}"
-	fi
-}
-
-multilib_src_test() {
-	local tests=()
-	if multilib_is_native_abi; then
-		if use sysusers; then
-			tests+=(
-				test-sysusers.standalone
-			)
-		fi
-		if use tmpfiles; then
-			tests+=(
-				test-systemd-tmpfiles.standalone
-				test-tmpfiles
-			)
-		fi
-		if use udev; then
-			tests+=(
-				rule-syntax-check
-				test-fido-id-desc
-				test-udev-builtin
-				test-udev-event
-				test-udev-netlink
-				test-udev-node
-				test-udev-util
-			)
-			if [[ -w /dev ]]; then
-				tests+=( udev-test )
-			else
-				ewarn "Skipping udev-test (needs write access to /dev)"
-			fi
-		fi
-	fi
-	if use udev; then
-		tests+=(
-			test-libudev
-			test-libudev-sym
-			test-udev-device-thread
-		)
-	fi
-	if [[ ${#tests[@]} -ne 0 ]]; then
-		meson_src_test "${tests[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		if use boot; then
-			into /usr
-			dobin bootctl
-			doman man/{bootctl.1,kernel-install.8}
-			insinto usr/lib/systemd/boot/efi
-			doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
-		fi
-		if use sysusers; then
-			into /
-			newbin systemd-sysusers{.standalone,}
-			doman man/{systemd-sysusers.8,sysusers.d.5}
-		fi
-		if use tmpfiles; then
-			into /
-			newbin systemd-tmpfiles{.standalone,}
-			doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
-		fi
-		if use udev; then
-			into /
-			dobin udevadm systemd-hwdb
-			dosym ../../bin/udevadm /lib/systemd/systemd-udevd
-			exeinto /lib/udev
-			doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
-			insinto /lib/udev/rules.d
-			doins rules.d/*.rules
-			insinto /lib/udev/hwdb.d
-			doins hwdb.d/*.hwdb
-			insinto /usr/share/pkgconfig
-			doins src/udev/udev.pc
-			doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
-			newman man/systemd-udevd.service.8 systemd-udevd.8
-
-		fi
-	fi
-	if use udev; then
-		into /usr
-		dolib.so "$(readlink libudev.so.1)" libudev.so{.1,}
-		gen_usr_ldscript -a udev
-		insinto "/usr/$(get_libdir)/pkgconfig"
-		doins src/libudev/libudev.pc
-	fi
-}
-
-multilib_src_install_all() {
-	einstalldocs
-	if use boot; then
-		into /usr
-		dobin src/kernel-install/kernel-install
-		exeinto usr/lib/kernel/install.d
-		doexe src/kernel-install/*.install
-		dobashcomp shell-completion/bash/bootctl
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/{_bootctl,_kernel-install}
-	fi
-	if use tmpfiles; then
-		doinitd "${FILESDIR}"/systemd-tmpfiles-setup
-		doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/_systemd-tmpfiles
-	fi
-	if use udev; then
-		doheader src/libudev/libudev.h
-		insinto /etc/udev
-		doins src/udev/udev.conf
-		keepdir /etc/udev/{hwdb.d,rules.d}
-		insinto /lib/systemd/network
-		doins network/99-default.link
-		insinto /lib/udev/rules.d
-		doins rules.d/*.rules
-		doins "${FILESDIR}"/40-gentoo.rules
-		insinto /lib/udev/hwdb.d
-		doins hwdb.d/*.hwdb
-		dobashcomp shell-completion/bash/udevadm
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/_udevadm
-	fi
-}
-
-add_service() {
-	local initd=$1
-	local runlevel=$2
-
-	ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
-	mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
-	ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
-	eend $?
-}
-
-pkg_postinst() {
-	if [[ -z ${REPLACING_VERSIONS} ]]; then
-		add_service systemd-tmpfiles-setup-dev sysinit
-		add_service systemd-tmpfiles-setup boot
-	fi
-	if use udev; then
-		ebegin "Updating hwdb"
-		systemd-hwdb --root="${ROOT}" update
-		eend $?
-		udev_reload
-	fi
-}

diff --git a/sys-apps/systemd-utils/systemd-utils-251.2-r1.ebuild b/sys-apps/systemd-utils/systemd-utils-251.2-r1.ebuild
deleted file mode 100644
index 357c32eb616c..000000000000
--- a/sys-apps/systemd-utils/systemd-utils-251.2-r1.ebuild
+++ /dev/null
@@ -1,511 +0,0 @@
-# Copyright 2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..11} )
-
-QA_PKGCONFIG_VERSION=$(ver_cut 1)
-
-inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Utilities split out from systemd for OpenRC users"
-HOMEPAGE="https://systemd.io/"
-
-if [[ ${PV} == *.* ]]; then
-	MY_P="systemd-stable-${PV}"
-	S="${WORKDIR}/${MY_P}"
-	SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-else
-	MY_P="systemd-${PV}"
-	S="${WORKDIR}/${MY_P}"
-	SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-fi
-
-MUSL_PATCHSET="systemd-musl-patches-251.2"
-SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
-
-LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="+acl boot +kmod selinux sysusers +tmpfiles test +udev"
-REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
-	elibc_musl? ( >=sys-libs/musl-1.2.3 )
-	selinux? ( sys-libs/libselinux:0= )
-	tmpfiles? (
-		acl? ( sys-apps/acl:0= )
-	)
-	udev? (
-		>=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
-		sys-libs/libcap:0=[${MULTILIB_USEDEP}]
-		virtual/libcrypt:=[${MULTILIB_USEDEP}]
-		acl? ( sys-apps/acl:0= )
-		kmod? ( >=sys-apps/kmod-15:0= )
-	)
-	!udev? (
-		>=sys-apps/util-linux-2.30:0=
-		sys-libs/libcap:0=
-		virtual/libcrypt:=
-	)
-"
-DEPEND="${COMMON_DEPEND}
-	>=sys-kernel/linux-headers-3.11
-	boot? ( >=sys-boot/gnu-efi-3.0.2 )
-"
-RDEPEND="${COMMON_DEPEND}
-	boot? ( !<sys-boot/systemd-boot-250 )
-	tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
-	udev? (
-		acct-group/audio
-		acct-group/cdrom
-		acct-group/dialout
-		acct-group/disk
-		acct-group/input
-		acct-group/kmem
-		acct-group/kvm
-		acct-group/lp
-		acct-group/render
-		acct-group/sgx
-		acct-group/tape
-		acct-group/tty
-		acct-group/video
-		!sys-apps/gentoo-systemd-integration
-		!sys-apps/hwids[udev]
-		!<sys-fs/udev-250
-		!sys-fs/eudev
-	)
-	!sys-apps/systemd
-"
-PDEPEND="
-	udev? ( >=sys-fs/udev-init-scripts-34 )
-"
-BDEPEND="
-	$(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt
-	dev-util/gperf
-	>=sys-apps/coreutils-8.16
-	sys-devel/gettext
-	virtual/pkgconfig
-"
-
-TMPFILES_OPTIONAL=1
-UDEV_OPTIONAL=1
-
-python_check_deps() {
-	has_version -b "dev-python/jinja[${PYTHON_USEDEP}]"
-}
-
-QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
-QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
-
-src_prepare() {
-	local PATCHES=(
-	)
-	if use elibc_musl; then
-		PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
-	fi
-	default
-
-	# Remove install_rpath; we link statically
-	local rpath_pattern="install_rpath : rootlibexecdir,"
-	grep -q -e "${rpath_pattern}" meson.build || die
-	sed -i -e "/${rpath_pattern}/d" meson.build || die
-}
-
-multilib_src_configure() {
-	# When bumping to 251, please keep this, but add the revert patch
-	# like in sys-apps/systemd!
-	#
-	# Broken with FORTIFY_SOURCE=3 without a patch. And the patch
-	# wasn't backported to 250.x, but it turns out to break Clang
-	# anyway:  bug #841770.
-	#
-	# Our toolchain sets F_S=2 by default w/ >= -O2, so we need
-	# to unset F_S first, then explicitly set 2, to negate any default
-	# and anything set by the user if they're choosing 3 (or if they've
-	# modified GCC to set 3).
-	#
-	if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
-		# We can't unconditionally do this b/c we fortify needs
-		# some level of optimisation.
-		filter-flags -D_FORTIFY_SOURCE=3
-		append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
-	fi
-
-	local emesonargs=(
-		-Drootprefix="${EPREFIX:-/}"
-		-Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
-		-Dsysvinit-path=
-		$(meson_native_use_bool boot efi)
-		$(meson_native_use_bool boot gnu-efi)
-		$(meson_native_use_bool boot kernel-install)
-		$(meson_native_use_bool selinux)
-		$(meson_native_use_bool sysusers)
-		$(meson_use test tests)
-		$(meson_native_use_bool tmpfiles)
-		$(meson_use udev hwdb)
-
-		-Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
-
-		# Link staticly with libsystemd-shared
-		-Dlink-boot-shared=false
-		-Dlink-udev-shared=false
-
-		# systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
-		-Dstandalone-binaries=true
-
-		# Disable all optional features
-		-Dadm-group=false
-		-Danalyze=false
-		-Dapparmor=false
-		-Daudit=false
-		-Dbacklight=false
-		-Dbinfmt=false
-		-Dbzip2=false
-		-Dcoredump=false
-		-Ddbus=false
-		-Delfutils=false
-		-Denvironment-d=false
-		-Dfdisk=false
-		-Dgcrypt=false
-		-Dglib=false
-		-Dgshadow=false
-		-Dgnutls=false
-		-Dhibernate=false
-		-Dhostnamed=false
-		-Didn=false
-		-Dima=false
-		-Dinitrd=false
-		-Dfirstboot=false
-		-Dldconfig=false
-		-Dlibcryptsetup=false
-		-Dlibcurl=false
-		-Dlibfido2=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dlocaled=false
-		-Dlogind=false
-		-Dlz4=false
-		-Dmachined=false
-		-Dmicrohttpd=false
-		-Dnetworkd=false
-		-Dnscd=false
-		-Dnss-myhostname=false
-		-Dnss-resolve=false
-		-Dnss-systemd=false
-		-Doomd=false
-		-Dopenssl=false
-		-Dp11kit=false
-		-Dpam=false
-		-Dpcre2=false
-		-Dpolkit=false
-		-Dportabled=false
-		-Dpstore=false
-		-Dpwquality=false
-		-Drandomseed=false
-		-Dresolve=false
-		-Drfkill=false
-		-Dseccomp=false
-		-Dsmack=false
-		-Dsysext=false
-		-Dtimedated=false
-		-Dtimesyncd=false
-		-Dtpm=false
-		-Dqrencode=false
-		-Dquotacheck=false
-		-Duserdb=false
-		-Dutmp=false
-		-Dvconsole=false
-		-Dwheel-group=false
-		-Dxdg-autostart=false
-		-Dxkbcommon=false
-		-Dxz=false
-		-Dzlib=false
-		-Dzstd=false
-	)
-
-	if use tmpfiles || use udev; then
-		emesonargs+=( $(meson_native_use_bool acl) )
-	else
-		emesonargs+=( -Dacl=false )
-	fi
-
-	if use udev; then
-		emesonargs+=( $(meson_native_use_bool kmod) )
-	else
-		emesonargs+=( -Dkmod=false )
-	fi
-
-	if use elibc_musl; then
-		# Avoid redefinition of struct ethhdr.
-		append-cppflags -D__UAPI_DEF_ETHHDR=0
-	fi
-
-	if multilib_is_native_abi || use udev; then
-		meson_src_configure
-	fi
-}
-
-efi_arch() {
-	case "$(tc-arch)" in
-		amd64) echo x64 ;;
-		arm)   echo arm ;;
-		arm64) echo aa64 ;;
-		x86)   echo x86 ;;
-	esac
-}
-
-multilib_src_compile() {
-	local targets=()
-	if multilib_is_native_abi; then
-		if use boot; then
-			targets+=(
-				bootctl
-				kernel-install
-				man/bootctl.1
-				man/kernel-install.8
-				src/boot/efi/linux$(efi_arch).{efi,elf}.stub
-				src/boot/efi/systemd-boot$(efi_arch).efi
-			)
-		fi
-		if use sysusers; then
-			targets+=(
-				systemd-sysusers.standalone
-				man/sysusers.d.5
-				man/systemd-sysusers.8
-			)
-			if use test; then
-				targets+=(
-					systemd-runtest.env
-				)
-			fi
-		fi
-		if use tmpfiles; then
-			targets+=(
-				systemd-tmpfiles.standalone
-				man/tmpfiles.d.5
-				man/systemd-tmpfiles.8
-			)
-			if use test; then
-				targets+=( test-tmpfiles )
-			fi
-		fi
-		if use udev; then
-			targets+=(
-				udevadm
-				systemd-hwdb
-				src/udev/ata_id
-				src/udev/cdrom_id
-				src/udev/fido_id
-				src/udev/mtd_probe
-				src/udev/scsi_id
-				src/udev/udev.pc
-				src/udev/v4l_id
-				man/udev.conf.5
-				man/systemd.link.5
-				man/hwdb.7
-				man/udev.7
-				man/systemd-hwdb.8
-				man/systemd-udevd.service.8
-				man/udevadm.8
-				hwdb.d/60-autosuspend-chromiumos.hwdb
-				rules.d/50-udev-default.rules
-				rules.d/64-btrfs.rules
-			)
-			if use test; then
-				targets+=(
-					# Used by udev-test.pl
-					systemd-detect-virt
-					test/sys
-					test-udev
-
-					test-fido-id-desc
-					test-udev-builtin
-					test-udev-event
-					test-udev-netlink
-					test-udev-node
-					test-udev-util
-				)
-			fi
-		fi
-	fi
-	if use udev; then
-		targets+=(
-			udev:shared_library
-			src/libudev/libudev.pc
-		)
-		if use test; then
-			targets+=(
-				test-libudev
-				test-libudev-sym
-				test-udev-device-thread
-			)
-		fi
-	fi
-	if multilib_is_native_abi || use udev; then
-		meson_src_compile "${targets[@]}"
-	fi
-}
-
-multilib_src_test() {
-	local tests=()
-	if multilib_is_native_abi; then
-		if use sysusers; then
-			tests+=(
-				test-sysusers.standalone
-			)
-		fi
-		if use tmpfiles; then
-			tests+=(
-				test-systemd-tmpfiles.standalone
-				test-tmpfiles
-			)
-		fi
-		if use udev; then
-			tests+=(
-				rule-syntax-check
-				test-fido-id-desc
-				test-udev-builtin
-				test-udev-event
-				test-udev-netlink
-				test-udev-node
-				test-udev-util
-			)
-			if [[ -w /dev ]]; then
-				tests+=( udev-test )
-			else
-				ewarn "Skipping udev-test (needs write access to /dev)"
-			fi
-		fi
-	fi
-	if use udev; then
-		tests+=(
-			test-libudev
-			test-libudev-sym
-			test-udev-device-thread
-		)
-	fi
-	if [[ ${#tests[@]} -ne 0 ]]; then
-		meson_src_test "${tests[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		if use boot; then
-			into /usr
-			dobin bootctl kernel-install
-			doman man/{bootctl.1,kernel-install.8}
-			insinto usr/lib/systemd/boot/efi
-			doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
-		fi
-		if use sysusers; then
-			into /
-			newbin systemd-sysusers{.standalone,}
-			doman man/{systemd-sysusers.8,sysusers.d.5}
-		fi
-		if use tmpfiles; then
-			into /
-			newbin systemd-tmpfiles{.standalone,}
-			doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
-		fi
-		if use udev; then
-			into /
-			dobin udevadm systemd-hwdb
-			dosym ../../bin/udevadm /lib/systemd/systemd-udevd
-
-			exeinto /lib/udev
-			doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
-
-			insinto /lib/udev/rules.d
-			doins rules.d/*.rules
-
-			insinto /lib/udev/hwdb.d
-			doins hwdb.d/*.hwdb
-
-			insinto /usr/share/pkgconfig
-			doins src/udev/udev.pc
-
-			doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
-			newman man/systemd-udevd.service.8 systemd-udevd.8
-		fi
-	fi
-	if use udev; then
-		meson_install --no-rebuild --tags libudev
-		gen_usr_ldscript -a udev
-		insinto "/usr/$(get_libdir)/pkgconfig"
-		doins src/libudev/libudev.pc
-	fi
-}
-
-multilib_src_install_all() {
-	einstalldocs
-	if use boot; then
-		into /usr
-		exeinto usr/lib/kernel/install.d
-		doexe src/kernel-install/*.install
-		dobashcomp shell-completion/bash/bootctl
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/{_bootctl,_kernel-install}
-	fi
-	if use tmpfiles; then
-		doinitd "${FILESDIR}"/systemd-tmpfiles-setup
-		doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/_systemd-tmpfiles
-	fi
-	if use udev; then
-		doheader src/libudev/libudev.h
-
-		insinto /etc/udev
-		doins src/udev/udev.conf
-		keepdir /etc/udev/{hwdb.d,rules.d}
-
-		insinto /lib/systemd/network
-		doins network/99-default.link
-
-		# Remove to avoid conflict with elogind
-		# https://bugs.gentoo.org/856433
-		rm rules.d/70-power-switch.rules || die
-		insinto /lib/udev/rules.d
-		doins rules.d/*.rules
-		doins "${FILESDIR}"/40-gentoo.rules
-
-		insinto /lib/udev/hwdb.d
-		doins hwdb.d/*.hwdb
-
-		dobashcomp shell-completion/bash/udevadm
-
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/_udevadm
-	fi
-}
-
-add_service() {
-	local initd=$1
-	local runlevel=$2
-
-	ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
-	mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
-	ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
-	eend $?
-}
-
-pkg_postinst() {
-	if [[ -z ${REPLACING_VERSIONS} ]]; then
-		add_service systemd-tmpfiles-setup-dev sysinit
-		add_service systemd-tmpfiles-setup boot
-	fi
-	if use udev; then
-		ebegin "Updating hwdb"
-		systemd-hwdb --root="${ROOT}" update
-		eend $?
-		udev_reload
-	fi
-}

diff --git a/sys-apps/systemd-utils/systemd-utils-251.3.ebuild b/sys-apps/systemd-utils/systemd-utils-251.3.ebuild
deleted file mode 100644
index 7aeb8a9076f5..000000000000
--- a/sys-apps/systemd-utils/systemd-utils-251.3.ebuild
+++ /dev/null
@@ -1,516 +0,0 @@
-# Copyright 2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..11} )
-
-QA_PKGCONFIG_VERSION=$(ver_cut 1)
-
-inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Utilities split out from systemd for OpenRC users"
-HOMEPAGE="https://systemd.io/"
-
-if [[ ${PV} == *.* ]]; then
-	MY_P="systemd-stable-${PV}"
-	S="${WORKDIR}/${MY_P}"
-	SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-else
-	MY_P="systemd-${PV}"
-	S="${WORKDIR}/${MY_P}"
-	SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-fi
-
-MUSL_PATCHSET="systemd-musl-patches-251.2"
-SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
-
-LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="+acl boot +kmod selinux sysusers +tmpfiles test +udev"
-REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
-	elibc_musl? ( >=sys-libs/musl-1.2.3 )
-	selinux? ( sys-libs/libselinux:0= )
-	tmpfiles? (
-		acl? ( sys-apps/acl:0= )
-	)
-	udev? (
-		>=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
-		sys-libs/libcap:0=[${MULTILIB_USEDEP}]
-		virtual/libcrypt:=[${MULTILIB_USEDEP}]
-		acl? ( sys-apps/acl:0= )
-		kmod? ( >=sys-apps/kmod-15:0= )
-	)
-	!udev? (
-		>=sys-apps/util-linux-2.30:0=
-		sys-libs/libcap:0=
-		virtual/libcrypt:=
-	)
-"
-DEPEND="${COMMON_DEPEND}
-	>=sys-kernel/linux-headers-3.11
-	boot? ( >=sys-boot/gnu-efi-3.0.2 )
-"
-RDEPEND="${COMMON_DEPEND}
-	boot? ( !<sys-boot/systemd-boot-250 )
-	tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
-	udev? (
-		acct-group/audio
-		acct-group/cdrom
-		acct-group/dialout
-		acct-group/disk
-		acct-group/input
-		acct-group/kmem
-		acct-group/kvm
-		acct-group/lp
-		acct-group/render
-		acct-group/sgx
-		acct-group/tape
-		acct-group/tty
-		acct-group/video
-		!sys-apps/gentoo-systemd-integration
-		!sys-apps/hwids[udev]
-		!<sys-fs/udev-250
-		!sys-fs/eudev
-	)
-	!sys-apps/systemd
-"
-PDEPEND="
-	udev? ( >=sys-fs/udev-init-scripts-34 )
-"
-BDEPEND="
-	$(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt
-	dev-util/gperf
-	>=sys-apps/coreutils-8.16
-	sys-devel/gettext
-	virtual/pkgconfig
-"
-
-TMPFILES_OPTIONAL=1
-UDEV_OPTIONAL=1
-
-python_check_deps() {
-	has_version -b "dev-python/jinja[${PYTHON_USEDEP}]"
-}
-
-QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
-QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
-
-src_prepare() {
-	local PATCHES=(
-		# bug #863218
-		"${FILESDIR}/251-glibc-2.36.patch"
-	)
-
-	if use elibc_musl; then
-		PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
-		# Applied upstream in 251.3
-		rm "${WORKDIR}/${MUSL_PATCHSET}/0001-Add-sys-file.h-for-LOCK_.patch" || die
-	fi
-	default
-
-	# Remove install_rpath; we link statically
-	local rpath_pattern="install_rpath : rootlibexecdir,"
-	grep -q -e "${rpath_pattern}" meson.build || die
-	sed -i -e "/${rpath_pattern}/d" meson.build || die
-}
-
-multilib_src_configure() {
-	# When bumping to 251, please keep this, but add the revert patch
-	# like in sys-apps/systemd!
-	#
-	# Broken with FORTIFY_SOURCE=3 without a patch. And the patch
-	# wasn't backported to 250.x, but it turns out to break Clang
-	# anyway:  bug #841770.
-	#
-	# Our toolchain sets F_S=2 by default w/ >= -O2, so we need
-	# to unset F_S first, then explicitly set 2, to negate any default
-	# and anything set by the user if they're choosing 3 (or if they've
-	# modified GCC to set 3).
-	#
-	if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
-		# We can't unconditionally do this b/c we fortify needs
-		# some level of optimisation.
-		filter-flags -D_FORTIFY_SOURCE=3
-		append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
-	fi
-
-	local emesonargs=(
-		-Drootprefix="${EPREFIX:-/}"
-		-Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
-		-Dsysvinit-path=
-		$(meson_native_use_bool boot efi)
-		$(meson_native_use_bool boot gnu-efi)
-		$(meson_native_use_bool boot kernel-install)
-		$(meson_native_use_bool selinux)
-		$(meson_native_use_bool sysusers)
-		$(meson_use test tests)
-		$(meson_native_use_bool tmpfiles)
-		$(meson_use udev hwdb)
-
-		-Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
-
-		# Link staticly with libsystemd-shared
-		-Dlink-boot-shared=false
-		-Dlink-udev-shared=false
-
-		# systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
-		-Dstandalone-binaries=true
-
-		# Disable all optional features
-		-Dadm-group=false
-		-Danalyze=false
-		-Dapparmor=false
-		-Daudit=false
-		-Dbacklight=false
-		-Dbinfmt=false
-		-Dbzip2=false
-		-Dcoredump=false
-		-Ddbus=false
-		-Delfutils=false
-		-Denvironment-d=false
-		-Dfdisk=false
-		-Dgcrypt=false
-		-Dglib=false
-		-Dgshadow=false
-		-Dgnutls=false
-		-Dhibernate=false
-		-Dhostnamed=false
-		-Didn=false
-		-Dima=false
-		-Dinitrd=false
-		-Dfirstboot=false
-		-Dldconfig=false
-		-Dlibcryptsetup=false
-		-Dlibcurl=false
-		-Dlibfido2=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dlocaled=false
-		-Dlogind=false
-		-Dlz4=false
-		-Dmachined=false
-		-Dmicrohttpd=false
-		-Dnetworkd=false
-		-Dnscd=false
-		-Dnss-myhostname=false
-		-Dnss-resolve=false
-		-Dnss-systemd=false
-		-Doomd=false
-		-Dopenssl=false
-		-Dp11kit=false
-		-Dpam=false
-		-Dpcre2=false
-		-Dpolkit=false
-		-Dportabled=false
-		-Dpstore=false
-		-Dpwquality=false
-		-Drandomseed=false
-		-Dresolve=false
-		-Drfkill=false
-		-Dseccomp=false
-		-Dsmack=false
-		-Dsysext=false
-		-Dtimedated=false
-		-Dtimesyncd=false
-		-Dtpm=false
-		-Dqrencode=false
-		-Dquotacheck=false
-		-Duserdb=false
-		-Dutmp=false
-		-Dvconsole=false
-		-Dwheel-group=false
-		-Dxdg-autostart=false
-		-Dxkbcommon=false
-		-Dxz=false
-		-Dzlib=false
-		-Dzstd=false
-	)
-
-	if use tmpfiles || use udev; then
-		emesonargs+=( $(meson_native_use_bool acl) )
-	else
-		emesonargs+=( -Dacl=false )
-	fi
-
-	if use udev; then
-		emesonargs+=( $(meson_native_use_bool kmod) )
-	else
-		emesonargs+=( -Dkmod=false )
-	fi
-
-	if use elibc_musl; then
-		# Avoid redefinition of struct ethhdr.
-		append-cppflags -D__UAPI_DEF_ETHHDR=0
-	fi
-
-	if multilib_is_native_abi || use udev; then
-		meson_src_configure
-	fi
-}
-
-efi_arch() {
-	case "$(tc-arch)" in
-		amd64) echo x64 ;;
-		arm)   echo arm ;;
-		arm64) echo aa64 ;;
-		x86)   echo x86 ;;
-	esac
-}
-
-multilib_src_compile() {
-	local targets=()
-	if multilib_is_native_abi; then
-		if use boot; then
-			targets+=(
-				bootctl
-				kernel-install
-				man/bootctl.1
-				man/kernel-install.8
-				src/boot/efi/linux$(efi_arch).{efi,elf}.stub
-				src/boot/efi/systemd-boot$(efi_arch).efi
-			)
-		fi
-		if use sysusers; then
-			targets+=(
-				systemd-sysusers.standalone
-				man/sysusers.d.5
-				man/systemd-sysusers.8
-			)
-			if use test; then
-				targets+=(
-					systemd-runtest.env
-				)
-			fi
-		fi
-		if use tmpfiles; then
-			targets+=(
-				systemd-tmpfiles.standalone
-				man/tmpfiles.d.5
-				man/systemd-tmpfiles.8
-			)
-			if use test; then
-				targets+=( test-tmpfiles )
-			fi
-		fi
-		if use udev; then
-			targets+=(
-				udevadm
-				systemd-hwdb
-				src/udev/ata_id
-				src/udev/cdrom_id
-				src/udev/fido_id
-				src/udev/mtd_probe
-				src/udev/scsi_id
-				src/udev/udev.pc
-				src/udev/v4l_id
-				man/udev.conf.5
-				man/systemd.link.5
-				man/hwdb.7
-				man/udev.7
-				man/systemd-hwdb.8
-				man/systemd-udevd.service.8
-				man/udevadm.8
-				hwdb.d/60-autosuspend-chromiumos.hwdb
-				rules.d/50-udev-default.rules
-				rules.d/64-btrfs.rules
-			)
-			if use test; then
-				targets+=(
-					# Used by udev-test.pl
-					systemd-detect-virt
-					test/sys
-					test-udev
-
-					test-fido-id-desc
-					test-udev-builtin
-					test-udev-event
-					test-udev-netlink
-					test-udev-node
-					test-udev-util
-				)
-			fi
-		fi
-	fi
-	if use udev; then
-		targets+=(
-			udev:shared_library
-			src/libudev/libudev.pc
-		)
-		if use test; then
-			targets+=(
-				test-libudev
-				test-libudev-sym
-				test-udev-device-thread
-			)
-		fi
-	fi
-	if multilib_is_native_abi || use udev; then
-		meson_src_compile "${targets[@]}"
-	fi
-}
-
-multilib_src_test() {
-	local tests=()
-	if multilib_is_native_abi; then
-		if use sysusers; then
-			tests+=(
-				test-sysusers.standalone
-			)
-		fi
-		if use tmpfiles; then
-			tests+=(
-				test-systemd-tmpfiles.standalone
-				test-tmpfiles
-			)
-		fi
-		if use udev; then
-			tests+=(
-				rule-syntax-check
-				test-fido-id-desc
-				test-udev-builtin
-				test-udev-event
-				test-udev-netlink
-				test-udev-node
-				test-udev-util
-			)
-			if [[ -w /dev ]]; then
-				tests+=( udev-test )
-			else
-				ewarn "Skipping udev-test (needs write access to /dev)"
-			fi
-		fi
-	fi
-	if use udev; then
-		tests+=(
-			test-libudev
-			test-libudev-sym
-			test-udev-device-thread
-		)
-	fi
-	if [[ ${#tests[@]} -ne 0 ]]; then
-		meson_src_test "${tests[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		if use boot; then
-			into /usr
-			dobin bootctl kernel-install
-			doman man/{bootctl.1,kernel-install.8}
-			insinto usr/lib/systemd/boot/efi
-			doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
-		fi
-		if use sysusers; then
-			into /
-			newbin systemd-sysusers{.standalone,}
-			doman man/{systemd-sysusers.8,sysusers.d.5}
-		fi
-		if use tmpfiles; then
-			into /
-			newbin systemd-tmpfiles{.standalone,}
-			doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
-		fi
-		if use udev; then
-			into /
-			dobin udevadm systemd-hwdb
-			dosym ../../bin/udevadm /lib/systemd/systemd-udevd
-
-			exeinto /lib/udev
-			doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
-
-			insinto /lib/udev/rules.d
-			doins rules.d/*.rules
-
-			insinto /lib/udev/hwdb.d
-			doins hwdb.d/*.hwdb
-
-			insinto /usr/share/pkgconfig
-			doins src/udev/udev.pc
-
-			doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
-			newman man/systemd-udevd.service.8 systemd-udevd.8
-		fi
-	fi
-	if use udev; then
-		meson_install --no-rebuild --tags libudev
-		gen_usr_ldscript -a udev
-		insinto "/usr/$(get_libdir)/pkgconfig"
-		doins src/libudev/libudev.pc
-	fi
-}
-
-multilib_src_install_all() {
-	einstalldocs
-	if use boot; then
-		into /usr
-		exeinto usr/lib/kernel/install.d
-		doexe src/kernel-install/*.install
-		dobashcomp shell-completion/bash/bootctl
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/{_bootctl,_kernel-install}
-	fi
-	if use tmpfiles; then
-		doinitd "${FILESDIR}"/systemd-tmpfiles-setup
-		doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/_systemd-tmpfiles
-	fi
-	if use udev; then
-		doheader src/libudev/libudev.h
-
-		insinto /etc/udev
-		doins src/udev/udev.conf
-		keepdir /etc/udev/{hwdb.d,rules.d}
-
-		insinto /lib/systemd/network
-		doins network/99-default.link
-
-		# Remove to avoid conflict with elogind
-		# https://bugs.gentoo.org/856433
-		rm rules.d/70-power-switch.rules || die
-		insinto /lib/udev/rules.d
-		doins rules.d/*.rules
-		doins "${FILESDIR}"/40-gentoo.rules
-
-		insinto /lib/udev/hwdb.d
-		doins hwdb.d/*.hwdb
-
-		dobashcomp shell-completion/bash/udevadm
-
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/_udevadm
-	fi
-}
-
-add_service() {
-	local initd=$1
-	local runlevel=$2
-
-	ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
-	mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
-	ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
-	eend $?
-}
-
-pkg_postinst() {
-	if [[ -z ${REPLACING_VERSIONS} ]]; then
-		add_service systemd-tmpfiles-setup-dev sysinit
-		add_service systemd-tmpfiles-setup boot
-	fi
-	if use udev; then
-		ebegin "Updating hwdb"
-		systemd-hwdb --root="${ROOT}" update
-		eend $?
-		udev_reload
-	fi
-}

diff --git a/sys-apps/systemd-utils/systemd-utils-251.4.ebuild b/sys-apps/systemd-utils/systemd-utils-251.4.ebuild
deleted file mode 100644
index d66f463cc001..000000000000
--- a/sys-apps/systemd-utils/systemd-utils-251.4.ebuild
+++ /dev/null
@@ -1,514 +0,0 @@
-# Copyright 2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..11} )
-
-QA_PKGCONFIG_VERSION=$(ver_cut 1)
-
-inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Utilities split out from systemd for OpenRC users"
-HOMEPAGE="https://systemd.io/"
-
-if [[ ${PV} == *.* ]]; then
-	MY_P="systemd-stable-${PV}"
-	S="${WORKDIR}/${MY_P}"
-	SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-else
-	MY_P="systemd-${PV}"
-	S="${WORKDIR}/${MY_P}"
-	SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-fi
-
-MUSL_PATCHSET="systemd-musl-patches-251.2"
-SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
-
-LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="+acl boot +kmod selinux sysusers +tmpfiles test +udev"
-REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
-	elibc_musl? ( >=sys-libs/musl-1.2.3 )
-	selinux? ( sys-libs/libselinux:0= )
-	tmpfiles? (
-		acl? ( sys-apps/acl:0= )
-	)
-	udev? (
-		>=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
-		sys-libs/libcap:0=[${MULTILIB_USEDEP}]
-		virtual/libcrypt:=[${MULTILIB_USEDEP}]
-		acl? ( sys-apps/acl:0= )
-		kmod? ( >=sys-apps/kmod-15:0= )
-	)
-	!udev? (
-		>=sys-apps/util-linux-2.30:0=
-		sys-libs/libcap:0=
-		virtual/libcrypt:=
-	)
-"
-DEPEND="${COMMON_DEPEND}
-	>=sys-kernel/linux-headers-3.11
-	boot? ( >=sys-boot/gnu-efi-3.0.2 )
-"
-RDEPEND="${COMMON_DEPEND}
-	boot? ( !<sys-boot/systemd-boot-250 )
-	tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
-	udev? (
-		acct-group/audio
-		acct-group/cdrom
-		acct-group/dialout
-		acct-group/disk
-		acct-group/input
-		acct-group/kmem
-		acct-group/kvm
-		acct-group/lp
-		acct-group/render
-		acct-group/sgx
-		acct-group/tape
-		acct-group/tty
-		acct-group/video
-		!sys-apps/gentoo-systemd-integration
-		!sys-apps/hwids[udev]
-		!<sys-fs/udev-250
-		!sys-fs/eudev
-	)
-	!sys-apps/systemd
-"
-PDEPEND="
-	udev? ( >=sys-fs/udev-init-scripts-34 )
-"
-BDEPEND="
-	$(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt
-	dev-util/gperf
-	>=sys-apps/coreutils-8.16
-	sys-devel/gettext
-	virtual/pkgconfig
-"
-
-TMPFILES_OPTIONAL=1
-UDEV_OPTIONAL=1
-
-python_check_deps() {
-	python_has_version "dev-python/jinja[${PYTHON_USEDEP}]"
-}
-
-QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
-QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
-
-src_prepare() {
-	local PATCHES=(
-	)
-
-	if use elibc_musl; then
-		PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
-		# Applied upstream in 251.3
-		rm "${WORKDIR}/${MUSL_PATCHSET}/0001-Add-sys-file.h-for-LOCK_.patch" || die
-	fi
-	default
-
-	# Remove install_rpath; we link statically
-	local rpath_pattern="install_rpath : rootlibexecdir,"
-	grep -q -e "${rpath_pattern}" meson.build || die
-	sed -i -e "/${rpath_pattern}/d" meson.build || die
-}
-
-multilib_src_configure() {
-	# When bumping to 251, please keep this, but add the revert patch
-	# like in sys-apps/systemd!
-	#
-	# Broken with FORTIFY_SOURCE=3 without a patch. And the patch
-	# wasn't backported to 250.x, but it turns out to break Clang
-	# anyway:  bug #841770.
-	#
-	# Our toolchain sets F_S=2 by default w/ >= -O2, so we need
-	# to unset F_S first, then explicitly set 2, to negate any default
-	# and anything set by the user if they're choosing 3 (or if they've
-	# modified GCC to set 3).
-	#
-	if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
-		# We can't unconditionally do this b/c we fortify needs
-		# some level of optimisation.
-		filter-flags -D_FORTIFY_SOURCE=3
-		append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
-	fi
-
-	local emesonargs=(
-		-Drootprefix="${EPREFIX:-/}"
-		-Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
-		-Dsysvinit-path=
-		$(meson_native_use_bool boot efi)
-		$(meson_native_use_bool boot gnu-efi)
-		$(meson_native_use_bool boot kernel-install)
-		$(meson_native_use_bool selinux)
-		$(meson_native_use_bool sysusers)
-		$(meson_use test tests)
-		$(meson_native_use_bool tmpfiles)
-		$(meson_use udev hwdb)
-
-		-Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
-
-		# Link staticly with libsystemd-shared
-		-Dlink-boot-shared=false
-		-Dlink-udev-shared=false
-
-		# systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
-		-Dstandalone-binaries=true
-
-		# Disable all optional features
-		-Dadm-group=false
-		-Danalyze=false
-		-Dapparmor=false
-		-Daudit=false
-		-Dbacklight=false
-		-Dbinfmt=false
-		-Dbzip2=false
-		-Dcoredump=false
-		-Ddbus=false
-		-Delfutils=false
-		-Denvironment-d=false
-		-Dfdisk=false
-		-Dgcrypt=false
-		-Dglib=false
-		-Dgshadow=false
-		-Dgnutls=false
-		-Dhibernate=false
-		-Dhostnamed=false
-		-Didn=false
-		-Dima=false
-		-Dinitrd=false
-		-Dfirstboot=false
-		-Dldconfig=false
-		-Dlibcryptsetup=false
-		-Dlibcurl=false
-		-Dlibfido2=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dlocaled=false
-		-Dlogind=false
-		-Dlz4=false
-		-Dmachined=false
-		-Dmicrohttpd=false
-		-Dnetworkd=false
-		-Dnscd=false
-		-Dnss-myhostname=false
-		-Dnss-resolve=false
-		-Dnss-systemd=false
-		-Doomd=false
-		-Dopenssl=false
-		-Dp11kit=false
-		-Dpam=false
-		-Dpcre2=false
-		-Dpolkit=false
-		-Dportabled=false
-		-Dpstore=false
-		-Dpwquality=false
-		-Drandomseed=false
-		-Dresolve=false
-		-Drfkill=false
-		-Dseccomp=false
-		-Dsmack=false
-		-Dsysext=false
-		-Dtimedated=false
-		-Dtimesyncd=false
-		-Dtpm=false
-		-Dqrencode=false
-		-Dquotacheck=false
-		-Duserdb=false
-		-Dutmp=false
-		-Dvconsole=false
-		-Dwheel-group=false
-		-Dxdg-autostart=false
-		-Dxkbcommon=false
-		-Dxz=false
-		-Dzlib=false
-		-Dzstd=false
-	)
-
-	if use tmpfiles || use udev; then
-		emesonargs+=( $(meson_native_use_bool acl) )
-	else
-		emesonargs+=( -Dacl=false )
-	fi
-
-	if use udev; then
-		emesonargs+=( $(meson_native_use_bool kmod) )
-	else
-		emesonargs+=( -Dkmod=false )
-	fi
-
-	if use elibc_musl; then
-		# Avoid redefinition of struct ethhdr.
-		append-cppflags -D__UAPI_DEF_ETHHDR=0
-	fi
-
-	if multilib_is_native_abi || use udev; then
-		meson_src_configure
-	fi
-}
-
-efi_arch() {
-	case "$(tc-arch)" in
-		amd64) echo x64 ;;
-		arm)   echo arm ;;
-		arm64) echo aa64 ;;
-		x86)   echo x86 ;;
-	esac
-}
-
-multilib_src_compile() {
-	local targets=()
-	if multilib_is_native_abi; then
-		if use boot; then
-			targets+=(
-				bootctl
-				kernel-install
-				man/bootctl.1
-				man/kernel-install.8
-				src/boot/efi/linux$(efi_arch).{efi,elf}.stub
-				src/boot/efi/systemd-boot$(efi_arch).efi
-			)
-		fi
-		if use sysusers; then
-			targets+=(
-				systemd-sysusers.standalone
-				man/sysusers.d.5
-				man/systemd-sysusers.8
-			)
-			if use test; then
-				targets+=(
-					systemd-runtest.env
-				)
-			fi
-		fi
-		if use tmpfiles; then
-			targets+=(
-				systemd-tmpfiles.standalone
-				man/tmpfiles.d.5
-				man/systemd-tmpfiles.8
-			)
-			if use test; then
-				targets+=( test-tmpfiles )
-			fi
-		fi
-		if use udev; then
-			targets+=(
-				udevadm
-				systemd-hwdb
-				src/udev/ata_id
-				src/udev/cdrom_id
-				src/udev/fido_id
-				src/udev/mtd_probe
-				src/udev/scsi_id
-				src/udev/udev.pc
-				src/udev/v4l_id
-				man/udev.conf.5
-				man/systemd.link.5
-				man/hwdb.7
-				man/udev.7
-				man/systemd-hwdb.8
-				man/systemd-udevd.service.8
-				man/udevadm.8
-				hwdb.d/60-autosuspend-chromiumos.hwdb
-				rules.d/50-udev-default.rules
-				rules.d/64-btrfs.rules
-			)
-			if use test; then
-				targets+=(
-					# Used by udev-test.pl
-					systemd-detect-virt
-					test/sys
-					test-udev
-
-					test-fido-id-desc
-					test-udev-builtin
-					test-udev-event
-					test-udev-netlink
-					test-udev-node
-					test-udev-util
-				)
-			fi
-		fi
-	fi
-	if use udev; then
-		targets+=(
-			udev:shared_library
-			src/libudev/libudev.pc
-		)
-		if use test; then
-			targets+=(
-				test-libudev
-				test-libudev-sym
-				test-udev-device-thread
-			)
-		fi
-	fi
-	if multilib_is_native_abi || use udev; then
-		meson_src_compile "${targets[@]}"
-	fi
-}
-
-multilib_src_test() {
-	local tests=()
-	if multilib_is_native_abi; then
-		if use sysusers; then
-			tests+=(
-				test-sysusers.standalone
-			)
-		fi
-		if use tmpfiles; then
-			tests+=(
-				test-systemd-tmpfiles.standalone
-				test-tmpfiles
-			)
-		fi
-		if use udev; then
-			tests+=(
-				rule-syntax-check
-				test-fido-id-desc
-				test-udev-builtin
-				test-udev-event
-				test-udev-netlink
-				test-udev-node
-				test-udev-util
-			)
-			if [[ -w /dev ]]; then
-				tests+=( udev-test )
-			else
-				ewarn "Skipping udev-test (needs write access to /dev)"
-			fi
-		fi
-	fi
-	if use udev; then
-		tests+=(
-			test-libudev
-			test-libudev-sym
-			test-udev-device-thread
-		)
-	fi
-	if [[ ${#tests[@]} -ne 0 ]]; then
-		meson_src_test "${tests[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		if use boot; then
-			into /usr
-			dobin bootctl kernel-install
-			doman man/{bootctl.1,kernel-install.8}
-			insinto usr/lib/systemd/boot/efi
-			doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
-		fi
-		if use sysusers; then
-			into /
-			newbin systemd-sysusers{.standalone,}
-			doman man/{systemd-sysusers.8,sysusers.d.5}
-		fi
-		if use tmpfiles; then
-			into /
-			newbin systemd-tmpfiles{.standalone,}
-			doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
-		fi
-		if use udev; then
-			into /
-			dobin udevadm systemd-hwdb
-			dosym ../../bin/udevadm /lib/systemd/systemd-udevd
-
-			exeinto /lib/udev
-			doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
-
-			insinto /lib/udev/rules.d
-			doins rules.d/*.rules
-
-			insinto /lib/udev/hwdb.d
-			doins hwdb.d/*.hwdb
-
-			insinto /usr/share/pkgconfig
-			doins src/udev/udev.pc
-
-			doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
-			newman man/systemd-udevd.service.8 systemd-udevd.8
-		fi
-	fi
-	if use udev; then
-		meson_install --no-rebuild --tags libudev
-		gen_usr_ldscript -a udev
-		insinto "/usr/$(get_libdir)/pkgconfig"
-		doins src/libudev/libudev.pc
-	fi
-}
-
-multilib_src_install_all() {
-	einstalldocs
-	if use boot; then
-		into /usr
-		exeinto usr/lib/kernel/install.d
-		doexe src/kernel-install/*.install
-		dobashcomp shell-completion/bash/bootctl
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/{_bootctl,_kernel-install}
-	fi
-	if use tmpfiles; then
-		doinitd "${FILESDIR}"/systemd-tmpfiles-setup
-		doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/_systemd-tmpfiles
-	fi
-	if use udev; then
-		doheader src/libudev/libudev.h
-
-		insinto /etc/udev
-		doins src/udev/udev.conf
-		keepdir /etc/udev/{hwdb.d,rules.d}
-
-		insinto /lib/systemd/network
-		doins network/99-default.link
-
-		# Remove to avoid conflict with elogind
-		# https://bugs.gentoo.org/856433
-		rm rules.d/70-power-switch.rules || die
-		insinto /lib/udev/rules.d
-		doins rules.d/*.rules
-		doins "${FILESDIR}"/40-gentoo.rules
-
-		insinto /lib/udev/hwdb.d
-		doins hwdb.d/*.hwdb
-
-		dobashcomp shell-completion/bash/udevadm
-
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/_udevadm
-	fi
-}
-
-add_service() {
-	local initd=$1
-	local runlevel=$2
-
-	ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
-	mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
-	ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
-	eend $?
-}
-
-pkg_postinst() {
-	if [[ -z ${REPLACING_VERSIONS} ]]; then
-		add_service systemd-tmpfiles-setup-dev sysinit
-		add_service systemd-tmpfiles-setup boot
-	fi
-	if use udev; then
-		ebegin "Updating hwdb"
-		systemd-hwdb --root="${ROOT}" update
-		eend $?
-		udev_reload
-	fi
-}


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2022-11-06  3:22 Mike Gilbert
  0 siblings, 0 replies; 9+ messages in thread
From: Mike Gilbert @ 2022-11-06  3:22 UTC (permalink / raw
  To: gentoo-commits

commit:     932a4a03a9e7f147dd4aabbefae58dcafa77ff32
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sun Nov  6 03:22:00 2022 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Nov  6 03:22:00 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=932a4a03

sys-apps/systemd-utils: fix build with meson-0.64

Closes: https://bugs.gentoo.org/879141
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/systemd-utils/files/251-meson-0.64.patch | 26 +++++++++++++++++++++++
 sys-apps/systemd-utils/systemd-utils-251.7.ebuild |  1 +
 2 files changed, 27 insertions(+)

diff --git a/sys-apps/systemd-utils/files/251-meson-0.64.patch b/sys-apps/systemd-utils/files/251-meson-0.64.patch
new file mode 100644
index 000000000000..6cc200bbd87d
--- /dev/null
+++ b/sys-apps/systemd-utils/files/251-meson-0.64.patch
@@ -0,0 +1,26 @@
+From cddbc850270415a818aadabd71fe12dc0dddd508 Mon Sep 17 00:00:00 2001
+From: Jan Janssen <medhefgo@web.de>
+Date: Sun, 9 Oct 2022 17:16:12 +0200
+Subject: [PATCH] meson: Fix build with --optimization=plain
+
+Note that -O0 is deliberately filtered out as we have to compile with at
+least -O1 due to #24202.
+
+Fixes: #24323
+---
+ src/boot/efi/meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/boot/efi/meson.build b/src/boot/efi/meson.build
+index e0cd4ebad993..395386d3eda7 100644
+--- a/src/boot/efi/meson.build
++++ b/src/boot/efi/meson.build
+@@ -223,7 +223,7 @@ endif
+ if get_option('debug') and get_option('mode') == 'developer'
+         efi_cflags += ['-ggdb', '-DEFI_DEBUG']
+ endif
+-if get_option('optimization') != '0'
++if get_option('optimization') in ['1', '2', '3', 's', 'g']
+         efi_cflags += ['-O' + get_option('optimization')]
+ endif
+ if get_option('b_ndebug') == 'true' or (

diff --git a/sys-apps/systemd-utils/systemd-utils-251.7.ebuild b/sys-apps/systemd-utils/systemd-utils-251.7.ebuild
index 46a55e226ca4..3f1741e3035d 100644
--- a/sys-apps/systemd-utils/systemd-utils-251.7.ebuild
+++ b/sys-apps/systemd-utils/systemd-utils-251.7.ebuild
@@ -108,6 +108,7 @@ src_prepare() {
 		# Breaks Clang. Revert the commit for now and force off F_S=3.
 		"${FILESDIR}/251-revert-fortify-source-3-fix.patch"
 		"${FILESDIR}/251-gpt-auto-no-cryptsetup.patch"
+		"${FILESDIR}/251-meson-0.64.patch"
 	)
 
 	if use elibc_musl; then


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2022-11-21 16:14 Mike Gilbert
  0 siblings, 0 replies; 9+ messages in thread
From: Mike Gilbert @ 2022-11-21 16:14 UTC (permalink / raw
  To: gentoo-commits

commit:     03a3fe32d269fd724751f48c80b8364b98883aa7
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 10 15:32:58 2022 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Mon Nov 21 16:14:04 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=03a3fe32

sys-apps/systemd-utils: add cron.daily script for systemd-tmpfiles --clean

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/systemd-utils/files/systemd-tmpfiles-clean                     | 2 ++
 .../{systemd-utils-251.8.ebuild => systemd-utils-251.8-r1.ebuild}       | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/sys-apps/systemd-utils/files/systemd-tmpfiles-clean b/sys-apps/systemd-utils/files/systemd-tmpfiles-clean
new file mode 100644
index 000000000000..e474f0e61601
--- /dev/null
+++ b/sys-apps/systemd-utils/files/systemd-tmpfiles-clean
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec ionice -c idle -t systemd-tmpfiles --clean

diff --git a/sys-apps/systemd-utils/systemd-utils-251.8.ebuild b/sys-apps/systemd-utils/systemd-utils-251.8-r1.ebuild
similarity index 99%
rename from sys-apps/systemd-utils/systemd-utils-251.8.ebuild
rename to sys-apps/systemd-utils/systemd-utils-251.8-r1.ebuild
index 46f587532a13..e3565a14d72b 100644
--- a/sys-apps/systemd-utils/systemd-utils-251.8.ebuild
+++ b/sys-apps/systemd-utils/systemd-utils-251.8-r1.ebuild
@@ -468,6 +468,8 @@ multilib_src_install_all() {
 	if use tmpfiles; then
 		doinitd "${FILESDIR}"/systemd-tmpfiles-setup
 		doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
+		exeinto /etc/cron.daily
+		doexe "${FILESDIR}"/systemd-tmpfiles-clean
 		insinto /usr/share/zsh/site-functions
 		doins shell-completion/zsh/_systemd-tmpfiles
 	fi


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2023-01-11  7:50 Sam James
  0 siblings, 0 replies; 9+ messages in thread
From: Sam James @ 2023-01-11  7:50 UTC (permalink / raw
  To: gentoo-commits

commit:     9bfce2326016d4d99f2345a4c6f7627cc561230e
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 11 07:37:06 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jan 11 07:49:43 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9bfce232

sys-apps/systemd-utils: backport tmpfiles UB fix

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/systemd-utils/files/251-tmpfiles-ub.patch |  71 +++
 .../systemd-utils/systemd-utils-251.10-r1.ebuild   | 525 +++++++++++++++++++++
 2 files changed, 596 insertions(+)

diff --git a/sys-apps/systemd-utils/files/251-tmpfiles-ub.patch b/sys-apps/systemd-utils/files/251-tmpfiles-ub.patch
new file mode 100644
index 000000000000..df190d500e34
--- /dev/null
+++ b/sys-apps/systemd-utils/files/251-tmpfiles-ub.patch
@@ -0,0 +1,71 @@
+https://github.com/systemd/systemd/pull/25957
+https://github.com/systemd/systemd/pull/25959
+https://github.com/systemd/systemd/commit/9f804ab04d566ff745849e1c4ced680a0447cf76
+https://github.com/systemd/systemd/commit/34680637e838415204850f77c93ca6ca219abaf1
+
+From 9f804ab04d566ff745849e1c4ced680a0447cf76 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Fri, 6 Jan 2023 10:58:32 +0000
+Subject: [PATCH] tmpfiles: avoid null free() for acl attributes
+
+When built with ACL support, we might be processing a tmpfiles
+entry where there's no cause for us to call parse_acls_from_arg,
+then we get to the end of parse_line without having ever populated
+i.{acl_access, acl_default}.
+
+Then we pass a null pointer into acl_free().
+
+From UBSAN w/ GCC 13.0.0_pre20230101:
+```
+$ systemd-tmpfiles --clean
+/var/tmp/portage/sys-apps/acl-2.3.1-r1/work/acl-2.3.1/libacl/acl_free.c:44:14: runtime error: applying non-zero offset 18446744073709551608 to null pointer
+    #0 0x7f65d868b482 in acl_free /var/tmp/portage/sys-apps/acl-2.3.1-r1/work/acl-2.3.1/libacl/acl_free.c:44
+    #1 0x55fe7e592249 in item_free_contents ../systemd-9999/src/tmpfiles/tmpfiles.c:2855
+    #2 0x55fe7e5a347a in parse_line ../systemd-9999/src/tmpfiles/tmpfiles.c:3158
+    #3 0x55fe7e5a347a in read_config_file ../systemd-9999/src/tmpfiles/tmpfiles.c:3897
+    #4 0x55fe7e590c61 in read_config_files ../systemd-9999/src/tmpfiles/tmpfiles.c:3985
+    #5 0x55fe7e590c61 in run ../systemd-9999/src/tmpfiles/tmpfiles.c:4157
+    #6 0x55fe7e590c61 in main ../systemd-9999/src/tmpfiles/tmpfiles.c:4218
+    #7 0x7f65d7ebe289  (/usr/lib64/libc.so.6+0x23289)
+    #8 0x7f65d7ebe344 in __libc_start_main (/usr/lib64/libc.so.6+0x23344)
+    #9 0x55fe7e591900 in _start (/usr/bin/systemd-tmpfiles+0x11900)
+```
+--- a/src/tmpfiles/tmpfiles.c
++++ b/src/tmpfiles/tmpfiles.c
+@@ -2852,8 +2852,11 @@ static void item_free_contents(Item *i) {
+         strv_free(i->xattrs);
+ 
+ #if HAVE_ACL
+-        acl_free(i->acl_access);
+-        acl_free(i->acl_default);
++        if (i->acl_access)
++                acl_free(i->acl_access);
++
++        if (i->acl_default)
++                acl_free(i->acl_default);
+ #endif
+ }
+ 
+
+From 34680637e838415204850f77c93ca6ca219abaf1 Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Fri, 6 Jan 2023 12:30:36 +0100
+Subject: [PATCH] nspawn: guard acl_free() with a NULL check
+
+Inspired by #25957 there's one other place where we don't guard
+acl_free() calls with a NULL check.
+
+Fix that.
+--- a/src/nspawn/nspawn-patch-uid.c
++++ b/src/nspawn/nspawn-patch-uid.c
+@@ -181,7 +181,9 @@ static int patch_acls(int fd, const char *name, const struct stat *st, uid_t shi
+ 
+         if (S_ISDIR(st->st_mode)) {
+                 acl_free(acl);
+-                acl_free(shifted);
++
++                if (shifted)
++                        acl_free(shifted);
+ 
+                 acl = shifted = NULL;
+ 

diff --git a/sys-apps/systemd-utils/systemd-utils-251.10-r1.ebuild b/sys-apps/systemd-utils/systemd-utils-251.10-r1.ebuild
new file mode 100644
index 000000000000..bab8984fc18e
--- /dev/null
+++ b/sys-apps/systemd-utils/systemd-utils-251.10-r1.ebuild
@@ -0,0 +1,525 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{8..11} )
+
+QA_PKGCONFIG_VERSION=$(ver_cut 1)
+
+inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
+
+DESCRIPTION="Utilities split out from systemd for OpenRC users"
+HOMEPAGE="https://systemd.io/"
+
+if [[ ${PV} == *.* ]]; then
+	MY_P="systemd-stable-${PV}"
+	S="${WORKDIR}/${MY_P}"
+	SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+else
+	MY_P="systemd-${PV}"
+	S="${WORKDIR}/${MY_P}"
+	SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+fi
+
+MUSL_PATCHSET="systemd-musl-patches-251.2"
+SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
+
+LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+acl boot +kmod selinux split-usr sysusers +tmpfiles test +udev"
+REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+	elibc_musl? ( >=sys-libs/musl-1.2.3 )
+	selinux? ( sys-libs/libselinux:0= )
+	tmpfiles? (
+		acl? ( sys-apps/acl:0= )
+	)
+	udev? (
+		>=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
+		sys-libs/libcap:0=[${MULTILIB_USEDEP}]
+		virtual/libcrypt:=[${MULTILIB_USEDEP}]
+		acl? ( sys-apps/acl:0= )
+		kmod? ( >=sys-apps/kmod-15:0= )
+	)
+	!udev? (
+		>=sys-apps/util-linux-2.30:0=
+		sys-libs/libcap:0=
+		virtual/libcrypt:=
+	)
+"
+DEPEND="${COMMON_DEPEND}
+	>=sys-kernel/linux-headers-3.11
+	boot? ( >=sys-boot/gnu-efi-3.0.2 )
+"
+RDEPEND="${COMMON_DEPEND}
+	boot? ( !<sys-boot/systemd-boot-250 )
+	tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
+	udev? (
+		acct-group/audio
+		acct-group/cdrom
+		acct-group/dialout
+		acct-group/disk
+		acct-group/input
+		acct-group/kmem
+		acct-group/kvm
+		acct-group/lp
+		acct-group/render
+		acct-group/sgx
+		acct-group/tape
+		acct-group/tty
+		acct-group/video
+		!sys-apps/gentoo-systemd-integration
+		!sys-apps/hwids[udev]
+		!<sys-fs/udev-250
+		!sys-fs/eudev
+	)
+	!sys-apps/systemd
+"
+PDEPEND="
+	udev? ( >=sys-fs/udev-init-scripts-34 )
+"
+BDEPEND="
+	$(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
+	app-text/docbook-xml-dtd:4.2
+	app-text/docbook-xml-dtd:4.5
+	app-text/docbook-xsl-stylesheets
+	dev-libs/libxslt
+	dev-util/gperf
+	>=sys-apps/coreutils-8.16
+	sys-devel/gettext
+	virtual/pkgconfig
+"
+
+TMPFILES_OPTIONAL=1
+UDEV_OPTIONAL=1
+
+python_check_deps() {
+	python_has_version "dev-python/jinja[${PYTHON_USEDEP}]"
+}
+
+QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
+QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
+
+src_prepare() {
+	local PATCHES=(
+		"${FILESDIR}/251-gpt-auto-no-cryptsetup.patch"
+		"${FILESDIR}/251-tmpfiles-ub.patch"
+	)
+
+	if use elibc_musl; then
+		PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
+		# Applied upstream in 251.3
+		rm "${WORKDIR}/${MUSL_PATCHSET}/0001-Add-sys-file.h-for-LOCK_.patch" || die
+	fi
+	default
+
+	# Remove install_rpath; we link statically
+	local rpath_pattern="install_rpath : rootlibexecdir,"
+	grep -q -e "${rpath_pattern}" meson.build || die
+	sed -i -e "/${rpath_pattern}/d" meson.build || die
+}
+
+src_configure() {
+	# Broken with FORTIFY_SOURCE=3: bug #841770.
+	#
+	# Our toolchain sets F_S=2 by default w/ >= -O2, so we need
+	# to unset F_S first, then explicitly set 2, to negate any default
+	# and anything set by the user if they're choosing 3 (or if they've
+	# modified GCC to set 3).
+	#
+	if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
+		# We can't unconditionally do this b/c we fortify needs
+		# some level of optimisation.
+		filter-flags -D_FORTIFY_SOURCE=3
+		append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
+	fi
+
+	multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+	local emesonargs=(
+		$(meson_use split-usr)
+		$(meson_use split-usr split-bin)
+		-Drootprefix="$(usex split-usr "${EPREFIX:-/}" "${EPREFIX}/usr")"
+		-Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
+		-Dsysvinit-path=
+		$(meson_native_use_bool boot efi)
+		$(meson_native_use_bool boot gnu-efi)
+		$(meson_native_use_bool boot kernel-install)
+		$(meson_native_use_bool selinux)
+		$(meson_native_use_bool sysusers)
+		$(meson_use test tests)
+		$(meson_native_use_bool tmpfiles)
+		$(meson_use udev hwdb)
+
+		-Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
+
+		# Link staticly with libsystemd-shared
+		-Dlink-boot-shared=false
+		-Dlink-udev-shared=false
+
+		# systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
+		-Dstandalone-binaries=true
+
+		# Disable all optional features
+		-Dadm-group=false
+		-Danalyze=false
+		-Dapparmor=false
+		-Daudit=false
+		-Dbacklight=false
+		-Dbinfmt=false
+		-Dbpf-framework=false
+		-Dbzip2=false
+		-Dcoredump=false
+		-Ddbus=false
+		-Delfutils=false
+		-Denvironment-d=false
+		-Dfdisk=false
+		-Dgcrypt=false
+		-Dglib=false
+		-Dgshadow=false
+		-Dgnutls=false
+		-Dhibernate=false
+		-Dhostnamed=false
+		-Didn=false
+		-Dima=false
+		-Dinitrd=false
+		-Dfirstboot=false
+		-Dldconfig=false
+		-Dlibcryptsetup=false
+		-Dlibcurl=false
+		-Dlibfido2=false
+		-Dlibidn=false
+		-Dlibidn2=false
+		-Dlibiptc=false
+		-Dlocaled=false
+		-Dlogind=false
+		-Dlz4=false
+		-Dmachined=false
+		-Dmicrohttpd=false
+		-Dnetworkd=false
+		-Dnscd=false
+		-Dnss-myhostname=false
+		-Dnss-resolve=false
+		-Dnss-systemd=false
+		-Doomd=false
+		-Dopenssl=false
+		-Dp11kit=false
+		-Dpam=false
+		-Dpcre2=false
+		-Dpolkit=false
+		-Dportabled=false
+		-Dpstore=false
+		-Dpwquality=false
+		-Drandomseed=false
+		-Dresolve=false
+		-Drfkill=false
+		-Dseccomp=false
+		-Dsmack=false
+		-Dsysext=false
+		-Dtimedated=false
+		-Dtimesyncd=false
+		-Dtpm=false
+		-Dqrencode=false
+		-Dquotacheck=false
+		-Duserdb=false
+		-Dutmp=false
+		-Dvconsole=false
+		-Dwheel-group=false
+		-Dxdg-autostart=false
+		-Dxkbcommon=false
+		-Dxz=false
+		-Dzlib=false
+		-Dzstd=false
+	)
+
+	if use tmpfiles || use udev; then
+		emesonargs+=( $(meson_native_use_bool acl) )
+	else
+		emesonargs+=( -Dacl=false )
+	fi
+
+	if use udev; then
+		emesonargs+=( $(meson_native_use_bool kmod) )
+	else
+		emesonargs+=( -Dkmod=false )
+	fi
+
+	if use elibc_musl; then
+		# Avoid redefinition of struct ethhdr.
+		append-cppflags -D__UAPI_DEF_ETHHDR=0
+	fi
+
+	if multilib_is_native_abi || use udev; then
+		meson_src_configure
+	fi
+}
+
+efi_arch() {
+	case "$(tc-arch)" in
+		amd64) echo x64 ;;
+		arm)   echo arm ;;
+		arm64) echo aa64 ;;
+		x86)   echo x86 ;;
+	esac
+}
+
+multilib_src_compile() {
+	local targets=()
+	if multilib_is_native_abi; then
+		if use boot; then
+			targets+=(
+				bootctl
+				kernel-install
+				man/bootctl.1
+				man/kernel-install.8
+				src/boot/efi/linux$(efi_arch).{efi,elf}.stub
+				src/boot/efi/systemd-boot$(efi_arch).efi
+			)
+		fi
+		if use sysusers; then
+			targets+=(
+				systemd-sysusers.standalone
+				man/sysusers.d.5
+				man/systemd-sysusers.8
+			)
+			if use test; then
+				targets+=(
+					systemd-runtest.env
+				)
+			fi
+		fi
+		if use tmpfiles; then
+			targets+=(
+				systemd-tmpfiles.standalone
+				man/tmpfiles.d.5
+				man/systemd-tmpfiles.8
+			)
+			if use test; then
+				targets+=( test-tmpfiles )
+			fi
+		fi
+		if use udev; then
+			targets+=(
+				udevadm
+				systemd-hwdb
+				src/udev/ata_id
+				src/udev/cdrom_id
+				src/udev/fido_id
+				src/udev/mtd_probe
+				src/udev/scsi_id
+				src/udev/udev.pc
+				src/udev/v4l_id
+				man/udev.conf.5
+				man/systemd.link.5
+				man/hwdb.7
+				man/udev.7
+				man/systemd-hwdb.8
+				man/systemd-udevd.service.8
+				man/udevadm.8
+				hwdb.d/60-autosuspend-chromiumos.hwdb
+				rules.d/50-udev-default.rules
+				rules.d/64-btrfs.rules
+			)
+			if use test; then
+				targets+=(
+					# Used by udev-test.pl
+					systemd-detect-virt
+					test/sys
+					test-udev
+
+					test-fido-id-desc
+					test-udev-builtin
+					test-udev-event
+					test-udev-netlink
+					test-udev-node
+					test-udev-util
+				)
+			fi
+		fi
+	fi
+	if use udev; then
+		targets+=(
+			udev:shared_library
+			src/libudev/libudev.pc
+		)
+		if use test; then
+			targets+=(
+				test-libudev
+				test-libudev-sym
+				test-udev-device-thread
+			)
+		fi
+	fi
+	if multilib_is_native_abi || use udev; then
+		meson_src_compile "${targets[@]}"
+	fi
+}
+
+multilib_src_test() {
+	local tests=()
+	if multilib_is_native_abi; then
+		if use sysusers; then
+			tests+=(
+				test-sysusers.standalone
+			)
+		fi
+		if use tmpfiles; then
+			tests+=(
+				test-systemd-tmpfiles.standalone
+				test-tmpfiles
+			)
+		fi
+		if use udev; then
+			tests+=(
+				rule-syntax-check
+				test-fido-id-desc
+				test-udev-builtin
+				test-udev-event
+				test-udev-netlink
+				test-udev-node
+				test-udev-util
+			)
+			if [[ -w /dev ]]; then
+				tests+=( udev-test )
+			else
+				ewarn "Skipping udev-test (needs write access to /dev)"
+			fi
+		fi
+	fi
+	if use udev; then
+		tests+=(
+			test-libudev
+			test-libudev-sym
+			test-udev-device-thread
+		)
+	fi
+	if [[ ${#tests[@]} -ne 0 ]]; then
+		meson_src_test "${tests[@]}"
+	fi
+}
+
+src_install() {
+	local rootprefix="$(usex split-usr '' /usr)"
+	meson-multilib_src_install
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi; then
+		if use boot; then
+			into /usr
+			dobin bootctl kernel-install
+			doman man/{bootctl.1,kernel-install.8}
+			insinto usr/lib/systemd/boot/efi
+			doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
+		fi
+		if use sysusers; then
+			into "${rootprefix:-/}"
+			newbin systemd-sysusers{.standalone,}
+			doman man/{systemd-sysusers.8,sysusers.d.5}
+		fi
+		if use tmpfiles; then
+			into "${rootprefix:-/}"
+			newbin systemd-tmpfiles{.standalone,}
+			doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
+		fi
+		if use udev; then
+			into "${rootprefix:-/}"
+			dobin udevadm systemd-hwdb
+			dosym ../../bin/udevadm "${rootprefix}"/lib/systemd/systemd-udevd
+
+			exeinto "${rootprefix}"/lib/udev
+			doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
+
+			insinto "${rootprefix}"/lib/udev/rules.d
+			doins rules.d/*.rules
+
+			insinto "${rootprefix}"/lib/udev/hwdb.d
+			doins hwdb.d/*.hwdb
+
+			insinto /usr/share/pkgconfig
+			doins src/udev/udev.pc
+
+			doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
+			newman man/systemd-udevd.service.8 systemd-udevd.8
+		fi
+	fi
+	if use udev; then
+		meson_install --no-rebuild --tags libudev
+		gen_usr_ldscript -a udev
+		insinto "/usr/$(get_libdir)/pkgconfig"
+		doins src/libudev/libudev.pc
+	fi
+}
+
+multilib_src_install_all() {
+	einstalldocs
+	if use boot; then
+		into /usr
+		exeinto usr/lib/kernel/install.d
+		doexe src/kernel-install/*.install
+		dobashcomp shell-completion/bash/bootctl
+		insinto /usr/share/zsh/site-functions
+		doins shell-completion/zsh/{_bootctl,_kernel-install}
+	fi
+	if use tmpfiles; then
+		doinitd "${FILESDIR}"/systemd-tmpfiles-setup
+		doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
+		exeinto /etc/cron.daily
+		doexe "${FILESDIR}"/systemd-tmpfiles-clean
+		insinto /usr/share/zsh/site-functions
+		doins shell-completion/zsh/_systemd-tmpfiles
+	fi
+	if use udev; then
+		doheader src/libudev/libudev.h
+
+		insinto /etc/udev
+		doins src/udev/udev.conf
+		keepdir /etc/udev/{hwdb.d,rules.d}
+
+		insinto "${rootprefix}"/lib/systemd/network
+		doins network/99-default.link
+
+		# Remove to avoid conflict with elogind
+		# https://bugs.gentoo.org/856433
+		rm rules.d/70-power-switch.rules || die
+		insinto "${rootprefix}"/lib/udev/rules.d
+		doins rules.d/*.rules
+		doins "${FILESDIR}"/40-gentoo.rules
+
+		insinto "${rootprefix}"/lib/udev/hwdb.d
+		doins hwdb.d/*.hwdb
+
+		dobashcomp shell-completion/bash/udevadm
+
+		insinto /usr/share/zsh/site-functions
+		doins shell-completion/zsh/_udevadm
+	fi
+}
+
+add_service() {
+	local initd=$1
+	local runlevel=$2
+
+	ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
+	mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
+	ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
+	eend $?
+}
+
+pkg_postinst() {
+	if [[ -z ${REPLACING_VERSIONS} ]]; then
+		add_service systemd-tmpfiles-setup-dev sysinit
+		add_service systemd-tmpfiles-setup boot
+	fi
+	if use udev; then
+		ebegin "Updating hwdb"
+		systemd-hwdb --root="${ROOT}" update
+		eend $?
+		udev_reload
+	fi
+}


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2023-01-13 20:06 Mike Gilbert
  0 siblings, 0 replies; 9+ messages in thread
From: Mike Gilbert @ 2023-01-13 20:06 UTC (permalink / raw
  To: gentoo-commits

commit:     004f7f8ca01d10d12b3b4e5f018d262684e42f87
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 13 20:05:47 2023 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Fri Jan 13 20:06:54 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=004f7f8c

sys-apps/systemd-utils: drop 251.8-r1

Bug: https://bugs.gentoo.org/887581
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/systemd-utils/Manifest                    |   1 -
 .../files/251-revert-fortify-source-3-fix.patch    |  40 --
 .../systemd-utils/systemd-utils-251.8-r1.ebuild    | 524 ---------------------
 3 files changed, 565 deletions(-)

diff --git a/sys-apps/systemd-utils/Manifest b/sys-apps/systemd-utils/Manifest
index cd1e7db96718..eb5f1cb21946 100644
--- a/sys-apps/systemd-utils/Manifest
+++ b/sys-apps/systemd-utils/Manifest
@@ -1,3 +1,2 @@
 DIST systemd-musl-patches-251.2.tar.gz 28512 BLAKE2B 4ac6a5220dab8409962a3954af2fb2484af718d0f282129957236ce241fbe8538a90d507a96c7c3d86f4f408ab784a6888b37486405d3276e7734a1bd5aa9680 SHA512 6e56b62234ac54929faea5a7cad699d0b932f869b48e3ba4e1f349a88653b7c787efec24a09b00290c3dc566614e3c1dc2f3c04f04e943f513108a91eca1be82
 DIST systemd-stable-251.10.tar.gz 11461671 BLAKE2B a351b6dd9fc307e4bdcf0323b16e7f58c714392cfa466180a81196309c289b54767bfe5d03037eb1bd6b273d7eb8f6f42b927aabaa1310be04266675d1a3dd06 SHA512 49e33dbbc1b2ebe123b2f722070c87524b3126d1e605fb3e24a3f9f328ab67de506dc4588a92caf157428c21b9c73c3884726c4a5b1f67bb997d4a68bb871e5b
-DIST systemd-stable-251.8.tar.gz 11457551 BLAKE2B d4ca799a5b22164362fa8948bbec95215d6ebc04380f13f755916c4bfd4e1cc43a82177c21d2c56aa9d8440b44872b773f21682fc127c7f6d2b3542661c27d80 SHA512 c337fad3cf2beef11401850ddd6418efef035d4ec6405049084302738042f77ac1f8bfd7eb3611668a13038878389c9617e63278ec0b37782b3e0242e69c4843

diff --git a/sys-apps/systemd-utils/files/251-revert-fortify-source-3-fix.patch b/sys-apps/systemd-utils/files/251-revert-fortify-source-3-fix.patch
deleted file mode 100644
index bbe45f85dcf2..000000000000
--- a/sys-apps/systemd-utils/files/251-revert-fortify-source-3-fix.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From: Sam James <sam@gentoo.org>
-Date: Tue, 24 May 2022 23:21:50 +0100
-Subject: [PATCH] Revert "Support -D_FORTIFY_SOURCE=3 by using
- __builtin_dynamic_object_size."
-
-Breaks Clang (even without F_S=3).
-
-This reverts commit 0bd292567a543d124cd303f7dd61169a209cae64.
-
-Bug: https://bugs.gentoo.org/841770
-Bug: https://github.com/systemd/systemd/issues/23150
---- a/src/basic/alloc-util.h
-+++ b/src/basic/alloc-util.h
-@@ -174,23 +174,13 @@ void* greedy_realloc0(void **p, size_t need, size_t size);
-  * is compatible with _FORTIFY_SOURCES. If _FORTIFY_SOURCES is used many memory operations will take the
-  * object size as returned by __builtin_object_size() into account. Hence, let's return the smaller size of
-  * malloc_usable_size() and __builtin_object_size() here, so that we definitely operate in safe territory by
-- * both the compiler's and libc's standards. Note that _FORTIFY_SOURCES=3 handles also dynamically allocated
-- * objects and thus it's safer using __builtin_dynamic_object_size if _FORTIFY_SOURCES=3 is used (#22801).
-- * Moreover, when NULL is passed malloc_usable_size() is documented to return zero, and
-+ * both the compiler's and libc's standards. Note that __builtin_object_size() evaluates to SIZE_MAX if the
-+ * size cannot be determined, hence the MIN() expression should be safe with dynamically sized memory,
-+ * too. Moreover, when NULL is passed malloc_usable_size() is documented to return zero, and
-  * __builtin_object_size() returns SIZE_MAX too, hence we also return a sensible value of 0 in this corner
-  * case. */
--
--#if defined __has_builtin
--#  if __has_builtin(__builtin_dynamic_object_size)
--#    define MALLOC_SIZEOF_SAFE(x) \
--        MIN(malloc_usable_size(x), __builtin_dynamic_object_size(x, 0))
--#  endif
--#endif
--
--#ifndef MALLOC_SIZEOF_SAFE
- #define MALLOC_SIZEOF_SAFE(x) \
-         MIN(malloc_usable_size(x), __builtin_object_size(x, 0))
--#endif
- 
- /* Inspired by ELEMENTSOF() but operates on malloc()'ed memory areas: typesafely returns the number of items
-  * that fit into the specified memory block */

diff --git a/sys-apps/systemd-utils/systemd-utils-251.8-r1.ebuild b/sys-apps/systemd-utils/systemd-utils-251.8-r1.ebuild
deleted file mode 100644
index 108c86967156..000000000000
--- a/sys-apps/systemd-utils/systemd-utils-251.8-r1.ebuild
+++ /dev/null
@@ -1,524 +0,0 @@
-# Copyright 2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..11} )
-
-QA_PKGCONFIG_VERSION=$(ver_cut 1)
-
-inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Utilities split out from systemd for OpenRC users"
-HOMEPAGE="https://systemd.io/"
-
-if [[ ${PV} == *.* ]]; then
-	MY_P="systemd-stable-${PV}"
-	S="${WORKDIR}/${MY_P}"
-	SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-else
-	MY_P="systemd-${PV}"
-	S="${WORKDIR}/${MY_P}"
-	SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-fi
-
-MUSL_PATCHSET="systemd-musl-patches-251.2"
-SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
-
-LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="+acl boot +kmod selinux split-usr sysusers +tmpfiles test +udev"
-REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
-	elibc_musl? ( >=sys-libs/musl-1.2.3 )
-	selinux? ( sys-libs/libselinux:0= )
-	tmpfiles? (
-		acl? ( sys-apps/acl:0= )
-	)
-	udev? (
-		>=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
-		sys-libs/libcap:0=[${MULTILIB_USEDEP}]
-		virtual/libcrypt:=[${MULTILIB_USEDEP}]
-		acl? ( sys-apps/acl:0= )
-		kmod? ( >=sys-apps/kmod-15:0= )
-	)
-	!udev? (
-		>=sys-apps/util-linux-2.30:0=
-		sys-libs/libcap:0=
-		virtual/libcrypt:=
-	)
-"
-DEPEND="${COMMON_DEPEND}
-	>=sys-kernel/linux-headers-3.11
-	boot? ( >=sys-boot/gnu-efi-3.0.2 )
-"
-RDEPEND="${COMMON_DEPEND}
-	boot? ( !<sys-boot/systemd-boot-250 )
-	tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
-	udev? (
-		acct-group/audio
-		acct-group/cdrom
-		acct-group/dialout
-		acct-group/disk
-		acct-group/input
-		acct-group/kmem
-		acct-group/kvm
-		acct-group/lp
-		acct-group/render
-		acct-group/sgx
-		acct-group/tape
-		acct-group/tty
-		acct-group/video
-		!sys-apps/gentoo-systemd-integration
-		!sys-apps/hwids[udev]
-		!<sys-fs/udev-250
-		!sys-fs/eudev
-	)
-	!sys-apps/systemd
-"
-PDEPEND="
-	udev? ( >=sys-fs/udev-init-scripts-34 )
-"
-BDEPEND="
-	$(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt
-	dev-util/gperf
-	>=sys-apps/coreutils-8.16
-	sys-devel/gettext
-	virtual/pkgconfig
-"
-
-TMPFILES_OPTIONAL=1
-UDEV_OPTIONAL=1
-
-python_check_deps() {
-	python_has_version "dev-python/jinja[${PYTHON_USEDEP}]"
-}
-
-QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
-QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
-
-src_prepare() {
-	local PATCHES=(
-		"${FILESDIR}/251-gpt-auto-no-cryptsetup.patch"
-	)
-
-	if use elibc_musl; then
-		PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
-		# Applied upstream in 251.3
-		rm "${WORKDIR}/${MUSL_PATCHSET}/0001-Add-sys-file.h-for-LOCK_.patch" || die
-	fi
-	default
-
-	# Remove install_rpath; we link statically
-	local rpath_pattern="install_rpath : rootlibexecdir,"
-	grep -q -e "${rpath_pattern}" meson.build || die
-	sed -i -e "/${rpath_pattern}/d" meson.build || die
-}
-
-src_configure() {
-	# Broken with FORTIFY_SOURCE=3: bug #841770.
-	#
-	# Our toolchain sets F_S=2 by default w/ >= -O2, so we need
-	# to unset F_S first, then explicitly set 2, to negate any default
-	# and anything set by the user if they're choosing 3 (or if they've
-	# modified GCC to set 3).
-	#
-	if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
-		# We can't unconditionally do this b/c we fortify needs
-		# some level of optimisation.
-		filter-flags -D_FORTIFY_SOURCE=3
-		append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
-	fi
-
-	multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
-	local emesonargs=(
-		$(meson_use split-usr)
-		$(meson_use split-usr split-bin)
-		-Drootprefix="$(usex split-usr "${EPREFIX:-/}" "${EPREFIX}/usr")"
-		-Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
-		-Dsysvinit-path=
-		$(meson_native_use_bool boot efi)
-		$(meson_native_use_bool boot gnu-efi)
-		$(meson_native_use_bool boot kernel-install)
-		$(meson_native_use_bool selinux)
-		$(meson_native_use_bool sysusers)
-		$(meson_use test tests)
-		$(meson_native_use_bool tmpfiles)
-		$(meson_use udev hwdb)
-
-		-Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
-
-		# Link staticly with libsystemd-shared
-		-Dlink-boot-shared=false
-		-Dlink-udev-shared=false
-
-		# systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
-		-Dstandalone-binaries=true
-
-		# Disable all optional features
-		-Dadm-group=false
-		-Danalyze=false
-		-Dapparmor=false
-		-Daudit=false
-		-Dbacklight=false
-		-Dbinfmt=false
-		-Dbpf-framework=false
-		-Dbzip2=false
-		-Dcoredump=false
-		-Ddbus=false
-		-Delfutils=false
-		-Denvironment-d=false
-		-Dfdisk=false
-		-Dgcrypt=false
-		-Dglib=false
-		-Dgshadow=false
-		-Dgnutls=false
-		-Dhibernate=false
-		-Dhostnamed=false
-		-Didn=false
-		-Dima=false
-		-Dinitrd=false
-		-Dfirstboot=false
-		-Dldconfig=false
-		-Dlibcryptsetup=false
-		-Dlibcurl=false
-		-Dlibfido2=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dlocaled=false
-		-Dlogind=false
-		-Dlz4=false
-		-Dmachined=false
-		-Dmicrohttpd=false
-		-Dnetworkd=false
-		-Dnscd=false
-		-Dnss-myhostname=false
-		-Dnss-resolve=false
-		-Dnss-systemd=false
-		-Doomd=false
-		-Dopenssl=false
-		-Dp11kit=false
-		-Dpam=false
-		-Dpcre2=false
-		-Dpolkit=false
-		-Dportabled=false
-		-Dpstore=false
-		-Dpwquality=false
-		-Drandomseed=false
-		-Dresolve=false
-		-Drfkill=false
-		-Dseccomp=false
-		-Dsmack=false
-		-Dsysext=false
-		-Dtimedated=false
-		-Dtimesyncd=false
-		-Dtpm=false
-		-Dqrencode=false
-		-Dquotacheck=false
-		-Duserdb=false
-		-Dutmp=false
-		-Dvconsole=false
-		-Dwheel-group=false
-		-Dxdg-autostart=false
-		-Dxkbcommon=false
-		-Dxz=false
-		-Dzlib=false
-		-Dzstd=false
-	)
-
-	if use tmpfiles || use udev; then
-		emesonargs+=( $(meson_native_use_bool acl) )
-	else
-		emesonargs+=( -Dacl=false )
-	fi
-
-	if use udev; then
-		emesonargs+=( $(meson_native_use_bool kmod) )
-	else
-		emesonargs+=( -Dkmod=false )
-	fi
-
-	if use elibc_musl; then
-		# Avoid redefinition of struct ethhdr.
-		append-cppflags -D__UAPI_DEF_ETHHDR=0
-	fi
-
-	if multilib_is_native_abi || use udev; then
-		meson_src_configure
-	fi
-}
-
-efi_arch() {
-	case "$(tc-arch)" in
-		amd64) echo x64 ;;
-		arm)   echo arm ;;
-		arm64) echo aa64 ;;
-		x86)   echo x86 ;;
-	esac
-}
-
-multilib_src_compile() {
-	local targets=()
-	if multilib_is_native_abi; then
-		if use boot; then
-			targets+=(
-				bootctl
-				kernel-install
-				man/bootctl.1
-				man/kernel-install.8
-				src/boot/efi/linux$(efi_arch).{efi,elf}.stub
-				src/boot/efi/systemd-boot$(efi_arch).efi
-			)
-		fi
-		if use sysusers; then
-			targets+=(
-				systemd-sysusers.standalone
-				man/sysusers.d.5
-				man/systemd-sysusers.8
-			)
-			if use test; then
-				targets+=(
-					systemd-runtest.env
-				)
-			fi
-		fi
-		if use tmpfiles; then
-			targets+=(
-				systemd-tmpfiles.standalone
-				man/tmpfiles.d.5
-				man/systemd-tmpfiles.8
-			)
-			if use test; then
-				targets+=( test-tmpfiles )
-			fi
-		fi
-		if use udev; then
-			targets+=(
-				udevadm
-				systemd-hwdb
-				src/udev/ata_id
-				src/udev/cdrom_id
-				src/udev/fido_id
-				src/udev/mtd_probe
-				src/udev/scsi_id
-				src/udev/udev.pc
-				src/udev/v4l_id
-				man/udev.conf.5
-				man/systemd.link.5
-				man/hwdb.7
-				man/udev.7
-				man/systemd-hwdb.8
-				man/systemd-udevd.service.8
-				man/udevadm.8
-				hwdb.d/60-autosuspend-chromiumos.hwdb
-				rules.d/50-udev-default.rules
-				rules.d/64-btrfs.rules
-			)
-			if use test; then
-				targets+=(
-					# Used by udev-test.pl
-					systemd-detect-virt
-					test/sys
-					test-udev
-
-					test-fido-id-desc
-					test-udev-builtin
-					test-udev-event
-					test-udev-netlink
-					test-udev-node
-					test-udev-util
-				)
-			fi
-		fi
-	fi
-	if use udev; then
-		targets+=(
-			udev:shared_library
-			src/libudev/libudev.pc
-		)
-		if use test; then
-			targets+=(
-				test-libudev
-				test-libudev-sym
-				test-udev-device-thread
-			)
-		fi
-	fi
-	if multilib_is_native_abi || use udev; then
-		meson_src_compile "${targets[@]}"
-	fi
-}
-
-multilib_src_test() {
-	local tests=()
-	if multilib_is_native_abi; then
-		if use sysusers; then
-			tests+=(
-				test-sysusers.standalone
-			)
-		fi
-		if use tmpfiles; then
-			tests+=(
-				test-systemd-tmpfiles.standalone
-				test-tmpfiles
-			)
-		fi
-		if use udev; then
-			tests+=(
-				rule-syntax-check
-				test-fido-id-desc
-				test-udev-builtin
-				test-udev-event
-				test-udev-netlink
-				test-udev-node
-				test-udev-util
-			)
-			if [[ -w /dev ]]; then
-				tests+=( udev-test )
-			else
-				ewarn "Skipping udev-test (needs write access to /dev)"
-			fi
-		fi
-	fi
-	if use udev; then
-		tests+=(
-			test-libudev
-			test-libudev-sym
-			test-udev-device-thread
-		)
-	fi
-	if [[ ${#tests[@]} -ne 0 ]]; then
-		meson_src_test "${tests[@]}"
-	fi
-}
-
-src_install() {
-	local rootprefix="$(usex split-usr '' /usr)"
-	meson-multilib_src_install
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		if use boot; then
-			into /usr
-			dobin bootctl kernel-install
-			doman man/{bootctl.1,kernel-install.8}
-			insinto usr/lib/systemd/boot/efi
-			doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
-		fi
-		if use sysusers; then
-			into "${rootprefix:-/}"
-			newbin systemd-sysusers{.standalone,}
-			doman man/{systemd-sysusers.8,sysusers.d.5}
-		fi
-		if use tmpfiles; then
-			into "${rootprefix:-/}"
-			newbin systemd-tmpfiles{.standalone,}
-			doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
-		fi
-		if use udev; then
-			into "${rootprefix:-/}"
-			dobin udevadm systemd-hwdb
-			dosym ../../bin/udevadm "${rootprefix}"/lib/systemd/systemd-udevd
-
-			exeinto "${rootprefix}"/lib/udev
-			doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
-
-			insinto "${rootprefix}"/lib/udev/rules.d
-			doins rules.d/*.rules
-
-			insinto "${rootprefix}"/lib/udev/hwdb.d
-			doins hwdb.d/*.hwdb
-
-			insinto /usr/share/pkgconfig
-			doins src/udev/udev.pc
-
-			doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
-			newman man/systemd-udevd.service.8 systemd-udevd.8
-		fi
-	fi
-	if use udev; then
-		meson_install --no-rebuild --tags libudev
-		gen_usr_ldscript -a udev
-		insinto "/usr/$(get_libdir)/pkgconfig"
-		doins src/libudev/libudev.pc
-	fi
-}
-
-multilib_src_install_all() {
-	einstalldocs
-	if use boot; then
-		into /usr
-		exeinto usr/lib/kernel/install.d
-		doexe src/kernel-install/*.install
-		dobashcomp shell-completion/bash/bootctl
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/{_bootctl,_kernel-install}
-	fi
-	if use tmpfiles; then
-		doinitd "${FILESDIR}"/systemd-tmpfiles-setup
-		doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
-		exeinto /etc/cron.daily
-		doexe "${FILESDIR}"/systemd-tmpfiles-clean
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/_systemd-tmpfiles
-	fi
-	if use udev; then
-		doheader src/libudev/libudev.h
-
-		insinto /etc/udev
-		doins src/udev/udev.conf
-		keepdir /etc/udev/{hwdb.d,rules.d}
-
-		insinto "${rootprefix}"/lib/systemd/network
-		doins network/99-default.link
-
-		# Remove to avoid conflict with elogind
-		# https://bugs.gentoo.org/856433
-		rm rules.d/70-power-switch.rules || die
-		insinto "${rootprefix}"/lib/udev/rules.d
-		doins rules.d/*.rules
-		doins "${FILESDIR}"/40-gentoo.rules
-
-		insinto "${rootprefix}"/lib/udev/hwdb.d
-		doins hwdb.d/*.hwdb
-
-		dobashcomp shell-completion/bash/udevadm
-
-		insinto /usr/share/zsh/site-functions
-		doins shell-completion/zsh/_udevadm
-	fi
-}
-
-add_service() {
-	local initd=$1
-	local runlevel=$2
-
-	ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
-	mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
-	ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
-	eend $?
-}
-
-pkg_postinst() {
-	if [[ -z ${REPLACING_VERSIONS} ]]; then
-		add_service systemd-tmpfiles-setup-dev sysinit
-		add_service systemd-tmpfiles-setup boot
-	fi
-	if use udev; then
-		ebegin "Updating hwdb"
-		systemd-hwdb --root="${ROOT}" update
-		eend $?
-		udev_reload
-	fi
-}


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2023-01-28  2:47 Mike Gilbert
  0 siblings, 0 replies; 9+ messages in thread
From: Mike Gilbert @ 2023-01-28  2:47 UTC (permalink / raw
  To: gentoo-commits

commit:     9dbc420dbec5553ac4a1f0ee6e69a8d1f93fb87a
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 28 02:40:11 2023 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sat Jan 28 02:47:29 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9dbc420d

sys-apps/systemd-utils: add 252.4

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/systemd-utils/Manifest                   |   2 +
 sys-apps/systemd-utils/files/legacy.conf          |   3 +
 sys-apps/systemd-utils/systemd-utils-252.4.ebuild | 536 ++++++++++++++++++++++
 3 files changed, 541 insertions(+)

diff --git a/sys-apps/systemd-utils/Manifest b/sys-apps/systemd-utils/Manifest
index eb5f1cb21946..c0b0ebb1d8cd 100644
--- a/sys-apps/systemd-utils/Manifest
+++ b/sys-apps/systemd-utils/Manifest
@@ -1,2 +1,4 @@
 DIST systemd-musl-patches-251.2.tar.gz 28512 BLAKE2B 4ac6a5220dab8409962a3954af2fb2484af718d0f282129957236ce241fbe8538a90d507a96c7c3d86f4f408ab784a6888b37486405d3276e7734a1bd5aa9680 SHA512 6e56b62234ac54929faea5a7cad699d0b932f869b48e3ba4e1f349a88653b7c787efec24a09b00290c3dc566614e3c1dc2f3c04f04e943f513108a91eca1be82
+DIST systemd-musl-patches-252.4.tar.gz 25053 BLAKE2B 1d75f85ea0c48c788e9199e2d919bac90edce16a9788a349332cf308c32fb9510ac2883f8e09f21e7f37fbac2e557dc39cdf44dcd7a986587c40dedd2d1b5df5 SHA512 1dc8e220eae1869eb4bb50f9c701392542b053099cf9b6bde13f12a2d26fa29984819a8b4ce1b6c57e38a71f86324469a87cf9e22abe0f6d67ac3e84c6b9a3ba
 DIST systemd-stable-251.10.tar.gz 11461671 BLAKE2B a351b6dd9fc307e4bdcf0323b16e7f58c714392cfa466180a81196309c289b54767bfe5d03037eb1bd6b273d7eb8f6f42b927aabaa1310be04266675d1a3dd06 SHA512 49e33dbbc1b2ebe123b2f722070c87524b3126d1e605fb3e24a3f9f328ab67de506dc4588a92caf157428c21b9c73c3884726c4a5b1f67bb997d4a68bb871e5b
+DIST systemd-stable-252.4.tar.gz 11753300 BLAKE2B 8819ca6d3a64c110e5a245ae0369dc431079556e200d13d8edfc64fc35b2b04f1cdc215b81d9bf126245f315be3662ebd2c094167f88d2465f0dce25aa1fd196 SHA512 d4e99a67c59091dae78f654433a6c5e114ae66256b72d9d43292c43a986ee6a58e2d06f12866cbd7ec821b61580ec003af1725f60fd4b038b4a981b3ca839ee2

diff --git a/sys-apps/systemd-utils/files/legacy.conf b/sys-apps/systemd-utils/files/legacy.conf
new file mode 100644
index 000000000000..cbcac747e5d8
--- /dev/null
+++ b/sys-apps/systemd-utils/files/legacy.conf
@@ -0,0 +1,3 @@
+# Based on legacy.conf from systemd
+d /run/lock 0755 root root -
+L /var/lock - - - - ../run/lock

diff --git a/sys-apps/systemd-utils/systemd-utils-252.4.ebuild b/sys-apps/systemd-utils/systemd-utils-252.4.ebuild
new file mode 100644
index 000000000000..191d25923fb0
--- /dev/null
+++ b/sys-apps/systemd-utils/systemd-utils-252.4.ebuild
@@ -0,0 +1,536 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{9..11} )
+
+if [[ ${PV} != 25[12].* ]] ; then
+	# The F_S=3 issues should be fixed in 253.
+	# - https://github.com/systemd/systemd/issues/22801
+	# - https://github.com/systemd/systemd/pull/25967
+	# - https://github.com/systemd/systemd/commit/7929e180aa47a2692ad4f053afac2857d7198758
+	# - https://github.com/systemd/systemd/commit/4f79f545b3c46c358666c9f5f2b384fe50aac4b4
+	die "Please remove the FORTIFY_SOURCE hacks in src_configure."
+fi
+
+QA_PKGCONFIG_VERSION=$(ver_cut 1)
+
+inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
+
+DESCRIPTION="Utilities split out from systemd for OpenRC users"
+HOMEPAGE="https://systemd.io/"
+
+if [[ ${PV} == *.* ]]; then
+	MY_P="systemd-stable-${PV}"
+	S="${WORKDIR}/${MY_P}"
+	SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+else
+	MY_P="systemd-${PV}"
+	S="${WORKDIR}/${MY_P}"
+	SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+fi
+
+MUSL_PATCHSET="systemd-musl-patches-252.4"
+SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
+
+LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+acl boot +kmod selinux split-usr sysusers +tmpfiles test +udev"
+REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+	elibc_musl? ( >=sys-libs/musl-1.2.3 )
+	selinux? ( sys-libs/libselinux:0= )
+	tmpfiles? (
+		acl? ( sys-apps/acl:0= )
+	)
+	udev? (
+		>=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
+		sys-libs/libcap:0=[${MULTILIB_USEDEP}]
+		virtual/libcrypt:=[${MULTILIB_USEDEP}]
+		acl? ( sys-apps/acl:0= )
+		kmod? ( >=sys-apps/kmod-15:0= )
+	)
+	!udev? (
+		>=sys-apps/util-linux-2.30:0=
+		sys-libs/libcap:0=
+		virtual/libcrypt:=
+	)
+"
+DEPEND="${COMMON_DEPEND}
+	>=sys-kernel/linux-headers-3.11
+	boot? ( >=sys-boot/gnu-efi-3.0.2 )
+"
+RDEPEND="${COMMON_DEPEND}
+	boot? ( !<sys-boot/systemd-boot-250 )
+	tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
+	udev? (
+		acct-group/audio
+		acct-group/cdrom
+		acct-group/dialout
+		acct-group/disk
+		acct-group/input
+		acct-group/kmem
+		acct-group/kvm
+		acct-group/lp
+		acct-group/render
+		acct-group/sgx
+		acct-group/tape
+		acct-group/tty
+		acct-group/video
+		!sys-apps/gentoo-systemd-integration
+		!sys-apps/hwids[udev]
+		!<sys-fs/udev-250
+		!sys-fs/eudev
+	)
+	!sys-apps/systemd
+"
+PDEPEND="
+	udev? ( >=sys-fs/udev-init-scripts-34 )
+"
+BDEPEND="
+	$(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
+	app-text/docbook-xml-dtd:4.2
+	app-text/docbook-xml-dtd:4.5
+	app-text/docbook-xsl-stylesheets
+	dev-libs/libxslt
+	dev-util/gperf
+	>=sys-apps/coreutils-8.16
+	sys-devel/gettext
+	virtual/pkgconfig
+"
+
+TMPFILES_OPTIONAL=1
+UDEV_OPTIONAL=1
+
+python_check_deps() {
+	python_has_version "dev-python/jinja[${PYTHON_USEDEP}]"
+}
+
+QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
+QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
+
+src_prepare() {
+	local PATCHES=(
+		"${FILESDIR}/251-tmpfiles-ub.patch"
+	)
+
+	if use elibc_musl; then
+		PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
+	fi
+	default
+
+	# Remove install_rpath; we link statically
+	local rpath_pattern="install_rpath : rootpkglibdir,"
+	grep -q -e "${rpath_pattern}" meson.build || die
+	sed -i -e "/${rpath_pattern}/d" meson.build || die
+}
+
+src_configure() {
+	# Broken with FORTIFY_SOURCE=3: bug #841770.
+	#
+	# Our toolchain sets F_S=2 by default w/ >= -O2, so we need
+	# to unset F_S first, then explicitly set 2, to negate any default
+	# and anything set by the user if they're choosing 3 (or if they've
+	# modified GCC to set 3).
+	#
+	if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
+		# We can't unconditionally do this b/c we fortify needs
+		# some level of optimisation.
+		filter-flags -D_FORTIFY_SOURCE=3
+		append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
+	fi
+
+	multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+	local emesonargs=(
+		$(meson_use split-usr)
+		$(meson_use split-usr split-bin)
+		-Drootprefix="$(usex split-usr "${EPREFIX:-/}" "${EPREFIX}/usr")"
+		-Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
+		-Dsysvinit-path=
+		$(meson_native_use_bool boot efi)
+		$(meson_native_use_bool boot gnu-efi)
+		$(meson_native_use_bool boot kernel-install)
+		$(meson_native_use_bool selinux)
+		$(meson_native_use_bool sysusers)
+		$(meson_use test tests)
+		$(meson_native_use_bool tmpfiles)
+		$(meson_use udev hwdb)
+
+		-Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
+
+		# Link staticly with libsystemd-shared
+		-Dlink-boot-shared=false
+		-Dlink-udev-shared=false
+
+		# systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
+		-Dstandalone-binaries=true
+
+		# Disable all optional features
+		-Dadm-group=false
+		-Danalyze=false
+		-Dapparmor=false
+		-Daudit=false
+		-Dbacklight=false
+		-Dbinfmt=false
+		-Dbpf-framework=false
+		-Dbzip2=false
+		-Dcoredump=false
+		-Ddbus=false
+		-Delfutils=false
+		-Denvironment-d=false
+		-Dfdisk=false
+		-Dgcrypt=false
+		-Dglib=false
+		-Dgshadow=false
+		-Dgnutls=false
+		-Dhibernate=false
+		-Dhostnamed=false
+		-Didn=false
+		-Dima=false
+		-Dinitrd=false
+		-Dfirstboot=false
+		-Dldconfig=false
+		-Dlibcryptsetup=false
+		-Dlibcurl=false
+		-Dlibfido2=false
+		-Dlibidn=false
+		-Dlibidn2=false
+		-Dlibiptc=false
+		-Dlocaled=false
+		-Dlogind=false
+		-Dlz4=false
+		-Dmachined=false
+		-Dmicrohttpd=false
+		-Dnetworkd=false
+		-Dnscd=false
+		-Dnss-myhostname=false
+		-Dnss-resolve=false
+		-Dnss-systemd=false
+		-Doomd=false
+		-Dopenssl=false
+		-Dp11kit=false
+		-Dpam=false
+		-Dpcre2=false
+		-Dpolkit=false
+		-Dportabled=false
+		-Dpstore=false
+		-Dpwquality=false
+		-Drandomseed=false
+		-Dresolve=false
+		-Drfkill=false
+		-Dseccomp=false
+		-Dsmack=false
+		-Dsysext=false
+		-Dtimedated=false
+		-Dtimesyncd=false
+		-Dtpm=false
+		-Dqrencode=false
+		-Dquotacheck=false
+		-Duserdb=false
+		-Dutmp=false
+		-Dvconsole=false
+		-Dwheel-group=false
+		-Dxdg-autostart=false
+		-Dxkbcommon=false
+		-Dxz=false
+		-Dzlib=false
+		-Dzstd=false
+	)
+
+	if use tmpfiles || use udev; then
+		emesonargs+=( $(meson_native_use_bool acl) )
+	else
+		emesonargs+=( -Dacl=false )
+	fi
+
+	if use udev; then
+		emesonargs+=( $(meson_native_use_bool kmod) )
+	else
+		emesonargs+=( -Dkmod=false )
+	fi
+
+	if use elibc_musl; then
+		# Avoid redefinition of struct ethhdr.
+		append-cppflags -D__UAPI_DEF_ETHHDR=0
+	fi
+
+	if multilib_is_native_abi || use udev; then
+		meson_src_configure
+	fi
+}
+
+efi_arch() {
+	case "$(tc-arch)" in
+		amd64) echo x64 ;;
+		arm)   echo arm ;;
+		arm64) echo aa64 ;;
+		x86)   echo x86 ;;
+	esac
+}
+
+multilib_src_compile() {
+	local targets=()
+	if multilib_is_native_abi; then
+		if use boot; then
+			targets+=(
+				bootctl
+				kernel-install
+				man/bootctl.1
+				man/kernel-install.8
+				src/boot/efi/linux$(efi_arch).{efi,elf}.stub
+				src/boot/efi/systemd-boot$(efi_arch).efi
+			)
+		fi
+		if use sysusers; then
+			targets+=(
+				systemd-sysusers.standalone
+				man/sysusers.d.5
+				man/systemd-sysusers.8
+			)
+			if use test; then
+				targets+=(
+					systemd-runtest.env
+				)
+			fi
+		fi
+		if use tmpfiles; then
+			targets+=(
+				systemd-tmpfiles.standalone
+				man/tmpfiles.d.5
+				man/systemd-tmpfiles.8
+				tmpfiles.d/{etc,static-nodes-permissions,var}.conf
+			)
+			if use test; then
+				targets+=( test-tmpfiles )
+			fi
+		fi
+		if use udev; then
+			targets+=(
+				udevadm
+				systemd-hwdb
+				src/udev/ata_id
+				src/udev/cdrom_id
+				src/udev/fido_id
+				src/udev/mtd_probe
+				src/udev/scsi_id
+				src/udev/udev.pc
+				src/udev/v4l_id
+				man/udev.conf.5
+				man/systemd.link.5
+				man/hwdb.7
+				man/udev.7
+				man/systemd-hwdb.8
+				man/systemd-udevd.service.8
+				man/udevadm.8
+				hwdb.d/60-autosuspend-chromiumos.hwdb
+				rules.d/50-udev-default.rules
+				rules.d/64-btrfs.rules
+			)
+			if use test; then
+				targets+=(
+					# Used by udev-test.pl
+					systemd-detect-virt
+					test/sys
+					test-udev
+
+					test-fido-id-desc
+					test-udev-builtin
+					test-udev-event
+					test-udev-node
+					test-udev-util
+				)
+			fi
+		fi
+	fi
+	if use udev; then
+		targets+=(
+			udev:shared_library
+			src/libudev/libudev.pc
+		)
+		if use test; then
+			targets+=(
+				test-libudev
+				test-libudev-sym
+				test-udev-device-thread
+			)
+		fi
+	fi
+	if multilib_is_native_abi || use udev; then
+		meson_src_compile "${targets[@]}"
+	fi
+}
+
+multilib_src_test() {
+	local tests=()
+	if multilib_is_native_abi; then
+		if use sysusers; then
+			tests+=(
+				test-sysusers.standalone
+			)
+		fi
+		if use tmpfiles; then
+			tests+=(
+				test-systemd-tmpfiles.standalone
+				test-tmpfiles
+			)
+		fi
+		if use udev; then
+			tests+=(
+				rule-syntax-check
+				test-fido-id-desc
+				test-udev-builtin
+				test-udev-event
+				test-udev-netlink
+				test-udev-node
+				test-udev-util
+			)
+			if [[ -w /dev ]]; then
+				tests+=( udev-test )
+			else
+				ewarn "Skipping udev-test (needs write access to /dev)"
+			fi
+		fi
+	fi
+	if use udev; then
+		tests+=(
+			test-libudev
+			test-libudev-sym
+			test-udev-device-thread
+		)
+	fi
+	if [[ ${#tests[@]} -ne 0 ]]; then
+		meson_src_test "${tests[@]}"
+	fi
+}
+
+src_install() {
+	local rootprefix="$(usex split-usr '' /usr)"
+	meson-multilib_src_install
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi; then
+		if use boot; then
+			into /usr
+			dobin bootctl kernel-install
+			doman man/{bootctl.1,kernel-install.8}
+			insinto usr/lib/systemd/boot/efi
+			doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
+		fi
+		if use sysusers; then
+			into "${rootprefix:-/}"
+			newbin systemd-sysusers{.standalone,}
+			doman man/{systemd-sysusers.8,sysusers.d.5}
+		fi
+		if use tmpfiles; then
+			into "${rootprefix:-/}"
+			newbin systemd-tmpfiles{.standalone,}
+			doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
+			insinto /usr/lib/tmpfiles.d
+			doins tmpfiles.d/{etc,static-nodes-permissions,var}.conf
+		fi
+		if use udev; then
+			into "${rootprefix:-/}"
+			dobin udevadm systemd-hwdb
+			dosym ../../bin/udevadm "${rootprefix}"/lib/systemd/systemd-udevd
+
+			exeinto "${rootprefix}"/lib/udev
+			doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
+
+			insinto "${rootprefix}"/lib/udev/rules.d
+			doins rules.d/*.rules
+
+			insinto "${rootprefix}"/lib/udev/hwdb.d
+			doins hwdb.d/*.hwdb
+
+			insinto /usr/share/pkgconfig
+			doins src/udev/udev.pc
+
+			doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
+			newman man/systemd-udevd.service.8 systemd-udevd.8
+		fi
+	fi
+	if use udev; then
+		meson_install --no-rebuild --tags libudev
+		gen_usr_ldscript -a udev
+		insinto "/usr/$(get_libdir)/pkgconfig"
+		doins src/libudev/libudev.pc
+	fi
+}
+
+multilib_src_install_all() {
+	einstalldocs
+	if use boot; then
+		into /usr
+		exeinto usr/lib/kernel/install.d
+		doexe src/kernel-install/*.install
+		dobashcomp shell-completion/bash/bootctl
+		insinto /usr/share/zsh/site-functions
+		doins shell-completion/zsh/{_bootctl,_kernel-install}
+	fi
+	if use tmpfiles; then
+		doinitd "${FILESDIR}"/systemd-tmpfiles-setup
+		doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
+		exeinto /etc/cron.daily
+		doexe "${FILESDIR}"/systemd-tmpfiles-clean
+		insinto /usr/share/zsh/site-functions
+		doins shell-completion/zsh/_systemd-tmpfiles
+		insinto /usr/lib/tmpfiles.d
+		doins tmpfiles.d/{tmp,x11}.conf
+		doins "${FILESDIR}"/legacy.conf
+	fi
+	if use udev; then
+		doheader src/libudev/libudev.h
+
+		insinto /etc/udev
+		doins src/udev/udev.conf
+		keepdir /etc/udev/{hwdb.d,rules.d}
+
+		insinto "${rootprefix}"/lib/systemd/network
+		doins network/99-default.link
+
+		# Remove to avoid conflict with elogind
+		# https://bugs.gentoo.org/856433
+		rm rules.d/70-power-switch.rules || die
+		insinto "${rootprefix}"/lib/udev/rules.d
+		doins rules.d/*.rules
+		doins "${FILESDIR}"/40-gentoo.rules
+
+		insinto "${rootprefix}"/lib/udev/hwdb.d
+		doins hwdb.d/*.hwdb
+
+		dobashcomp shell-completion/bash/udevadm
+
+		insinto /usr/share/zsh/site-functions
+		doins shell-completion/zsh/_udevadm
+	fi
+}
+
+add_service() {
+	local initd=$1
+	local runlevel=$2
+
+	ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
+	mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
+	ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
+	eend $?
+}
+
+pkg_postinst() {
+	if [[ -z ${REPLACING_VERSIONS} ]]; then
+		add_service systemd-tmpfiles-setup-dev sysinit
+		add_service systemd-tmpfiles-setup boot
+	fi
+	if use udev; then
+		ebegin "Updating hwdb"
+		systemd-hwdb --root="${ROOT}" update
+		eend $?
+		udev_reload
+	fi
+}


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2023-05-10  0:54 Sam James
  0 siblings, 0 replies; 9+ messages in thread
From: Sam James @ 2023-05-10  0:54 UTC (permalink / raw
  To: gentoo-commits

commit:     fc93e053eb3891497a24365d3dd8a0e143e8dd74
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed May 10 00:51:13 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed May 10 00:51:13 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fc93e053

sys-apps/systemd-utils: fix build w/ musl-1.2.4

Closes: https://bugs.gentoo.org/905900
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/systemd-utils-253.4-musl-lfs.patch       | 52 ++++++++++++++++++++++
 sys-apps/systemd-utils/systemd-utils-253.4.ebuild  |  7 ++-
 2 files changed, 58 insertions(+), 1 deletion(-)

diff --git a/sys-apps/systemd-utils/files/systemd-utils-253.4-musl-lfs.patch b/sys-apps/systemd-utils/files/systemd-utils-253.4-musl-lfs.patch
new file mode 100644
index 000000000000..312232d0b3a5
--- /dev/null
+++ b/sys-apps/systemd-utils/files/systemd-utils-253.4-musl-lfs.patch
@@ -0,0 +1,52 @@
+https://github.com/systemd/systemd/pull/27599
+
+From d096e05c625ea825eb4d781216ded717b7f71cca Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Wed, 10 May 2023 01:47:13 +0100
+Subject: [PATCH] dirent: conditionalize dirent assert based on dirent64
+ existence
+
+>=musl-1.2.4 doesn't define dirent64 and its LFS friends as its "native"
+functions are already LFS-aware.
+
+Check for dirent64 in meson.build and only assert if it exists.
+
+Bug: https://bugs.gentoo.org/905900
+Closes: https://github.com/systemd/systemd/pull/25809
+--- a/meson.build
++++ b/meson.build
+@@ -544,6 +544,7 @@ assert(long_max > 100000)
+ conf.set_quoted('LONG_MAX_STR', '@0@'.format(long_max))
+ 
+ decl_headers = '''
++#include <dirent.h>
+ #include <uchar.h>
+ #include <sys/mount.h>
+ #include <sys/stat.h>
+@@ -553,6 +554,7 @@ foreach decl : ['char16_t',
+                 'char32_t',
+                 'struct mount_attr',
+                 'struct statx',
++                'struct dirent64',
+                ]
+ 
+         # We get -1 if the size cannot be determined
+--- a/src/basic/dirent-util.h
++++ b/src/basic/dirent-util.h
+@@ -36,6 +36,7 @@ struct dirent *readdir_no_dot(DIR *dirp);
+ /* Only if 64bit off_t is enabled struct dirent + struct dirent64 are actually the same. We require this, and
+  * we want them to be interchangeable to make getdents64() work, hence verify that. */
+ assert_cc(_FILE_OFFSET_BITS == 64);
++#if HAVE_STRUCT_DIRENT64
+ assert_cc(sizeof(struct dirent) == sizeof(struct dirent64));
+ assert_cc(offsetof(struct dirent, d_ino) == offsetof(struct dirent64, d_ino));
+ assert_cc(sizeof_field(struct dirent, d_ino) == sizeof_field(struct dirent64, d_ino));
+@@ -47,6 +48,7 @@ assert_cc(offsetof(struct dirent, d_type) == offsetof(struct dirent64, d_type));
+ assert_cc(sizeof_field(struct dirent, d_type) == sizeof_field(struct dirent64, d_type));
+ assert_cc(offsetof(struct dirent, d_name) == offsetof(struct dirent64, d_name));
+ assert_cc(sizeof_field(struct dirent, d_name) == sizeof_field(struct dirent64, d_name));
++#endif
+ 
+ #define FOREACH_DIRENT_IN_BUFFER(de, buf, sz)                           \
+         for (void *_end = (uint8_t*) ({ (de) = (buf); }) + (sz);        \
+

diff --git a/sys-apps/systemd-utils/systemd-utils-253.4.ebuild b/sys-apps/systemd-utils/systemd-utils-253.4.ebuild
index 4dc4e15bbe49..ad372c33f20e 100644
--- a/sys-apps/systemd-utils/systemd-utils-253.4.ebuild
+++ b/sys-apps/systemd-utils/systemd-utils-253.4.ebuild
@@ -120,7 +120,12 @@ src_prepare() {
 	)
 
 	if use elibc_musl; then
-		PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
+		PATCHES+=(
+			"${WORKDIR}/${MUSL_PATCHSET}"
+			# The LFS patch should be fine unconditionally but
+			# let's keep it conditional until merged upstream.
+			"${FILESDIR}"/${PN}-253.4-musl-lfs.patch
+		)
 	fi
 	default
 


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2024-06-07 18:06 Mike Gilbert
  0 siblings, 0 replies; 9+ messages in thread
From: Mike Gilbert @ 2024-06-07 18:06 UTC (permalink / raw
  To: gentoo-commits

commit:     34cd105a4b61cdbc9b9d6f722425fbbeaf405f13
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Fri Jun  7 18:03:34 2024 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Fri Jun  7 18:05:58 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=34cd105a

sys-apps/systemd-utils: restore patch to fix efi wchar_t on musl

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/systemd-utils/files/musl-efi-wchar.patch | 29 +++++++++++++++++++++++
 sys-apps/systemd-utils/systemd-utils-255.7.ebuild |  1 +
 2 files changed, 30 insertions(+)

diff --git a/sys-apps/systemd-utils/files/musl-efi-wchar.patch b/sys-apps/systemd-utils/files/musl-efi-wchar.patch
new file mode 100644
index 000000000000..a3681552d33f
--- /dev/null
+++ b/sys-apps/systemd-utils/files/musl-efi-wchar.patch
@@ -0,0 +1,29 @@
+From c4050bd401611f6223c00e58ac9c26b9caccd286 Mon Sep 17 00:00:00 2001
+From: Violet Purcell <vimproved@inventati.org>
+Date: Sat, 9 Sep 2023 13:10:53 -0400
+Subject: [PATCH] efi: append -D__DEFINED_wchar_t to LDFLAGS
+
+This forces systemd-boot to use the wchar_t type defined from
+__WCHAR_TYPE__ in efi.h, instead of the wchar_t defined in musl's
+alltypes.h. Adapted from openembedded's solution.
+
+Signed-off-by: Violet Purcell <vimproved@inventati.org>
+---
+ src/boot/efi/meson.build | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/boot/efi/meson.build b/src/boot/efi/meson.build
+index 2773eaf286..3c1e09c729 100644
+--- a/src/boot/efi/meson.build
++++ b/src/boot/efi/meson.build
+@@ -130,6 +130,7 @@ efi_includes = [fundamental_include, include_directories('.')]
+ 
+ efi_c_args = [
+         '-DSD_BOOT=1',
++        '-D__DEFINED_wchar_t',
+         '-ffreestanding',
+         '-fno-strict-aliasing',
+         '-fshort-wchar',
+-- 
+2.42.0
+

diff --git a/sys-apps/systemd-utils/systemd-utils-255.7.ebuild b/sys-apps/systemd-utils/systemd-utils-255.7.ebuild
index 865a3e795381..7a71b20cb498 100644
--- a/sys-apps/systemd-utils/systemd-utils-255.7.ebuild
+++ b/sys-apps/systemd-utils/systemd-utils-255.7.ebuild
@@ -138,6 +138,7 @@ src_prepare() {
 	if use elibc_musl; then
 		PATCHES+=(
 			"${WORKDIR}/${MUSL_PATCHSET}"
+			"${FILESDIR}/musl-efi-wchar.patch"
 		)
 	fi
 	default


^ permalink raw reply related	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2024-06-07 18:06 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-11-06  3:22 [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/ Mike Gilbert
  -- strict thread matches above, loose matches on Subject: below --
2024-06-07 18:06 Mike Gilbert
2023-05-10  0:54 Sam James
2023-01-28  2:47 Mike Gilbert
2023-01-13 20:06 Mike Gilbert
2023-01-11  7:50 Sam James
2022-11-21 16:14 Mike Gilbert
2022-09-18 15:52 Mike Gilbert
2022-08-02 23:40 Sam James

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox