summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorA. Wilcox <AWilcox@Wilcox-Tech.com>2023-11-08 21:27:30 -0600
committerA. Wilcox <AWilcox@Wilcox-Tech.com>2023-11-26 06:37:31 -0600
commit42661809c0c64125282bd7d247af58b2af1f42da (patch)
tree74df95be702a181893fd607d357e73a34c3b926f
parent5b4daaa207e0168b6621c0f7a2997bc266502058 (diff)
downloadpackages-42661809c0c64125282bd7d247af58b2af1f42da.tar.gz
packages-42661809c0c64125282bd7d247af58b2af1f42da.tar.bz2
packages-42661809c0c64125282bd7d247af58b2af1f42da.tar.xz
packages-42661809c0c64125282bd7d247af58b2af1f42da.zip
user/elogind: Add dracut module for uaccess
We have the following in virtually all dmesg, on every bootup: [ 12.782588] systemd-udevd[369]: failed to execute '/lib/elogind/elogind-uaccess-command' '/lib/elogind/elogind-uaccess-command /dev/sr0 ': No such file or directory This is because: * Dracut renames eudev to systemd-udevd * Dracut copies the elogind udev rules to initramfs * The elogind udev rules add uaccess ACL support * uaccess ACL support requires a helper binary with eudev See also: https://github.com/elogind/elogind/pull/47 https://github.com/dracutdevs/dracut/issues/1909 https://github.com/fearedbliss/bliss-initramfs/issues/31
-rw-r--r--user/elogind/APKBUILD11
-rwxr-xr-xuser/elogind/dracut_module.sh18
2 files changed, 27 insertions, 2 deletions
diff --git a/user/elogind/APKBUILD b/user/elogind/APKBUILD
index 471b47ed9..21ab891ab 100644
--- a/user/elogind/APKBUILD
+++ b/user/elogind/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=elogind
pkgver=246.10
-pkgrel=1
+pkgrel=2
pkgdesc="Session manager system"
url="https://github.com/elogind/elogind/wiki"
arch="all"
@@ -11,7 +11,7 @@ depends="dbus eudev utmps"
makedepends="meson ninja acl-dev dbus-dev docbook-xsl eudev-dev gperf libcap-dev
libxslt-dev linux-headers linux-pam-dev m4 skalibs-libs-dev
utmps-libs-dev"
-subpackages="$pkgname-dev $pkgname-doc $pkgname-lang $pkgname-openrc"
+subpackages="$pkgname-dev $pkgname-doc $pkgname-lang $pkgname-openrc $pkgname-dracut"
install="$pkgname.post-install $pkgname.post-deinstall"
source="elogind-$pkgver.tar.gz::https://github.com/elogind/elogind/archive/v$pkgver.tar.gz
utmps.patch
@@ -19,6 +19,7 @@ source="elogind-$pkgver.tar.gz::https://github.com/elogind/elogind/archive/v$pkg
elogind.pamd
elogind.confd
elogind.initd
+ dracut_module.sh
bad-tests.patch
"
@@ -49,9 +50,15 @@ package() {
install -D -m644 "$srcdir"/elogind.confd "$pkgdir"/etc/conf.d/elogind
}
+dracut() {
+ install_if="$pkgname=$pkgver-r$pkgrel dracut"
+ install -D -m755 "$srcdir"/dracut_module.sh "$subpkgdir"/usr/lib/dracut/modules.d/99elogind/module-setup.sh
+}
+
sha512sums="9db0f068ed94ec07bab4d764ccb38840af3d05a4b7c9c539721906f5381b509cb9a3cbfb0453a978210d306136368de6162578c600d522416ef2a7ac1b9f348b elogind-246.10.tar.gz
cb8740386e44606cc894a1740556c5eb507a980fdfcaaaef05725179d4550920018ddc971f448ae02e95643da9f570531f8edf4f9aae4251639b492966436ede utmps.patch
b5043d7bcbefdf00704d40670deafa0984899cc7be083e8d886a92137932a9f23c25749c106cfc07906166e57db32fe6c602cf1c54129faa7e5b04d6228b7c17 elogind.pamd
2c9047c054582824f8a3e71bb0a79a5621d7a92cb15c66bb7e7a8deb931037b6d3a331b86cdc9eb5ec4e7b2b725548a7ee6657e3c3193d81ba6422cd101a2491 elogind.confd
bbc203a924abf65b45d7d4d2fc31baf2d4e23135d98c7c937f93a4fe2d4ce9dac3d4e0747c1e09101f8b2ce674d25d49e085bf2445e7cb28408d7d209f8f4491 elogind.initd
+d5889b2757b69a5a853341a5730affeb7db4c4129514009d11f1ca010d1ccf6cbc55393bd79e0d2dd97c5af77fff75390b1e58538370d9847256eb7f7ec865ff dracut_module.sh
a8bcb3c13e13a974e0492721705be808c934026bb4ee92cf280143db85563cf73921354438a6d8bd372edec7e7923894e72daf88f731150c273a82d333737f25 bad-tests.patch"
diff --git a/user/elogind/dracut_module.sh b/user/elogind/dracut_module.sh
new file mode 100755
index 000000000..c65bcadec
--- /dev/null
+++ b/user/elogind/dracut_module.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+
+# called by dracut
+check() {
+ require_binaries /lib/elogind/elogind-uaccess-command
+}
+
+# called by dracut
+depends() {
+ echo base
+ return 0
+}
+
+# called by dracut
+install() {
+ inst /lib/elogind/elogind-uaccess-command
+}
+