diff options
author | bill-auger <mr.j.spam.me@gmail.com> | 2023-02-24 17:27:03 -0500 |
---|---|---|
committer | bill-auger <mr.j.spam.me@gmail.com> | 2023-02-24 19:28:03 -0500 |
commit | 87604929c53cc30496ac838696823889d88f14c1 (patch) | |
tree | 8ac7bbf6c6399aa7dfcbb44c0f20ba77fc9a6ec6 | |
parent | 2bc941d3121b8c426b801a3cfc7938efa5d7e722 (diff) |
[udev]: WIP - upgrade to v252.5
-rw-r--r-- | nonsystemd/udev/0001-Use-Arch-Linux-device-access-groups.patch | 67 | ||||
-rw-r--r-- | nonsystemd/udev/PKGBUILD | 285 | ||||
-rw-r--r-- | nonsystemd/udev/meson-artix.patch | 51 | ||||
-rw-r--r-- | nonsystemd/udev/meson-install-tags.patch | 289 | ||||
-rw-r--r-- | nonsystemd/udev/udev-log-msg.patch | 17 |
5 files changed, 570 insertions, 139 deletions
diff --git a/nonsystemd/udev/0001-Use-Arch-Linux-device-access-groups.patch b/nonsystemd/udev/0001-Use-Arch-Linux-device-access-groups.patch index 6449c017d..4519355f5 100644 --- a/nonsystemd/udev/0001-Use-Arch-Linux-device-access-groups.patch +++ b/nonsystemd/udev/0001-Use-Arch-Linux-device-access-groups.patch @@ -1,4 +1,4 @@ -From f7d07e298c819a81eab965efbdbf53a2ce67fc0e Mon Sep 17 00:00:00 2001 +From 0e8c18bc2639da328274d02d9222ee2c1f6bf696 Mon Sep 17 00:00:00 2001 From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com> Date: Tue, 6 Mar 2018 23:39:47 +0100 Subject: [PATCH] Use Arch Linux' device access groups @@ -17,10 +17,10 @@ Content-Transfer-Encoding: 8bit 4 files changed, 19 insertions(+), 19 deletions(-) diff --git a/meson.build b/meson.build -index 32e5413a62..f781e06fed 100644 +index 76ad51d3fb..5cf679b088 100644 --- a/meson.build +++ b/meson.build -@@ -796,19 +796,19 @@ conf.set_quoted('NOBODY_GROUP_NAME', nobody_group) +@@ -915,19 +915,19 @@ conf.set_quoted('NOBODY_GROUP_NAME', nobody_group) static_ugids = [] foreach option : ['adm-gid', 'audio-gid', @@ -44,61 +44,61 @@ index 32e5413a62..f781e06fed 100644 'wheel-gid', 'systemd-journal-gid', diff --git a/meson_options.txt b/meson_options.txt -index 5048de755d..676e5e2e0d 100644 +index 814f340840..253a77ecb3 100644 --- a/meson_options.txt +++ b/meson_options.txt -@@ -235,10 +235,6 @@ option('adm-gid', type : 'integer', value : '-1', +@@ -257,10 +257,6 @@ option('adm-gid', type : 'integer', value : 0, description : 'soft-static allocation for the "adm" group') - option('audio-gid', type : 'integer', value : '-1', + option('audio-gid', type : 'integer', value : 0, description : 'soft-static allocation for the "audio" group') --option('cdrom-gid', type : 'integer', value : '-1', +-option('cdrom-gid', type : 'integer', value : 0, - description : 'soft-static allocation for the "cdrom" group') --option('dialout-gid', type : 'integer', value : '-1', +-option('dialout-gid', type : 'integer', value : 0, - description : 'soft-static allocation for the "dialout" group') - option('disk-gid', type : 'integer', value : '-1', + option('disk-gid', type : 'integer', value : 0, description : 'soft-static allocation for the "disk" group') - option('input-gid', type : 'integer', value : '-1', -@@ -249,18 +245,22 @@ option('kvm-gid', type : 'integer', value : '-1', + option('input-gid', type : 'integer', value : 0, +@@ -271,18 +267,22 @@ option('kvm-gid', type : 'integer', value : 0, description : 'soft-static allocation for the "kvm" group') - option('lp-gid', type : 'integer', value : '-1', + option('lp-gid', type : 'integer', value : 0, description : 'soft-static allocation for the "lp" group') -+option('optical-gid', type : 'integer', value : '-1', ++option('optical-gid', type : 'integer', value : '0', + description : 'soft-static allocation for the "optical" group') - option('render-gid', type : 'integer', value : '-1', + option('render-gid', type : 'integer', value : 0, description : 'soft-static allocation for the "render" group') - option('sgx-gid', type : 'integer', value : '-1', + option('sgx-gid', type : 'integer', value : 0, description : 'soft-static allocation for the "sgx" group') --option('tape-gid', type : 'integer', value : '-1', +-option('tape-gid', type : 'integer', value : 0, - description : 'soft-static allocation for the "tape" group') -+option('storage-gid', type : 'integer', value : '-1', ++option('storage-gid', type : 'integer', value : '0', + description : 'soft-static allocation for the "storage" group') option('tty-gid', type : 'integer', value : 5, description : 'the numeric GID of the "tty" group') - option('users-gid', type : 'integer', value : '-1', + option('users-gid', type : 'integer', value : 0, description : 'soft-static allocation for the "users" group') - option('utmp-gid', type : 'integer', value : '-1', + option('utmp-gid', type : 'integer', value : 0, description : 'soft-static allocation for the "utmp" group') -+option('uucp-gid', type : 'integer', value : '-1', ++option('uucp-gid', type : 'integer', value : '0', + description : 'soft-static allocation for the "uucp" group') - option('video-gid', type : 'integer', value : '-1', + option('video-gid', type : 'integer', value : 0, description : 'soft-static allocation for the "video" group') - option('wheel-gid', type : 'integer', value : '-1', + option('wheel-gid', type : 'integer', value : 0, diff --git a/rules.d/50-udev-default.rules.in b/rules.d/50-udev-default.rules.in -index 18a3cf46bf..f3c440fd89 100644 +index 843bdaf9ce..a192f091df 100644 --- a/rules.d/50-udev-default.rules.in +++ b/rules.d/50-udev-default.rules.in -@@ -22,7 +22,7 @@ SUBSYSTEM=="tty", KERNEL=="sclp_line[0-9]*", GROUP="tty", MODE="0620" +@@ -26,7 +26,7 @@ SUBSYSTEM=="tty", KERNEL=="sclp_line[0-9]*", GROUP="tty", MODE="0620" SUBSYSTEM=="tty", KERNEL=="ttysclp[0-9]*", GROUP="tty", MODE="0620" SUBSYSTEM=="tty", KERNEL=="3270/tty[0-9]*", GROUP="tty", MODE="0620" SUBSYSTEM=="vc", KERNEL=="vcs*|vcsa*", GROUP="tty" -KERNEL=="tty[A-Z]*[0-9]|ttymxc[0-9]*|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="dialout" +KERNEL=="tty[A-Z]*[0-9]|ttymxc[0-9]*|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="uucp" - + SUBSYSTEM=="mem", KERNEL=="mem|kmem|port", GROUP="kmem", MODE="0640" - -@@ -67,13 +67,13 @@ KERNEL=="irlpt[0-9]*", GROUP="lp" + +@@ -72,13 +72,13 @@ KERNEL=="irlpt[0-9]*", GROUP="lp" SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}=="*:0701??:*", GROUP="lp" - + SUBSYSTEM=="block", GROUP="disk" -SUBSYSTEM=="block", KERNEL=="sr[0-9]*", GROUP="cdrom" -SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="4|5", GROUP="cdrom" @@ -110,18 +110,18 @@ index 18a3cf46bf..f3c440fd89 100644 +KERNEL=="sch[0-9]*", GROUP="optical" +KERNEL=="pktcdvd[0-9]*", GROUP="optical" +KERNEL=="pktcdvd", GROUP="optical" - + -SUBSYSTEM=="scsi_generic|scsi_tape", SUBSYSTEMS=="scsi", ATTRS{type}=="1|8", GROUP="tape" +SUBSYSTEM=="scsi_generic|scsi_tape", SUBSYSTEMS=="scsi", ATTRS{type}=="1|8", GROUP="storage" SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="0", GROUP="disk" KERNEL=="qft[0-9]*|nqft[0-9]*|zqft[0-9]*|nzqft[0-9]*|rawqft[0-9]*|nrawqft[0-9]*", GROUP="disk" KERNEL=="loop-control", GROUP="disk", OPTIONS+="static_node=loop-control" diff --git a/sysusers.d/basic.conf.in b/sysusers.d/basic.conf.in -index 8cc1a7cad2..21bb6d8948 100644 +index a602b872e4..8d38febb6a 100644 --- a/sysusers.d/basic.conf.in +++ b/sysusers.d/basic.conf.in -@@ -22,17 +22,17 @@ g utmp {{UTMP_GID }} - - - +@@ -23,17 +23,17 @@ g utmp {{UTMP_GID }} - - + # Physical and virtual hardware access groups g audio {{AUDIO_GID }} - - -g cdrom {{CDROM_GID }} - - @@ -139,5 +139,6 @@ index 8cc1a7cad2..21bb6d8948 100644 g tty {{TTY_GID }} - - +g uucp {{UUCP_GID }} - - g video {{VIDEO_GID }} - - - + # Default group for normal users + diff --git a/nonsystemd/udev/PKGBUILD b/nonsystemd/udev/PKGBUILD index 97b733024..17d48742f 100644 --- a/nonsystemd/udev/PKGBUILD +++ b/nonsystemd/udev/PKGBUILD @@ -9,33 +9,39 @@ _pkgbase=systemd-stable pkgbase=udev pkgname=('udev' 'libudev' 'esysusers' 'etmpfiles') pkgdesc='Userspace device file manager' -_tag='95d0353dad616c275fda9b123ba9660e16b20d0a' # git rev-parse v${_tag_name} -_tag_name=250.2 +_tag='b16ce4c7ab80665b65345ea030c51a5c758fe66b' # git rev-parse v${_tag_name} +_tag_name=252.5 pkgver="${_tag_name/-/}" pkgrel=1 arch=('x86_64') arch+=('i686' 'armv7h') url='https://www.github.com/systemd/systemd' license=('GPL2' 'LGPL2.1') -makedepends=('acl' 'libacl.so' 'kmod' 'libkmod.so' 'util-linux' 'libblkid.so' - 'hwdata' 'libcap' 'libcap.so' 'kbd' 'gperf' 'intltool' 'git' - 'meson' 'docbook-xsl' 'rsync' 'python-jinja') +makedepends=('acl' 'kmod' 'util-linux' 'hwdata' 'libcap' 'kbd' 'gperf' + 'intltool' 'git' 'meson' 'docbook-xsl' 'rsync' 'python-jinja') options=('strip') validpgpkeys=('63CDA1E5D3FC22B998D20DD6327F26951A015CC4' # Lennart Poettering <lennart@poettering.net> 'A9EA9081724FFAE0484C35A1A81CEA22BC8C7E2E' # Luca Boccassi <luca.boccassi@gmail.com> + '9A774DB5DB996C154EBBFBFDA0099A18E29326E1' # Yu Watanabe <watanabe.yu+github@gmail.com> '5C251B5FC54EB2F80F407AAAC54CA336CFEB557E') # Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> -_commit=29cd296aa4635fe6f7b53bda2f2cb1648bdc0782 -source=("git+https://github.com/systemd/systemd-stable#tag=${_tag}?signed" - "git+https://github.com/systemd/systemd#tag=v${_tag_name%.*}?signed" +_alpm=57bcc7fee22d75df96fd546ee7215166cdfb1233 +source=("git+https://github.com/systemd/systemd-stable#tag=${_tag}" #?signed + "git+https://github.com/systemd/systemd#tag=v${_tag_name%.*}" #?signed '0001-Use-Arch-Linux-device-access-groups.patch' initcpio-{hook,install}-udev - git+https://gitea.artixlinux.org/artix/alpm-hooks.git#commit=$_commit) + "git+https://gitea.artixlinux.org/artix/alpm-hooks.git#commit=${_alpm}" + meson-install-tags.patch + meson-artix.patch + udev-log-msg.patch) sha512sums=('SKIP' 'SKIP' - '10f3b477527ec263cc6465c84d94416e356435930edc9e26844a0fd4f71e87a27fa0f91ce24b43a22cacdd2ead5e760e9d607369bc537a8da8d34021302a89a1' + 'f26db75129f1f9a7b7235d77e4ec490864fa0a203431f515873443b227da3db7034d8d81f7974f23fc6fbeaa91727244ac8ab82762f02e87fb92ea19a6bd931f' '32606b42856b5f3ea7f485143e532671f58986237e14c58ea5ab17383dc39a375cb6c738c8a2db9e4a8c8be88ea44a876d6bbed129cb2f5c9aa3f8228b04d927' '38eed28d42ac8f70bc8d1058ace35f137f7f5c972442ee14b98c2146202e0615aa584304edbd59e8608d1b6bec3cb391fc69b25393740f6eabd8fc5ad3bde64f' - 'SKIP') + 'SKIP' + 'e936a4b245400140d2cb4ed250fe23639bc3aaf81fb958b9b10dc1ff5aeb094f37b657e044bf35e832fd4a69dccea5b19ef45d20852ce3aa49325ae2e59d8f51' + 'a26003ddcac5a83ec1fec040b36ff46816869028dc79aebb2646f9f2ed090e6358601f911c9d6a04b426c7f3367595e12716e411fca34ffce59d718b067e4e5c' + '268817ee63ca0b03d2a10bb952837052c1fa80a5d2f0fe933d2aa3d61a09d286f188a6358107114964930fcef7057392f9520f875a83f6e265d2f4bc2564c26e') _backports=( ) @@ -58,149 +64,213 @@ prepare() { git log --oneline -1 "${_c}" git revert -n "${_c}" done + patch -Np1 -i ../meson-install-tags.patch + patch -Np1 -i ../meson-artix.patch + patch -Np1 -i ../udev-log-msg.patch # Replace cdrom/dialout/tape groups with optical/uucp/storage patch -Np1 -i ../0001-Use-Arch-Linux-device-access-groups.patch } -_get_libudev() { - echo "$(readlink build/libudev.so.1)" -} - -_inst_bin() { - local bin="$1" - - install -Dm755 build/systemd-"$bin".standalone "${pkgdir}"/usr/bin/"$bin" - install -d "${pkgdir}"/usr/lib/"$bin".d - - install -d "${pkgdir}"/usr/share/{doc/"${pkgname}",man/man{5,8}} - - install -m644 build/man/"$bin".d.5 "${pkgdir}"/usr/share/man/man5/ - install -m644 build/man/systemd-"$bin".8 "${pkgdir}"/usr/share/man/man8/"$bin".8 - - install -m644 "$_pkgbase"/LICENSE.* "${pkgdir}"/usr/share/doc/"${pkgname}" -} - build() { local _meson_options=() _meson_options+=( -Dversion-tag="${_tag_name/-/\~}-${pkgrel}-parabola" + -Dshared-lib-tag="${pkgver}-${pkgrel}" -Dmode=release -Dstandalone-binaries=true -Dsysusers=true -Dtmpfiles=true - - -Dadm-group=true - -Dwheel-group=true - -Dgshadow=true -Dhwdb=true -Dblkid=true + -Dgshadow=true + + -Dinstall-sysconfdir-standalone=true + -Ddefault-udevd-symlink='udevd' + -Ddefault-udevd-dir='/usr/bin' + + -Dsbat-distro='artix' + -Dsbat-distro-summary='Artix Linux' + -Dsbat-distro-pkgname="${pkgname}" + -Dsbat-distro-version="${pkgver}" + -Dtests=true + + -Dlink-udev-shared=false + -Dlink-boot-shared=false -Dman=false - -Dtests=false -Ddns-servers='' -Dntp-servers='' -Defi=false - -Dlink-udev-shared=false - - -Dlibidn2=false - -Dlibidn=false - -Dlibcryptsetup=false - -Didn=false + -Dsysvinit-path= + -Ddefault-dnssec=no + + -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 + -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 - -Dxz=false - - -Dtimesyncd=false - -Dnss-systemd=false - -Dnss-resolve=false - -Dnss-mymachines=false - -Dnss-myhostname=false - -Dnetworkd=false - -Dmachined=false + -Dsmack=false + -Dsysext=false -Dtimedated=false - -Dkernel-install=false - -Dresolve=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 ) + artix-meson "$_pkgbase" build "${_meson_options[@]}" - arch-meson "$_pkgbase" build "${_meson_options[@]}" - - local _udev=() _man=() _ebin=() - - _udev+=( - $(_get_libudev) + local _targets=() + _targets+=( + udev:shared_library src/libudev/libudev.pc udevadm + systemd-hwdb src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,dmi_memory_id,scsi_id,v4l_id} src/udev/udev.pc - rules.d/{50-udev-default.rules,64-btrfs.rules} + rules.d/{50-udev-default,64-btrfs}.rules hwdb.d/60-autosuspend-chromiumos.hwdb - ) + man/{libudev.3,udev.conf.5,hwdb.7,udev.7,udevadm.8} - _ebin+=( systemd-{sysusers,tmpfiles}.standalone sysusers.d/basic.conf tmpfiles.d/{etc,static-nodes-permissions,var}.conf - ) - - _man+=( man/{sysusers,tmpfiles}.d.5 man/systemd-{sysusers,tmpfiles}.8 - man/{libudev.3,udev.conf.5,hwdb.7,udev.7,udevadm.8} + factory/templates/locale.conf + + systemd-detect-virt + test/sys + test-udev + test-fido-id-desc + test-udev-builtin + test-udev-event + test-udev-node + test-udev-util + systemd-runtest.env + test-tmpfiles ) + meson compile -C build "${_targets[@]}" +} - ninja -C build "${_udev[@]}" "${_ebin[@]}" "${_man[@]}" +check() { + local tests=() + tests+=( + test-sysusers.standalone + test-systemd-tmpfiles.standalone + test-tmpfiles + rule-syntax-check + test-fido-id-desc + test-udev-builtin + test-udev-event + test-udev-node + test-udev-util +# udev-test + test-libudev + test-libudev-sym + test-udev-device-thread + ) + meson test -C build --print-errorlogs "${tests[@]}" +} + +_inst_doc(){ + install -d "${pkgdir}"/usr/share/doc/"${pkgname}" + install -vm644 "$_pkgbase"/LICENSE.* "${pkgdir}"/usr/share/doc/"${pkgname}" +} + +_inst_man_udev() { + local x="$1" y=${1##*.} + install -d "${pkgdir}"/usr/share/man/man"$y" + install -vm644 build/man/"$x" "${pkgdir}"/usr/share/man/man"$y" +} + +_inst_man_utils() { + local u="$1" + install -d "${pkgdir}"/usr/share/man/man{5,8} + install -vm644 build/man/"$u".d.5 "${pkgdir}"/usr/share/man/man5 + install -vm644 build/man/systemd-"$u".8 "${pkgdir}"/usr/share/man/man8/"$u".8 } package_udev() { pkgdesc='Userspace device file manager' depends=('acl' 'libacl.so' 'kmod' 'libkmod.so' 'util-linux' 'libblkid.so' 'libudev' 'hwdata' 'kbd') - provides=("udev=$pkgver" 'eudev') + provides=("udev=$pkgver") + provides+=('eudev') replaces=('eudev') - install -d "${pkgdir}"/etc/udev/{hwdb,rules}.d - mv -v "$_pkgbase"/src/udev/udev.conf "${pkgdir}"/etc/udev - - install -d "${pkgdir}"/usr/bin - mv -v build/udevadm "${pkgdir}"/usr/bin/udevadm - ln -sfv udevadm "${pkgdir}"/usr/bin/udevd + meson install -C build --destdir "$pkgdir" --no-rebuild --tags udev,udev-devel,libudev-devel - install -d "${pkgdir}"/usr/{share,lib}/pkgconfig - mv -v build/src/libudev/libudev.pc "${pkgdir}"/usr/lib/pkgconfig - mv -v build/src/udev/udev.pc "${pkgdir}"/usr/share/pkgconfig + mv -v "${pkgdir}"/usr/bin/systemd-hwdb "${pkgdir}"/usr/bin/udev-hwdb - install -d "${pkgdir}"/usr/lib/udev - mv -v build/src/udev/{*_id,mtd_probe} "${pkgdir}"/usr/lib/udev - - mv -v build/hwdb.d "${pkgdir}"/usr/lib/udev/ - mv -v "$_pkgbase"/hwdb.d/{*.hwdb,README} "${pkgdir}"/usr/lib/udev/hwdb.d/ - mv -v build/rules.d "${pkgdir}"/usr/lib/udev/ - mv -v "$_pkgbase"/rules.d/{*.rules,README} "${pkgdir}"/usr/lib/udev/rules.d/ - - install -d "${pkgdir}"/usr/include - mv -v "$_pkgbase"/src/libudev/libudev.h "${pkgdir}"/usr/include - - install -d "${pkgdir}"/usr/share/man/man{3,5,7,8} - mv -v build/man/libudev.3 "${pkgdir}"/usr/share/man/man3/ - mv -v build/man/udev.conf.5 "${pkgdir}"/usr/share/man/man5/ - mv -v build/man/udev.7 "${pkgdir}"/usr/share/man/man7/ - mv -v build/man/udevadm.8 "${pkgdir}"/usr/share/man/man8/ - - install -d "${pkgdir}"/usr/share/doc/"${pkgname}" - install -m644 "$_pkgbase"/LICENSE.* "${pkgdir}"/usr/share/doc/"${pkgname}" + for m in libudev.3 udev.conf.5 udev.7 udevadm.8; do + _inst_man_udev "$m" + done + _inst_doc # initcpio - install -D -m0644 initcpio-install-udev "${pkgdir}"/usr/lib/initcpio/install/udev - install -D -m0644 initcpio-hook-udev "${pkgdir}"/usr/lib/initcpio/hooks/udev + install -vD -m0644 initcpio-install-udev "${pkgdir}"/usr/lib/initcpio/install/udev + install -vD -m0644 initcpio-hook-udev "${pkgdir}"/usr/lib/initcpio/hooks/udev # pacman hooks make -C alpm-hooks DESTDIR="${pkgdir}" install_udev @@ -209,11 +279,11 @@ package_udev() { package_libudev() { pkgdesc='udev library for enumerating and introspecting local devices' depends=('gcc-libs') - provides=('libudev.so' 'libeudev') + provides=('libudev.so') + provides+=(''libeudev') replaces=('libeudev') - install -d "${pkgdir}"/usr/lib - mv -v build/{libudev.so{,.1},$(_get_libudev)} "${pkgdir}"/usr/lib/ + meson install -C build --destdir "$pkgdir" --no-rebuild --tags libudev } package_esysusers() { @@ -221,10 +291,12 @@ package_esysusers() { groups=('base-devel') depends=('gcc-libs' 'libxcrypt') - _inst_bin sysusers + meson install -C build --destdir "$pkgdir" --no-rebuild --tags sysusers - mv -v build/sysusers.d/basic.conf "${pkgdir}"/usr/lib/sysusers.d - mv -v "$_pkgbase"/sysusers.d/README "${pkgdir}"/usr/lib/sysusers.d + mv -v "${pkgdir}"/usr/bin/systemd-sysusers.standalone "${pkgdir}"/usr/bin/sysusers + + _inst_man_utils sysusers + _inst_doc # pacman hooks make -C alpm-hooks DESTDIR="${pkgdir}" install_sysusers @@ -235,11 +307,12 @@ package_etmpfiles() { groups=('base-devel') depends=('acl' 'libacl.so' 'libcap' 'libcap.so') - _inst_bin tmpfiles + meson install -C build --destdir "$pkgdir" --no-rebuild --tags tmpfiles + + mv -v "${pkgdir}"/usr/bin/systemd-tmpfiles.standalone "${pkgdir}"/usr/bin/tmpfiles - install -d "${pkgdir}"/etc/tmpfiles.d - mv -v build/tmpfiles.d "${pkgdir}"/usr/lib/ - mv -v "$_pkgbase"/tmpfiles.d/{{tmp,home,x11}.conf,README} "${pkgdir}"/usr/lib/tmpfiles.d + _inst_man_utils tmpfiles + _inst_doc # pacman hooks make -C alpm-hooks DESTDIR="${pkgdir}" install_tmpfiles diff --git a/nonsystemd/udev/meson-artix.patch b/nonsystemd/udev/meson-artix.patch new file mode 100644 index 000000000..82e266d86 --- /dev/null +++ b/nonsystemd/udev/meson-artix.patch @@ -0,0 +1,51 @@ +diff --git a/rules.d/meson.build b/rules.d/meson.build +index 8376da17e8..ed8f0c18e1 100644 +--- a/rules.d/meson.build ++++ b/rules.d/meson.build +@@ -52,7 +52,6 @@ endforeach + rules_in = [ + ['50-udev-default.rules'], + ['64-btrfs.rules'], +- ['99-systemd.rules'], + + ['70-uaccess.rules', enable_logind and conf.get('HAVE_ACL') == 1], + ['71-seat.rules', enable_logind], +diff --git a/sysusers.d/meson.build b/sysusers.d/meson.build +index 687544da58..37bf31b4f1 100644 +--- a/sysusers.d/meson.build ++++ b/sysusers.d/meson.build +@@ -22,7 +22,6 @@ endif + + + in_files = [['basic.conf', enable_sysusers], +- ['systemd-journal.conf', enable_sysusers], + ['systemd-network.conf', enable_sysusers and conf.get('ENABLE_NETWORKD') == 1], + ['systemd-resolve.conf', enable_sysusers and conf.get('ENABLE_RESOLVE') == 1], + ['systemd-timesync.conf', enable_sysusers and conf.get('ENABLE_TIMESYNCD') == 1]] +diff --git a/tmpfiles.d/meson.build b/tmpfiles.d/meson.build +index 17607b6c8b..7a53322329 100644 +--- a/tmpfiles.d/meson.build ++++ b/tmpfiles.d/meson.build +@@ -4,14 +4,12 @@ enable_tmpfiles = conf.get('ENABLE_TMPFILES') == 1 + + files = [['README', ''], + ['home.conf', ''], +- ['journal-nocow.conf', ''], + ['portables.conf', 'ENABLE_PORTABLED'], + ['systemd-network.conf', 'ENABLE_NETWORKD'], + ['systemd-nologin.conf', 'HAVE_PAM'], + ['systemd-nspawn.conf', 'ENABLE_MACHINED'], + ['systemd-pstore.conf', 'ENABLE_PSTORE'], + ['systemd-resolve.conf', 'ENABLE_RESOLVE'], +- ['systemd-tmp.conf', ''], + ['tmp.conf', ''], + ['x11.conf', ''], + ] +@@ -30,7 +28,6 @@ endforeach + in_files = [['etc.conf', ''], + ['legacy.conf', 'HAVE_SYSV_COMPAT'], + ['static-nodes-permissions.conf', ''], +- ['systemd.conf', ''], + ['var.conf', ''], + ] + diff --git a/nonsystemd/udev/meson-install-tags.patch b/nonsystemd/udev/meson-install-tags.patch new file mode 100644 index 000000000..b928294b4 --- /dev/null +++ b/nonsystemd/udev/meson-install-tags.patch @@ -0,0 +1,289 @@ +d090cd7950c96d8c376fcf9b08fd33600eae0b71 + factory/templates/meson.build | 1 + + hwdb.d/meson.build | 11 +++++++++++ + meson.build | 26 ++++++++++++++++++++++++++ + meson_options.txt | 7 +++++++ + rules.d/meson.build | 3 +++ + src/libudev/meson.build | 10 +++++++++- + src/udev/meson.build | 13 +++++++++++++ + sysusers.d/meson.build | 3 ++- + tmpfiles.d/meson.build | 9 ++++++++- + 9 files changed, 80 insertions(+), 3 deletions(-) + +diff --git a/factory/templates/meson.build b/factory/templates/meson.build +index ece2c644ff..43ddbd5158 100644 +--- a/factory/templates/meson.build ++++ b/factory/templates/meson.build +@@ -8,4 +8,5 @@ custom_target( + output : 'locale.conf', + command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'], + install : true, ++ install_tag : 'tmpfiles', + install_dir : factory_etc_dir) +diff --git a/hwdb.d/meson.build b/hwdb.d/meson.build +index 90b71916b7..093c5946ac 100644 +--- a/hwdb.d/meson.build ++++ b/hwdb.d/meson.build +@@ -43,10 +43,12 @@ if conf.get('ENABLE_HWDB') == 1 + command : make_autosuspend_rules_py, + capture : true, + install : true, ++ install_tag : 'udev', + install_dir: udevhwdbdir) + + install_data(hwdb_files_notest, + hwdb_files_test, ++ install_tag : 'udev', + install_dir : udevhwdbdir) + + if install_sysconfdir +@@ -57,6 +59,15 @@ if conf.get('ENABLE_HWDB') == 1 + 'test -n "$DESTDIR" || @0@/systemd-hwdb update'.format(rootbindir)) + endif + ++ if install_sysconfdir_standalone ++ install_emptydir( ++ sysconfdir / 'udev/hwdb.d', ++ install_tag : 'udev') ++ ++ meson.add_install_script('sh', '-c', ++ 'test -n "$DESTDIR" || @0@/systemd-hwdb update'.format(rootbindir)) ++ endif ++ + if want_tests != 'false' + parse_hwdb_py = find_program('parse_hwdb.py') + test('parse-hwdb', +diff --git a/meson.build b/meson.build +index 7750534466..cfa01e7a66 100644 +--- a/meson.build ++++ b/meson.build +@@ -168,6 +168,18 @@ if rpmmacrosdir != 'no' + endif + modprobedir = rootprefixdir / 'lib/modprobe.d' + ++install_sysconfdir_standalone = get_option('install-sysconfdir-standalone') ++ ++default_udevd_symlink = get_option('default-udevd-symlink') ++if default_udevd_symlink == '' ++ default_udevd_symlink = 'systemd-udevd' ++endif ++ ++default_udevd_dir = get_option('default-udevd-dir') ++if default_udevd_dir == '' ++ default_udevd_dir = prefixdir / 'lib/systemd' ++endif ++ + # Our own paths + pkgdatadir = datadir / 'systemd' + environmentdir = prefixdir / 'lib/environment.d' +@@ -3582,6 +3594,7 @@ if enable_sysusers + libbasic_gcrypt, + libsystemd_static], + install : true, ++ install_tag : 'sysusers', + install_dir : rootbindir) + public_programs += exe + +@@ -3625,6 +3638,7 @@ if conf.get('ENABLE_TMPFILES') == 1 + libsystemd_static], + dependencies : [libacl], + install : true, ++ install_tag : 'tmpfiles', + install_dir : rootbindir) + public_programs += exe + +@@ -3645,6 +3659,7 @@ if conf.get('ENABLE_HWDB') == 1 + link_with : udev_link_with, + install_rpath : udev_rpath, + install : true, ++ install_tag : 'udev', + install_dir : rootbindir) + public_programs += systemd_hwdb + +@@ -3691,9 +3706,18 @@ udevadm = executable( + libblkid], + install_rpath : udev_rpath, + install : true, ++ install_tag : 'udev', + install_dir : rootbindir) + public_programs += udevadm + ++if install_sysconfdir_standalone ++ install_symlink( ++ default_udevd_symlink, ++ install_dir : default_udevd_dir, ++ install_tag : 'udev', ++ pointing_to : rootbindir / 'udevadm') ++endif ++ + if conf.get('ENABLE_REPART') == 1 + exe = executable( + 'systemd-repart', +@@ -4281,6 +4305,8 @@ summary({ + 'nobody user name' : nobody_user, + 'nobody group name' : nobody_group, + 'fallback hostname' : get_option('fallback-hostname'), ++ 'default udevd symlink name' : default_udevd_symlink, ++ 'default udevd symlink directory' : default_udevd_dir, + 'default compression method' : compression, + 'default DNSSEC mode' : default_dnssec, + 'default DNS-over-TLS mode' : default_dns_over_tls, +diff --git a/meson_options.txt b/meson_options.txt +index 814f340840..e022094400 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -509,3 +509,10 @@ option('bpf-framework', type : 'combo', choices : ['auto', 'true', 'false'], + + option('skip-deps', type : 'boolean', value : false, + description : 'skip optional dependencies') ++ ++option('install-sysconfdir-standalone', type : 'boolean', value : false, ++ description : 'install configuration files and directories to $sysconfdir') ++option('default-udevd-symlink', type : 'string', ++ description : 'the udevd standalone symlink name') ++option('default-udevd-dir', type : 'string', ++ description : 'the udevd directory') +diff --git a/rules.d/meson.build b/rules.d/meson.build +index 8d2878a36d..31751215d1 100644 +--- a/rules.d/meson.build ++++ b/rules.d/meson.build +@@ -2,6 +2,7 @@ + + install_data( + 'README', ++ install_tag : 'udev', + install_dir : udevrulesdir) + + rules = [ +@@ -45,6 +46,7 @@ all_rules = [] + foreach tuple : rules + if tuple.length() == 1 or tuple[1] + install_data(tuple[0], ++ install_tag : 'udev', + install_dir : udevrulesdir) + all_rules += tuple[0] + endif +@@ -71,6 +73,7 @@ foreach tuple : rules_in + output: tuple[0], + command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'], + install : want, ++ install_tag : 'udev', + install_dir : udevrulesdir) + + if want +diff --git a/src/libudev/meson.build b/src/libudev/meson.build +index 92d54078f0..6795f33e6a 100644 +--- a/src/libudev/meson.build ++++ b/src/libudev/meson.build +@@ -24,6 +24,14 @@ libudev_sym_path = meson.current_source_dir() / 'libudev.sym' + install_headers('libudev.h') + libudev_h_path = meson.current_source_dir() / 'libudev.h' + ++if install_sysconfdir_standalone ++ libudev_h_path = meson.current_source_dir() / 'libudev.h' ++ install_data( ++ libudev_h_path, ++ install_dir: includedir, ++ install_tag: 'udev-devel') ++endif ++ + libudev_basic = static_library( + 'udev-basic', + libudev_sources, +@@ -40,7 +48,7 @@ libudev_pc = custom_target( + output : 'libudev.pc', + command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'], + install : pkgconfiglibdir != 'no', +- install_tag : 'devel', ++ install_tag : 'libudev-devel', + install_dir : pkgconfiglibdir) + + ############################################################ +diff --git a/src/udev/meson.build b/src/udev/meson.build +index 08a1d97e81..bc2242fe73 100644 +--- a/src/udev/meson.build ++++ b/src/udev/meson.build +@@ -150,6 +150,7 @@ foreach prog : udev_progs + link_with : udev_link_with, + install_rpath : udev_rpath, + install : true, ++ install_tag : 'udev', + install_dir : udevlibexecdir) + + udev_prog_paths += {name : exe} +@@ -160,12 +161,24 @@ if install_sysconfdir_samples + install_dir : sysconfdir / 'udev') + endif + ++if install_sysconfdir_standalone ++ install_data( ++ 'udev.conf', ++ install_tag : 'udev', ++ install_dir : sysconfdir / 'udev') ++ ++ install_emptydir( ++ sysconfdir / 'udev/rules.d', ++ install_tag : 'udev') ++endif ++ + custom_target( + 'udev.pc', + input : 'udev.pc.in', + output : 'udev.pc', + command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'], + install : pkgconfigdatadir != 'no', ++ install_tag : 'udev-devel', + install_dir : pkgconfigdatadir) + + if install_sysconfdir +diff --git a/sysusers.d/meson.build b/sysusers.d/meson.build +index 608c4b744a..687544da58 100644 +--- a/sysusers.d/meson.build ++++ b/sysusers.d/meson.build +@@ -8,7 +8,7 @@ foreach pair : files + if not enable_sysusers + # do nothing + elif pair[1] == '' or conf.get(pair[1]) == 1 +- install_data(pair[0], install_dir : sysusersdir) ++ install_data(pair[0], install_tag : 'sysusers', install_dir : sysusersdir) + else + message('Not installing sysusers.d/@0@ because @1@ is @2@' + .format(pair[0], pair[1], conf.get(pair[1], 0))) +@@ -35,5 +35,6 @@ foreach tuple : in_files + output: file, + command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'], + install : tuple[1], ++ install_tag : 'sysusers', + install_dir : sysusersdir) + endforeach +diff --git a/tmpfiles.d/meson.build b/tmpfiles.d/meson.build +index ca1abbf3fe..e9a8e2449b 100644 +--- a/tmpfiles.d/meson.build ++++ b/tmpfiles.d/meson.build +@@ -21,7 +21,7 @@ foreach pair : files + if not enable_tmpfiles + # do nothing + elif pair[1] == '' or conf.get(pair[1]) == 1 +- install_data(pair[0], install_dir : tmpfilesdir) ++ install_data(pair[0], install_tag : 'tmpfiles', install_dir : tmpfilesdir) + else + message('Not installing tmpfiles.d/@0@ because @1@ is @2@' + .format(pair[0], pair[1], conf.get(pair[1], 0))) +@@ -45,6 +45,7 @@ foreach pair : in_files + output: pair[0], + command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'], + install : enable_tmpfiles, ++ install_tag : 'tmpfiles', + install_dir : tmpfilesdir) + else + message('Not installing tmpfiles.d/@0@ because @1@ is @2@' +@@ -56,3 +57,9 @@ if enable_tmpfiles and install_sysconfdir + meson.add_install_script( + 'sh', '-c', mkdir_p.format(sysconfdir / 'tmpfiles.d')) + endif ++ ++if enable_tmpfiles and install_sysconfdir_standalone ++ install_emptydir( ++ sysconfdir / 'tmpfiles.d', ++ install_tag : 'tmpfiles') ++endif diff --git a/nonsystemd/udev/udev-log-msg.patch b/nonsystemd/udev/udev-log-msg.patch new file mode 100644 index 000000000..2c108c019 --- /dev/null +++ b/nonsystemd/udev/udev-log-msg.patch @@ -0,0 +1,17 @@ + src/udev/udevd.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/udev/udevd.c b/src/udev/udevd.c +index e3a2742733..21102fde18 100644 +--- a/src/udev/udevd.c ++++ b/src/udev/udevd.c +@@ -2055,7 +2055,7 @@ int run_udevd(int argc, char *argv[]) { + if (arg_daemonize) { + pid_t pid; + +- log_info("Starting systemd-udevd version " GIT_VERSION); ++ log_info("Starting udevd version " GIT_VERSION); + + /* connect /dev/null to stdin, stdout, stderr */ + if (log_get_max_level() < LOG_DEBUG) { + |