Build browser FUSE helper without OpenSSL
ober
f8d50da1a2ab66ed1c84893f125167da7495e69e
--- a/Dockerfile.qt +++ b/Dockerfile.qt @@ -31,9 +31,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates -e "s#https?://ports\\.ubuntu\\.com/ubuntu-ports/?#https://snapshot.ubuntu.com/ubuntu/${APT_SNAPSHOT}/#g" \ /etc/apt/sources.list.d/ubuntu.sources && \ rm -rf /var/lib/apt/lists/* && \ - apt-get update && \ - ssl_version="$(apt-cache policy libssl-dev | awk '/Candidate:/ { print $2 }')" && \ - apt-get install -y --no-install-recommends --allow-downgrades \ + apt-get update && apt-get install -y --no-install-recommends \ bash \ ca-certificates \ cmake \ @@ -44,11 +42,8 @@ RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates gzip \ libgl1-mesa-dev \ libncurses-dev \ - libssl3t64="$ssl_version" \ - libssl-dev="$ssl_version" \ libudev-dev \ make \ - openssl="$ssl_version" \ patchelf \ pkg-config \ qt6-base-dev \ --- a/Makefile +++ b/Makefile @@ -60,12 +60,11 @@ SOEXT := $(if $(filter Darwin,$(shell uname -s)),dylib,so) FUSE_SHARED_FLAG := $(if $(filter Darwin,$(shell uname -s)),-dynamiclib,-shared) FUSE_SHIM := libjerboa_fuse_mount.so ifeq ($(shell uname -s),Darwin) -FUSE_OPENSSL_PREFIX ?= $(shell brew --prefix openssl@4 2>/dev/null || brew --prefix openssl@3 2>/dev/null || echo /opt/homebrew/opt/openssl@4) -FUSE_OPENSSL_CFLAGS ?= -I$(FUSE_OPENSSL_PREFIX)/include -FUSE_OPENSSL_LIBS ?= -L$(FUSE_OPENSSL_PREFIX)/lib -lcrypto +FUSE_SHIM_CFLAGS ?= -DJERBOA_FUSE_NO_OPENSSL +FUSE_SHIM_LIBS ?= else -FUSE_OPENSSL_CFLAGS ?= $(shell pkg-config --cflags openssl 2>/dev/null) -FUSE_OPENSSL_LIBS ?= $(shell pkg-config --libs openssl 2>/dev/null || printf '%s\n' -lcrypto) +FUSE_SHIM_CFLAGS ?= -DJERBOA_FUSE_NO_OPENSSL +FUSE_SHIM_LIBS ?= endif YUBIKEY_NATIVE_SHARED := $(JERBOA_YUBIKEY_DIR)/yubikey-native/target/release/libyubikey_native.$(SOEXT) # `make binary` links the static archive from a temp dir and leaves no shared @@ -89,9 +88,9 @@ lib/libjerboa_native.$(SOEXT): FORCE | check-jerbuild $(FUSE_SHIM): vendor-fuse $(JERBOA_FUSE_DIR)/src/mount_helper.c support/browser_secure_fs.c support/browser_secure_fs.h $(CC) $(FUSE_SHARED_FLAG) -fPIC -O2 -Wall -Wextra -Werror \ - $(FUSE_OPENSSL_CFLAGS) -I support -o $@ \ + $(FUSE_SHIM_CFLAGS) -I support -o $@ \ $(JERBOA_FUSE_DIR)/src/mount_helper.c support/browser_secure_fs.c \ - $(FUSE_OPENSSL_LIBS) + $(FUSE_SHIM_LIBS) vendor-fuse: check-jerbuild sh support/ensure-vendor.sh jerboa-fuse "$(JERBOA_FUSE_URL)" \ --- a/packaging/linux/build-tarball.sh +++ b/packaging/linux/build-tarball.sh @@ -219,7 +219,6 @@ EOF \) 2>/dev/null ) - copy_named_library libcrypto.so.3 copy_ldd_closure patch_rpath "$STAGE/bin/jerboa-browser.bin" '$ORIGIN/../lib'