Switch to new download format, split package and move mount.fuse3 to usr/bin

This commit is contained in:
2025-12-14 09:16:57 +02:00
parent 9f4fe032f5
commit 3953771375
2 changed files with 33 additions and 19 deletions
+20 -3
View File
@@ -1,9 +1,26 @@
name: fuse3 name: fuse3
description: The reference implementation of the Linux FUSE (Filesystem in Userspace) interface description: The reference implementation of the Linux FUSE (Filesystem in Userspace) interface
version: 3.17.4 version: 3.17.4
revision: 2
url: https://github.com/libfuse/libfuse url: https://github.com/libfuse/libfuse
license: GPL2 license: GPL2-or-later,LGPL2.1-or-later
architecture: any architecture: any
depends: ["glibc"]
make_depends: ["meson","pkgconf","udev"]
type: source type: source
make_depends:
- meson
- pkgconf
- udev
downloads:
- url: https://github.com/libfuse/libfuse/releases/download/fuse-${BPM_PKG_VERSION}/fuse-${BPM_PKG_VERSION}.tar.gz
extract_to: ${BPM_SOURCE}
extract_strip_components: 1
checksum: df9e40ae927b73dc702d0bce7925c0c618af47ad0b13204fbf2be66e54d8528b
split_packages:
- name: fuse3
depends:
- fuse-common
- glibc
- name: fuse-common
description: Common files for fuse packages
keep:
- etc/fuse.conf
+13 -16
View File
@@ -2,35 +2,32 @@
# BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE # BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE
# BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT # BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT
DOWNLOAD="https://github.com/libfuse/libfuse/releases/download/fuse-${BPM_PKG_VERSION}/fuse-${BPM_PKG_VERSION}.tar.gz"
FILENAME="${DOWNLOAD##*/}"
# The prepare function is executed in the root of the temp directory
# This function is used for downloading files and putting them into the correct location
prepare() {
wget "$DOWNLOAD"
tar -xvf "$FILENAME" --strip-components=1 -C "$BPM_SOURCE"
cd "$BPM_SOURCE"
# Disable installation of boot script and udev rule
sed -i '/^udev/,$ s/^/#/' util/meson.build
}
# The build function is executed in the source directory # The build function is executed in the source directory
# This function is used to compile the source code # This function is used to compile the source code
build() { build() {
meson setup --prefix=/usr --libdir=/usr/lib --buildtype=release build meson setup --prefix=/usr --sbindir=/usr/bin --libdir=/usr/lib --buildtype=release build
meson compile -C build meson compile -C build
} }
# The package function is executed in the source directory # The package function is executed in the source directory
# This function is used to move the compiled files into the output directory # This function is used to move the compiled files into the output directory
package() { package_fuse3() {
meson install -C build --destdir="$BPM_OUTPUT" meson install -C build --destdir="$BPM_OUTPUT"
# Fix binary permissions # Fix binary permissions
chmod u+s "$BPM_OUTPUT"/usr/bin/fusermount3 chmod u+s "$BPM_OUTPUT"/usr/bin/fusermount3
# Remove bootscript
rm -r "$BPM_OUTPUT"/etc/init.d
# Remove dev directory
rm -r "$BPM_OUTPUT"/dev
# Install package license
install -Dm644 "$BPM_SOURCE"/LICENSE "$BPM_OUTPUT"/usr/share/licenses/fuse3/LICENSE
}
package_fuse-common() {
# Install configuration file # Install configuration file
install -Dm644 "$BPM_SOURCE"/util/fuse.conf "$BPM_OUTPUT"/etc/fuse.conf install -Dm644 "$BPM_SOURCE"/util/fuse.conf "$BPM_OUTPUT"/etc/fuse.conf