From eb4b97c95cb34652ea86b4dd230491cad532d800 Mon Sep 17 00:00:00 2001 From: Ville Takio <93599126+flatstik@users.noreply.github.com> Date: Thu, 22 Oct 2026 00:40:28 +0000 Subject: [PATCH] OpenWrt: drop the bash dependency (#1932) mount.veracrypt is a POSIX shell script since #1895 and runs with BusyBox ash, so the OpenWrt recipe no longer needs bash: drop it from the package dependencies, the minimal SDK config, the feeds and runtime packages the build script prepares, the QEMU test's package list, and the README. Signed-off-by: Ville Takio --- src/Build/Packaging/openwrt/README.md | 7 +++---- src/Build/Packaging/openwrt/configs/x86_64-minimal.config | 1 - .../Packaging/openwrt/package/utils/veracrypt/Makefile.in | 2 +- src/Build/build_veracrypt_openwrt.sh | 3 +-- src/Build/test_veracrypt_openwrt_qemu.py | 1 - 5 files changed, 5 insertions(+), 9 deletions(-) diff --git a/src/Build/Packaging/openwrt/README.md b/src/Build/Packaging/openwrt/README.md index ac28edd4..6a9c2581 100644 --- a/src/Build/Packaging/openwrt/README.md +++ b/src/Build/Packaging/openwrt/README.md @@ -24,8 +24,8 @@ The package installs only: - `/sbin/mount.veracrypt` - `/usr/share/licenses/veracrypt/License.txt` -`mount.veracrypt` uses a Bash shebang, so the OpenWrt package declares `bash` -as a runtime dependency. +`mount.veracrypt` is a POSIX shell script and runs with BusyBox `ash`, so the +package does not depend on `bash`. ## Build @@ -39,7 +39,7 @@ The script downloads and verifies the OpenWrt SDK against a pinned SHA-256 for the supported release/target, downloads and verifies wxWidgets 3.2.10, installs the required OpenWrt feeds, renders `package/utils/veracrypt/Makefile` inside the SDK, builds the `.ipk`, and -also builds the local userland `bash`, `fuse3`, `util-linux`, and `lvm2` feed +also builds the local userland `fuse3`, `util-linux`, and `lvm2` feed packages used by the QEMU runtime test. Kernel modules for the stock OpenWrt image are resolved by the test from the official OpenWrt kmod feed for the selected release and target. @@ -136,7 +136,6 @@ OpenWrt package symbols: - `libstdcpp` - `libfuse3` -- `bash` OpenWrt's FUSE3 recipe defines `Package/libfuse3` with ABI version `3`, so the binary IPK and package-index metadata are emitted as `libfuse3-3` while still diff --git a/src/Build/Packaging/openwrt/configs/x86_64-minimal.config b/src/Build/Packaging/openwrt/configs/x86_64-minimal.config index 0b8e74b2..c2ef7590 100644 --- a/src/Build/Packaging/openwrt/configs/x86_64-minimal.config +++ b/src/Build/Packaging/openwrt/configs/x86_64-minimal.config @@ -10,7 +10,6 @@ CONFIG_TARGET_DEVICE_x86_64_DEVICE_generic=y # CONFIG_DEVEL is not set CONFIG_PACKAGE_veracrypt=m -CONFIG_PACKAGE_bash=m CONFIG_PACKAGE_libfuse3=m CONFIG_PACKAGE_fuse3-utils=m CONFIG_PACKAGE_kmod-fuse=m diff --git a/src/Build/Packaging/openwrt/package/utils/veracrypt/Makefile.in b/src/Build/Packaging/openwrt/package/utils/veracrypt/Makefile.in index a914b338..b5e7f67d 100644 --- a/src/Build/Packaging/openwrt/package/utils/veracrypt/Makefile.in +++ b/src/Build/Packaging/openwrt/package/utils/veracrypt/Makefile.in @@ -25,7 +25,7 @@ define Package/veracrypt SUBMENU:=Filesystem TITLE:=VeraCrypt console URL:=https://www.veracrypt.fr/ - DEPENDS:=+libstdcpp +libfuse3 +bash + DEPENDS:=+libstdcpp +libfuse3 endef define Package/veracrypt/description diff --git a/src/Build/build_veracrypt_openwrt.sh b/src/Build/build_veracrypt_openwrt.sh index 1951f5b2..de8c1a77 100755 --- a/src/Build/build_veracrypt_openwrt.sh +++ b/src/Build/build_veracrypt_openwrt.sh @@ -310,7 +310,7 @@ configure_sdk() { rm -rf feeds/base feeds/packages PATH="$HOST_TOOLS/bin:$PATH" ./scripts/feeds update packages base fi - PATH="$HOST_TOOLS/bin:$PATH" ./scripts/feeds install fuse3 lvm2 util-linux pcsc-lite bash + PATH="$HOST_TOOLS/bin:$PATH" ./scripts/feeds install fuse3 lvm2 util-linux pcsc-lite PATH="$HOST_TOOLS/bin:$PATH" make defconfig ) } @@ -330,7 +330,6 @@ build_runtime_packages() { ( cd "$SDK_DIR" for target in \ - package/feeds/packages/bash/compile \ package/feeds/packages/fuse3/compile \ package/feeds/base/util-linux/compile \ package/feeds/packages/lvm2/compile diff --git a/src/Build/test_veracrypt_openwrt_qemu.py b/src/Build/test_veracrypt_openwrt_qemu.py index 8ba0e466..11ec0eba 100755 --- a/src/Build/test_veracrypt_openwrt_qemu.py +++ b/src/Build/test_veracrypt_openwrt_qemu.py @@ -43,7 +43,6 @@ PREINSTALLED_PACKAGES = { "opkg", } DEFAULT_RUNTIME_PACKAGES = [ - "bash", # OpenWrt emits the FUSE3 library IPK with its ABI suffix; it still # Provides: libfuse3. "libfuse3-3",