From 9cc21a15e827628c45e2a75a780f912168e13f3a Mon Sep 17 00:00:00 2001 From: Changqing Li Date: Fri, 24 May 2024 10:23:50 +0800 Subject: fuse3: remove sysv init script and install fuse kernel module explictly For systemd, there is not a fuse.service since systemd provides sys-fs-fuse-connections.mount to mount the fuse control filesystem, so instead, only fuse3.conf is added to modules-load.d to load the required fuse kernel module. Signed-off-by: Changqing Li Signed-off-by: Armin Kuster --- meta-filesystems/recipes-support/fuse/fuse3/fuse3.conf | 1 + meta-filesystems/recipes-support/fuse/fuse3_3.16.2.bb | 15 +++++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 meta-filesystems/recipes-support/fuse/fuse3/fuse3.conf diff --git a/meta-filesystems/recipes-support/fuse/fuse3/fuse3.conf b/meta-filesystems/recipes-support/fuse/fuse3/fuse3.conf new file mode 100644 index 0000000000..a517c488f3 --- /dev/null +++ b/meta-filesystems/recipes-support/fuse/fuse3/fuse3.conf @@ -0,0 +1 @@ +fuse diff --git a/meta-filesystems/recipes-support/fuse/fuse3_3.16.2.bb b/meta-filesystems/recipes-support/fuse/fuse3_3.16.2.bb index 2b0797a6f5..b946b63ee4 100644 --- a/meta-filesystems/recipes-support/fuse/fuse3_3.16.2.bb +++ b/meta-filesystems/recipes-support/fuse/fuse3_3.16.2.bb @@ -14,6 +14,7 @@ LIC_FILES_CHKSUM = " \ " SRC_URI = "https://github.com/libfuse/libfuse/releases/download/fuse-${PV}/fuse-${PV}.tar.gz \ + file://fuse3.conf \ " SRC_URI[sha256sum] = "f797055d9296b275e981f5f62d4e32e089614fc253d1ef2985851025b8a0ce87" @@ -79,6 +80,20 @@ FILES:fuse3-utils = "${bindir} ${base_sbindir}" DEBIAN_NOAUTONAME:fuse3-utils = "1" DEBIAN_NOAUTONAME:${PN}-dbg = "1" +SYSTEMD_SERVICE:${PN} = "" + do_install:append() { rm -rf ${D}${base_prefix}/dev + + # systemd class remove the sysv_initddir only if systemd_system_unitdir + # contains anything, but it's not needed if sysvinit is not in DISTRO_FEATURES + if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'false', 'true', d)}; then + rm -rf ${D}${sysconfdir}/init.d/ + fi + + # Install systemd related configuration file + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -d ${D}${sysconfdir}/modules-load.d + install -m 0644 ${WORKDIR}/fuse3.conf ${D}${sysconfdir}/modules-load.d + fi } -- cgit v1.2.3-54-g00ecf