From 22a316469d3f2dd1a01df704093c8a67f47d3c6e Mon Sep 17 00:00:00 2001 From: robojerk Date: Sun, 10 Aug 2025 13:15:33 -0700 Subject: [PATCH] Fix ZSTD linking issue in Debian packaging - Add libzstd-dev to Build-Depends in debian/control - Add libzstd1 to runtime Depends - Remove complex ZSTD verification from workflow - Let Debian build system handle ZSTD dependencies properly - Simplify workflow by removing unnecessary complexity --- .forgejo/workflows/build-artifacts.yml | 20 -------------------- debian/control | 4 ++-- 2 files changed, 2 insertions(+), 22 deletions(-) diff --git a/.forgejo/workflows/build-artifacts.yml b/.forgejo/workflows/build-artifacts.yml index 0fc078f..8df02f0 100644 --- a/.forgejo/workflows/build-artifacts.yml +++ b/.forgejo/workflows/build-artifacts.yml @@ -66,21 +66,6 @@ jobs: # Install additional packages for memory management and stability apt install -y procps htop iotop sysstat numactl libnuma-dev - # Verify ZSTD library availability and linking - echo "=== ZSTD LIBRARY VERIFICATION ===" - echo "Checking ZSTD packages:" - dpkg -l | grep zstd || echo "No ZSTD packages found" - echo "Checking ZSTD library files:" - find /usr/lib -name "*zstd*" 2>/dev/null || echo "No ZSTD library files found" - echo "Checking pkg-config for ZSTD:" - pkg-config --exists libzstd && echo "✅ libzstd found via pkg-config" || echo "❌ libzstd not found via pkg-config" - echo "ZSTD library version:" - pkg-config --modversion libzstd 2>/dev/null || echo "Could not get ZSTD version" - echo "ZSTD linking flags:" - pkg-config --libs libzstd 2>/dev/null || echo "Could not get ZSTD linking flags" - echo "ZSTD cflags:" - pkg-config --cflags libzstd 2>/dev/null || echo "Could not get ZSTD cflags" - # Install required Rust components rustup component add clippy rustfmt rust-src rust-analysis @@ -219,11 +204,6 @@ jobs: export CARGO_INCREMENTAL=0 export CARGO_NET_RETRY=3 - # Set ZSTD library linking - export PKG_CONFIG_PATH="/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH" - export LIBRARY_PATH="/usr/lib/x86_64-linux-gnu:$LIBRARY_PATH" - export LD_LIBRARY_PATH="/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH" - # Set memory limits for compilation ulimit -v 3145728 # 3GB virtual memory limit diff --git a/debian/control b/debian/control index 447dbce..d9e50d9 100644 --- a/debian/control +++ b/debian/control @@ -2,7 +2,7 @@ Source: deb-bootupd Section: admin Priority: optional Maintainer: Debian Bootupd Team -Build-Depends: debhelper-compat (= 13), dh-cargo, rustc, cargo, pkg-config, libssl-dev, libsystemd-dev +Build-Depends: debhelper-compat (= 13), dh-cargo, rustc, cargo, pkg-config, libssl-dev, libsystemd-dev, libzstd-dev Standards-Version: 4.6.2 Homepage: https://git.raines.xyz/robojerk/deb-bootupd Vcs-Git: https://git.raines.xyz/robojerk/deb-bootupd.git @@ -10,7 +10,7 @@ Vcs-Browser: https://git.raines.xyz/robojerk/deb-bootupd Package: deb-bootupd Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends}, efibootmgr, grub-common +Depends: ${shlibs:Depends}, ${misc:Depends}, efibootmgr, grub-common, libzstd1 Recommends: ostree Description: Debian-compatible bootloader updater for immutable systems deb-bootupd is a sophisticated, production-ready Rust-based CLI tool that