diff --git a/pkg.info b/pkg.info index 7e67ec6..736ee0c 100644 --- a/pkg.info +++ b/pkg.info @@ -1,7 +1,7 @@ name: udev description: Userspace device file manager -version: "260.1" -revision: 2 +version: "260.2" +revision: 1 url: https://github.com/systemd/systemd license: GPL-2.0-or-later,LGPL-2.1-or-later maintainers: @@ -26,7 +26,7 @@ downloads: - url: https://github.com/systemd/systemd/archive/v${BPM_PKG_VERSION}/systemd-${BPM_PKG_VERSION}.tar.gz extract_to: ${BPM_SOURCE} extract_strip_components: 1 - checksum: 11b9821892b75d19af7b21f0f7f4e53636638147faf3e6a4ded78b40cb38993f + checksum: 71a9ed11cf773478b0d7a16cd96e39ca3c3939ab37ed9a8ee814c31ea9b4f2b5 split_packages: - name: udev depends: diff --git a/source-files/artix-standalone-install.patch b/source-files/0001-artix-standalone-install.patch similarity index 50% rename from source-files/artix-standalone-install.patch rename to source-files/0001-artix-standalone-install.patch index 9183ab4..ea0d902 100644 --- a/source-files/artix-standalone-install.patch +++ b/source-files/0001-artix-standalone-install.patch @@ -1,52 +1,35 @@ -From 206057496ee5414d9aeb602f6043db7db33d52ba Mon Sep 17 00:00:00 2001 +From 572fc6efb5ea952569f11efd185250584afbe038 Mon Sep 17 00:00:00 2001 From: artoo -Date: Tue, 31 Mar 2026 20:15:38 +0200 -Subject: [PATCH 1/1] artix standalone install +Date: Wed, 27 May 2026 15:17:52 +0200 +Subject: [PATCH 1/1] udev standalone install --- - factory/templates/meson.build | 2 ++ - meson.build | 22 ++++++++++++++---- - rules.d/meson.build | 3 +-- - shell-completion/bash/meson.build | 38 +------------------------------ - shell-completion/zsh/meson.build | 31 +------------------------ + meson.build | 13 +++++++--- + meson_options.txt | 3 +++ + rules.d/meson.build | 4 +-- + shell-completion/bash/meson.build | 41 ++----------------------------- + shell-completion/zsh/meson.build | 34 ++----------------------- src/core/meson.build | 5 ---- src/hwdb/meson.build | 2 +- - src/libudev/meson.build | 9 +++++++- - src/sysusers/meson.build | 3 ++- - src/tmpfiles/meson.build | 3 ++- - src/udev/meson.build | 8 +++---- + src/libudev/meson.build | 9 ++++++- + src/udev/meson.build | 8 +++--- src/udev/udevd.c | 2 +- - sysusers.d/meson.build | 4 ++-- - test/meson.build | 6 ++--- - tmpfiles.d/legacy.conf.in | 3 --- - tmpfiles.d/meson.build | 10 +++----- - 16 files changed, 49 insertions(+), 102 deletions(-) + test/meson.build | 2 +- + 11 files changed, 33 insertions(+), 90 deletions(-) -diff --git a/factory/templates/meson.build b/factory/templates/meson.build -index 0f53217a48..071cfc9547 100644 ---- a/factory/templates/meson.build -+++ b/factory/templates/meson.build -@@ -7,6 +7,7 @@ custom_target( - output : 'locale.conf', - command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'], - install : true, -+ install_tag : 'etmpfiles', - install_dir : factory_etc_dir) - - custom_target( -@@ -14,6 +15,7 @@ custom_target( - output : 'vconsole.conf', - command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'], - install : true, -+ install_tag : 'etmpfiles', - install_dir : factory_etc_dir) - - if conf.get('ENABLE_NSS') == 1 diff --git a/meson.build b/meson.build -index 3672005d75..6ef9ee5f11 100644 +index e98a62d9bc..ba519b7494 100644 --- a/meson.build +++ b/meson.build -@@ -121,7 +121,7 @@ includedir = prefixdir / get_option('includedir') +@@ -96,6 +96,7 @@ conf.set10('HAVE_SPLIT_BIN', split_bin, + description : 'bin and sbin directories are separate') + + have_standalone_binaries = get_option('standalone-binaries') ++have_standalone_udev = get_option('standalone-udev') + + conf.set10('CREATE_LOG_DIRS', get_option('create-log-dirs')) + +@@ -128,7 +129,7 @@ includedir = prefixdir / get_option('includedir') datadir = prefixdir / get_option('datadir') localstatedir = '/' / get_option('localstatedir') @@ -55,7 +38,7 @@ index 3672005d75..6ef9ee5f11 100644 libexecdir_to_bin = '../../bin/' pkglibdir = libdir / 'systemd' -@@ -2799,7 +2799,6 @@ subdir('shell-completion/zsh') +@@ -2806,7 +2807,6 @@ subdir('shell-completion/zsh') subdir('sysctl.d') subdir('sysusers.d') subdir('tmpfiles.d') @@ -63,7 +46,7 @@ index 3672005d75..6ef9ee5f11 100644 install_subdir('factory/etc', install_dir : factorydir) -@@ -2821,6 +2820,21 @@ install_data('LICENSE.GPL2', +@@ -2828,6 +2828,11 @@ install_data('LICENSE.GPL2', install_subdir('LICENSES', install_dir : docdir) @@ -71,21 +54,11 @@ index 3672005d75..6ef9ee5f11 100644 + 'LICENSE.LGPL2.1', + install_tag : 'udev', + install_dir : datadir / 'doc/udev') -+ -+install_data('LICENSE.GPL2', -+ 'LICENSE.LGPL2.1', -+ install_tag : 'etmpfiles', -+ install_dir : datadir / 'doc/etmpfiles') -+ -+install_data('LICENSE.GPL2', -+ 'LICENSE.LGPL2.1', -+ install_tag : 'esysusers', -+ install_dir : datadir / 'doc/esysusers') + ##################################################################### # Ensure that changes to the docs/ directory do not break the -@@ -3000,10 +3014,10 @@ udev_targets = [] +@@ -3013,10 +3018,10 @@ udev_targets = [] foreach bin : udev_binaries udev_targets += executables_by_name.get(bin, []) endforeach @@ -98,20 +71,32 @@ index 3672005d75..6ef9ee5f11 100644 endif alt_time_epoch = run_command('date', '-Is', '-u', '-d', f'@@time_epoch@', check : false) +diff --git a/meson_options.txt b/meson_options.txt +index c1af7ce237..ab1f3d7ae5 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -568,3 +568,6 @@ option('default-mountfsd-trusted-directories', type : 'boolean', value: false, + + option('default-oci-registry', type : 'string', value : 'docker.io', + description : 'Default OCI registry name') ++ ++option('standalone-udev', type : 'boolean', value : false, ++ description : 'build standalone version of udev') diff --git a/rules.d/meson.build b/rules.d/meson.build -index aa469ef7a7..4576cb92e3 100644 +index aa469ef7a7..8c56d96b04 100644 --- a/rules.d/meson.build +++ b/rules.d/meson.build -@@ -2,7 +2,7 @@ +@@ -2,7 +2,8 @@ install_data( 'README', - install_dir : udevrulesdir) -+ install_dir : udevrulesdir, install_tag : 'udev') ++ install_dir : udevrulesdir, ++ install_tag : 'udev') rules = [ [files('60-autosuspend.rules', -@@ -67,7 +67,6 @@ rules_in = [ +@@ -67,7 +68,6 @@ rules_in = [ ['50-udev-default.rules'], ['60-persistent-storage.rules'], ['64-btrfs.rules'], @@ -120,10 +105,10 @@ index aa469ef7a7..4576cb92e3 100644 ['70-uaccess.rules', conf.get('ENABLE_LOGIND') == 1 and conf.get('HAVE_ACL') == 1], ['71-seat.rules', conf.get('ENABLE_LOGIND') == 1], diff --git a/shell-completion/bash/meson.build b/shell-completion/bash/meson.build -index 178986e171..79ee20a16d 100644 +index 154910979e..9dc7a8bffe 100644 --- a/shell-completion/bash/meson.build +++ b/shell-completion/bash/meson.build -@@ -20,48 +20,12 @@ custom_target( +@@ -20,49 +20,12 @@ custom_target( install_dir : bashcompletiondir) foreach item : [ @@ -153,6 +138,7 @@ index 178986e171..79ee20a16d 100644 - ['systemd-delta', ''], - ['systemd-detect-virt', ''], - ['systemd-dissect', 'HAVE_BLKID'], +- ['systemd-hwdb', 'ENABLE_HWDB'], - ['systemd-id128', ''], - ['systemd-nspawn', 'ENABLE_NSPAWN'], - ['systemd-path', ''], @@ -169,15 +155,16 @@ index 178986e171..79ee20a16d 100644 if item[1] == '' or conf.get(item[1]) == 1 install_data(item[0], -+ install_tag : 'udev', - install_dir : bashcompletiondir) +- install_dir : bashcompletiondir) ++ install_dir : bashcompletiondir, ++ install_tag : 'udev') endif endforeach diff --git a/shell-completion/zsh/meson.build b/shell-completion/zsh/meson.build -index eb5bb4b6a4..0538954fb9 100644 +index b1bff151e4..ce6e147bf0 100644 --- a/shell-completion/zsh/meson.build +++ b/shell-completion/zsh/meson.build -@@ -15,41 +15,12 @@ custom_target( +@@ -15,42 +15,12 @@ custom_target( install_dir : zshcompletiondir) foreach item : [ @@ -202,6 +189,7 @@ index eb5bb4b6a4..0538954fb9 100644 - ['_systemd', ''], - ['_systemd-analyze', ''], - ['_systemd-delta', ''], +- ['_systemd-hwdb', 'ENABLE_HWDB'], - ['_systemd-id128', ''], - ['_systemd-inhibit', 'ENABLE_LOGIND'], - ['_systemd-nspawn', ''], @@ -216,15 +204,16 @@ index eb5bb4b6a4..0538954fb9 100644 if item[1] == '' or conf.get(item[1]) == 1 install_data(item[0], -+ install_tag : 'udev', - install_dir : zshcompletiondir) +- install_dir : zshcompletiondir) ++ install_dir : zshcompletiondir, ++ install_tag : 'udev') endif endforeach diff --git a/src/core/meson.build b/src/core/meson.build -index e703cc3728..d6719d2c9c 100644 +index 391dc45a6b..04faeefafe 100644 --- a/src/core/meson.build +++ b/src/core/meson.build -@@ -295,11 +295,6 @@ if install_sysconfdir +@@ -298,11 +298,6 @@ if install_sysconfdir install_dir : sysconfdir / 'xdg/systemd') endif @@ -250,14 +239,14 @@ index 57ace3ad44..96c0b185d0 100644 'conditions' : ['ENABLE_HWDB'], 'sources' : files('hwdb.c'), diff --git a/src/libudev/meson.build b/src/libudev/meson.build -index eb9dda79ae..e45d25c71b 100644 +index eb9dda79ae..174dcd2a12 100644 --- a/src/libudev/meson.build +++ b/src/libudev/meson.build @@ -25,6 +25,13 @@ libudev_sym_path = libudev_dir_path / 'libudev.sym' install_headers('libudev.h') libudev_h_path = libudev_dir_path / 'libudev.h' -+if have_standalone_binaries ++if have_standalone_udev + install_data( + libudev_h_path, + install_dir: includedir, @@ -274,48 +263,6 @@ index eb9dda79ae..e45d25c71b 100644 - install_tag : 'devel', + install_tag : 'libudev-devel', install_dir : pkgconfiglibdir) -diff --git a/src/sysusers/meson.build b/src/sysusers/meson.build -index b74ac6aa1a..6be39ac23b 100644 ---- a/src/sysusers/meson.build -+++ b/src/sysusers/meson.build -@@ -12,7 +12,7 @@ executables += [ - 'dependencies' : libaudit_cflags, - }, - executable_template + { -- 'name' : 'systemd-sysusers.standalone', -+ 'name' : 'esysusers', - 'public' : true, - 'objects' : ['systemd-sysusers'], - 'link_with' : [ -@@ -21,6 +21,7 @@ executables += [ - libshared_static, - libsystemd_static, - ], -+ 'install_tag' : 'esysusers', - 'dependencies' : libaudit_cflags, - }, - ] -diff --git a/src/tmpfiles/meson.build b/src/tmpfiles/meson.build -index 2a7728c295..54ab1e2e71 100644 ---- a/src/tmpfiles/meson.build -+++ b/src/tmpfiles/meson.build -@@ -15,7 +15,7 @@ executables += [ - 'dependencies' : libacl_cflags, - }, - executable_template + { -- 'name' : 'systemd-tmpfiles.standalone', -+ 'name' : 'etmpfiles', - 'public' : true, - 'objects' : ['systemd-tmpfiles'], - 'link_with' : [ -@@ -24,6 +24,7 @@ executables += [ - libshared_static, - libsystemd_static, - ], -+ 'install_tag' : 'etmpfiles', - 'dependencies' : libacl_cflags, - }, - test_template + { diff --git a/src/udev/meson.build b/src/udev/meson.build index 700a8cc8d5..d2981583ff 100644 --- a/src/udev/meson.build @@ -355,44 +302,10 @@ index 840febbd42..b772115d3c 100644 /* connect /dev/null to stdin, stdout, stderr */ if (log_get_max_level() < LOG_DEBUG) { -diff --git a/sysusers.d/meson.build b/sysusers.d/meson.build -index 84fadfe3f7..22dfd09c05 100644 ---- a/sysusers.d/meson.build -+++ b/sysusers.d/meson.build -@@ -7,12 +7,11 @@ files = [['README', true], - - foreach tuple : files - if enable_sysusers and tuple[1] -- install_data(tuple[0], install_dir : sysusersdir) -+ install_data(tuple[0], install_dir : sysusersdir, install_tag : 'esysusers') - endif - endforeach - - in_files = [['basic.conf', true], -- ['systemd-journal.conf', true], - ['systemd-network.conf', conf.get('ENABLE_NETWORKD') == 1], - ['systemd-resolve.conf', conf.get('ENABLE_RESOLVE') == 1], - ['systemd-timesync.conf', conf.get('ENABLE_TIMESYNCD') == 1]] -@@ -24,5 +23,6 @@ foreach tuple : in_files - output: file, - command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'], - install : enable_sysusers and tuple[1], -+ install_tag : 'esysusers', - install_dir : sysusersdir) - endforeach diff --git a/test/meson.build b/test/meson.build -index 7bf557cc19..38a3da9e5b 100644 +index 7bf557cc19..3e16a3bffa 100644 --- a/test/meson.build +++ b/test/meson.build -@@ -17,7 +17,7 @@ if conf.get('ENABLE_SYSUSERS') == 1 - suite : 'sysusers') - - if have_standalone_binaries -- exe = executables_by_name.get('systemd-sysusers.standalone') -+ exe = executables_by_name.get('esysusers') - test('test-sysusers.standalone', - test_sysusers_sh, - # https://github.com/mesonbuild/meson/issues/2681 @@ -40,7 +40,7 @@ endif ############################################################ @@ -402,85 +315,6 @@ index 7bf557cc19..38a3da9e5b 100644 test('hwdb-test', files('hwdb-test.sh'), suite : 'dist', -@@ -86,7 +86,7 @@ if want_tests != 'false' and conf.get('ENABLE_TMPFILES') == 1 - suite : 'tmpfiles') - - if have_standalone_binaries -- exe = executables_by_name.get('systemd-tmpfiles.standalone') -+ exe = executables_by_name.get('etmpfiles') - test('test-systemd-tmpfiles.standalone', - test_systemd_tmpfiles_py, - args : exe.full_path(), -diff --git a/tmpfiles.d/legacy.conf.in b/tmpfiles.d/legacy.conf.in -index 7036c12b7c..80120b04b4 100644 ---- a/tmpfiles.d/legacy.conf.in -+++ b/tmpfiles.d/legacy.conf.in -@@ -13,6 +13,3 @@ - - d /run/lock 0755 root root - - L /var/lock - - - - ../run/lock --{% if CREATE_LOG_DIRS %} --L$ /var/log/README - - - - ../..{{DOC_DIR}}/README.logs --{% endif %} -diff --git a/tmpfiles.d/meson.build b/tmpfiles.d/meson.build -index c8f9015b2e..8398efbca8 100644 ---- a/tmpfiles.d/meson.build -+++ b/tmpfiles.d/meson.build -@@ -6,15 +6,12 @@ endif - - 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' ], -- ['20-systemd-varlink.conf' ], -- ['systemd-tmp.conf' ], - ['tmp.conf' ], - ['x11.conf' ], - ['provision.conf' ], -@@ -23,7 +20,7 @@ files = [['README' ], - - foreach f : files - if f.length() == 1 or conf.get(f[1]) == 1 -- install_data(f[0], install_dir : tmpfilesdir) -+ install_data(f[0], install_dir : tmpfilesdir, install_tag : 'etmpfiles') - else - message('Not installing tmpfiles.d/@0@ because @1@ is @2@' - .format(f[0], f[1], conf.get(f[1], 0))) -@@ -34,12 +31,10 @@ in_files = [ - ['20-systemd-shell-extra.conf', 'LINK_SHELL_EXTRA_DROPIN' ], - ['20-systemd-osc-context.conf', 'LINK_OSC_CONTEXT_DROPIN' ], - ['20-systemd-ssh-generator.conf', 'ENABLE_SSH_PROXY_CONFIG' ], -- ['20-systemd-stub.conf', 'ENABLE_EFI' ], - ['20-systemd-userdb.conf', 'ENABLE_SSH_USERDB_CONFIG' ], - ['etc.conf' ], - ['legacy.conf', 'ENABLE_COMPAT_SYSV_INTERFACES'], - ['static-nodes-permissions.conf' ], -- ['systemd.conf' ], - ['var.conf' ], - ] - -@@ -50,6 +45,7 @@ foreach f : in_files - output: f[0], - command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'], - install : true, -+ install_tag : 'etmpfiles', - install_dir : tmpfilesdir) - else - message('Not installing tmpfiles.d/@0@ because @1@ is @2@' -@@ -58,7 +54,7 @@ foreach f : in_files - endforeach - - if install_sysconfdir -- install_emptydir(sysconfdir / 'tmpfiles.d') -+ install_emptydir(sysconfdir / 'tmpfiles.d', install_tag : 'etmpfiles') - endif - - subdir('user') -- -2.53.0 +2.54.0 diff --git a/source-files/fix-link-udev-shared.patch b/source-files/fix-link-udev-shared.patch deleted file mode 100644 index 54c6ef3..0000000 --- a/source-files/fix-link-udev-shared.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 9736f634c8b61343be966114ce1c9eddaf0fa742 Mon Sep 17 00:00:00 2001 -From: Luca Boccassi -Date: Wed, 17 Sep 2025 16:13:37 +0100 -Subject: [PATCH] meson: fix link-udev-shared option - -This doesn't work anymore, setting it to false still makes -udev link to libsystemd-shared, as an argument was mistakenly -dropped. - -Follow-up for 6350d2dbd97746440b9c8303ddc140ffda568732 ---- - src/udev/meson.build | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/udev/meson.build b/src/udev/meson.build -index dc54d4e68878c..908bec8b1d329 100644 ---- a/src/udev/meson.build -+++ b/src/udev/meson.build -@@ -151,6 +151,7 @@ udev_binaries_dict = [ - include_directories('.', 'net'), - ], - 'dependencies' : udev_dependencies, -+ 'link_with' : udev_link_with, - 'install_rpath' : udev_rpath, - 'install_tag' : 'udev', - 'extract' : udevadm_extract_sources, diff --git a/source.sh b/source.sh index bf732cd..52307a2 100644 --- a/source.sh +++ b/source.sh @@ -7,7 +7,7 @@ prepare() { cd "$BPM_SOURCE" # Patch from Artix to make installation easier - patch -Np1 -i "$BPM_WORKDIR"/artix-standalone-install.patch + patch -Np1 -i "$BPM_WORKDIR"/0001-artix-standalone-install.patch } # The build function is executed in the source directory