diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 2cc282b..56e10ce 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -315,6 +315,9 @@ jobs: apk add --no-cache alpine-sdk rust cargo openssl openssl-dev elogind-dev musl-dev abuild gcc - name: Build release binary run: cargo build --release --target x86_64-unknown-linux-musl + - name: Clean stale Alpine packages + run: | + rm -f releases/linux-patch-api-*.apk 2>/dev/null || true - name: Build Alpine package run: | chmod +x build-alpine.sh diff --git a/.gitignore b/.gitignore index ea8c4bf..fd9988e 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /target +/releases/ diff --git a/build-alpine.sh b/build-alpine.sh index f5b1168..46adb63 100644 --- a/build-alpine.sh +++ b/build-alpine.sh @@ -8,6 +8,10 @@ set -e echo "=== Linux Patch API - Alpine Build Script ===" echo "" +# Clean stale packages from previous builds +rm -f releases/linux-patch-api-*.apk 2>/dev/null || true +rm -f /home/builduser/packages/home/x86_64/linux-patch-api-*.apk 2>/dev/null || true + # Source cargo environment (for rustup-installed toolchain in CI) if [ -f "$HOME/.cargo/env" ]; then . "$HOME/.cargo/env" diff --git a/releases/linux-patch-api_1.0.0-1_amd64.buildinfo b/releases/linux-patch-api_1.0.0-1_amd64.buildinfo deleted file mode 100644 index 90c48d2..0000000 --- a/releases/linux-patch-api_1.0.0-1_amd64.buildinfo +++ /dev/null @@ -1,209 +0,0 @@ -Format: 1.0 -Source: linux-patch-api -Binary: linux-patch-api -Architecture: amd64 -Version: 1.0.0-1 -Checksums-Md5: - a64eb068fd021dd3a559bf1429960165 2624992 linux-patch-api_1.0.0-1_amd64.deb -Checksums-Sha1: - 29bfe7427b42f05b4c0fd886d02b2550289df356 2624992 linux-patch-api_1.0.0-1_amd64.deb -Checksums-Sha256: - 353b49ef3f83c0bf2c556bcfc1b3e8bb46b8e629a34659d4d5b63ac25c5a80c0 2624992 linux-patch-api_1.0.0-1_amd64.deb -Build-Origin: Kali -Build-Architecture: amd64 -Build-Date: Fri, 10 Apr 2026 01:50:29 +0000 -Build-Tainted-By: - usr-local-has-programs -Installed-Build-Depends: - autoconf (= 2.72-6), - automake (= 1:1.18.1-4), - autopoint (= 0.23.2-2), - autotools-dev (= 20240727.1), - base-files (= 1:2026.1.0), - base-passwd (= 3.6.8), - bash (= 5.3-1), - binutils (= 2.45.50.20251209-1+b1), - binutils-common (= 2.45.50.20251209-1+b1), - binutils-x86-64-linux-gnu (= 2.45.50.20251209-1+b1), - bsdextrautils (= 2.41.3-4), - build-essential (= 12.12), - bzip2 (= 1.0.8-6+b1), - cargo (= 1.92.0+dfsg1-2), - coreutils (= 9.7-3), - cpp (= 4:15.2.0-4), - cpp-15 (= 15.2.0-12), - cpp-15-x86-64-linux-gnu (= 15.2.0-12), - cpp-x86-64-linux-gnu (= 4:15.2.0-4), - dash (= 0.5.12-12), - debconf (= 1.5.91), - debhelper (= 13.31), - debianutils (= 5.23.2), - dh-autoreconf (= 22), - dh-strip-nondeterminism (= 1.15.0-1), - diffutils (= 1:3.12-1), - dpkg (= 1.23.3+kali1), - dpkg-dev (= 1.23.3+kali1), - dwz (= 0.16-4), - file (= 1:5.46-5+b1), - findutils (= 4.10.0-3), - g++ (= 4:15.2.0-4), - g++-15 (= 15.2.0-12), - g++-15-x86-64-linux-gnu (= 15.2.0-12), - g++-x86-64-linux-gnu (= 4:15.2.0-4), - gcc (= 4:15.2.0-4), - gcc-15 (= 15.2.0-12), - gcc-15-base (= 15.2.0-12), - gcc-15-x86-64-linux-gnu (= 15.2.0-12), - gcc-x86-64-linux-gnu (= 4:15.2.0-4), - gettext (= 0.23.2-2), - gettext-base (= 0.23.2-2), - grep (= 3.12-1), - groff-base (= 1.23.0-10), - gzip (= 1.13-1), - hostname (= 3.25), - init-system-helpers (= 1.69+kali1), - intltool-debian (= 0.35.0+20060710.6), - libacl1 (= 2.3.2-2+b2), - libarchive-zip-perl (= 1.68-1), - libasan8 (= 15.2.0-12), - libatomic1 (= 15.2.0-12), - libattr1 (= 1:2.5.2-3+b1), - libaudit-common (= 1:4.1.2-1), - libaudit1 (= 1:4.1.2-1+b1), - libbinutils (= 2.45.50.20251209-1+b1), - libblkid1 (= 2.41.3-4), - libbrotli1 (= 1.1.0-2+b9), - libbsd0 (= 0.12.2-2+b1), - libbz2-1.0 (= 1.0.8-6+b1), - libc-bin (= 2.42-5), - libc-dev-bin (= 2.42-5), - libc-gconv-modules-extra (= 2.42-5), - libc6 (= 2.42-5), - libc6-dev (= 2.42-5), - libcap-ng0 (= 0.8.5-4+b2), - libcap2 (= 1:2.75-10+b5), - libcc1-0 (= 15.2.0-12), - libcom-err2 (= 1.47.2-3+b8), - libcrypt-dev (= 1:4.5.1-1), - libcrypt1 (= 1:4.5.1-1), - libctf-nobfd0 (= 2.45.50.20251209-1+b1), - libctf0 (= 2.45.50.20251209-1+b1), - libcurl4t64 (= 8.18.0-2), - libdb5.3t64 (= 5.3.28+dfsg2-11), - libdebconfclient0 (= 0.282+b2), - libdebhelper-perl (= 13.31), - libdpkg-perl (= 1.23.3+kali1), - libedit2 (= 3.1-20251016-1), - libelf1t64 (= 0.194-4), - libffi8 (= 3.5.2-3+b1), - libfile-stripnondeterminism-perl (= 1.15.0-1), - libgcc-15-dev (= 15.2.0-12), - libgcc-s1 (= 15.2.0-12), - libgdbm-compat4t64 (= 1.26-1+b1), - libgdbm6t64 (= 1.26-1+b1), - libgit2-1.9 (= 1.9.2+ds-6), - libgmp10 (= 2:6.3.0+dfsg-5+b1), - libgnutls30t64 (= 3.8.11-3), - libgomp1 (= 15.2.0-12), - libgprofng0 (= 2.45.50.20251209-1+b1), - libgssapi-krb5-2 (= 1.22.1-2), - libhogweed6t64 (= 3.10.2-1), - libhwasan0 (= 15.2.0-12), - libidn2-0 (= 2.3.8-4+b1), - libisl23 (= 0.27-1+b1), - libitm1 (= 15.2.0-12), - libjansson4 (= 2.14-2+b4), - libk5crypto3 (= 1.22.1-2), - libkeyutils1 (= 1.6.3-6+b1), - libkrb5-3 (= 1.22.1-2), - libkrb5support0 (= 1.22.1-2), - libldap2 (= 2.6.10+dfsg-1+b1), - libllhttp9.3 (= 9.3.3~really9.3.0+~cs12.11.8-3), - libllvm21 (= 1:21.1.8-1+b1), - liblsan0 (= 15.2.0-12), - liblzma5 (= 5.8.2-2), - libmagic-mgc (= 1:5.46-5+b1), - libmagic1t64 (= 1:5.46-5+b1), - libmbedcrypto16 (= 3.6.5-0.1), - libmbedtls21 (= 3.6.5-0.1), - libmbedx509-7 (= 3.6.5-0.1), - libmd0 (= 1.1.0-2+b2), - libmount1 (= 2.41.3-4), - libmpc3 (= 1.3.1-2+b1), - libmpfr6 (= 4.2.2-2+b1), - libnettle8t64 (= 3.10.2-1), - libnghttp2-14 (= 1.64.0-1.1+b1), - libnghttp3-9 (= 1.12.0-1), - libngtcp2-16 (= 1.16.0-1), - libngtcp2-crypto-ossl0 (= 1.16.0-1), - libp11-kit0 (= 0.25.10-1+b1), - libpam-modules (= 1.7.0-5+b1), - libpam-modules-bin (= 1.7.0-5+b1), - libpam-runtime (= 1.7.0-5), - libpam0g (= 1.7.0-5+b1), - libpcre2-8-0 (= 10.46-1+b1), - libperl5.40 (= 5.40.1-7), - libpipeline1 (= 1.5.8-2), - libpkgconf7 (= 2.5.1-4), - libpsl5t64 (= 0.21.2-1.1+b2), - libquadmath0 (= 15.2.0-12), - librtmp1 (= 2.4+20151223.gitfa8646d.1-3+b1), - libsasl2-2 (= 2.1.28+dfsg1-10), - libsasl2-modules-db (= 2.1.28+dfsg1-10), - libseccomp2 (= 2.6.0-2+b1), - libselinux1 (= 3.9-4+b1), - libsframe2 (= 2.45.50.20251209-1+b1), - libsmartcols1 (= 2.41.3-4), - libsqlite3-0 (= 3.46.1-9), - libssh2-1t64 (= 1.11.1-1+b1), - libssl3t64 (= 3.5.4-1+b1), - libstd-rust-1.92 (= 1.92.0+dfsg1-2), - libstd-rust-dev (= 1.92.0+dfsg1-2), - libstdc++-15-dev (= 15.2.0-12), - libstdc++6 (= 15.2.0-12), - libsystemd-dev (= 259.1-1), - libsystemd0 (= 259.1-1), - libtasn1-6 (= 4.21.0-2), - libtinfo6 (= 6.6+20251231-1), - libtool (= 2.5.4-10), - libtsan2 (= 15.2.0-12), - libubsan1 (= 15.2.0-12), - libuchardet0 (= 0.0.8-2+b1), - libudev1 (= 259-1), - libunistring5 (= 1.3-2+b1), - libuuid1 (= 2.41.3-4), - libxml2-16 (= 2.15.1+dfsg-2+b1), - libz3-4 (= 4.13.3-1+b1), - libzstd1 (= 1.5.7+dfsg-3+b1), - linux-libc-dev (= 6.18.5-1kali1), - m4 (= 1.4.21-1), - make (= 4.4.1-3), - man-db (= 2.13.1-1), - mawk (= 1.3.4.20250131-2), - ncurses-base (= 6.6+20251231-1), - ncurses-bin (= 6.6+20251231-1), - openssl-provider-legacy (= 3.5.4-1+b1), - patch (= 2.8-2), - perl (= 5.40.1-7), - perl-base (= 5.40.1-7), - perl-modules-5.40 (= 5.40.1-7), - pkg-config (= 2.5.1-4), - pkgconf (= 2.5.1-4), - pkgconf-bin (= 2.5.1-4), - po-debconf (= 1.0.22), - rpcsvc-proto (= 1.4.3-1), - rustc (= 1.92.0+dfsg1-2), - sed (= 4.9-2), - sensible-utils (= 0.0.26), - sysvinit-utils (= 3.15-6), - tar (= 1.35+dfsg-3.1), - util-linux (= 2.41.3-4), - xz-utils (= 5.8.2-2), - zlib1g (= 1:1.3.dfsg+really1.3.1-1+b2) -Environment: - DEB_BUILD_OPTIONS="parallel=12" - LANG="en_US.UTF-8" - LANGUAGE="en_US:en" - LC_ALL="en_US.UTF-8" - SOURCE_DATE_EPOCH="1775779032" - TZ="UTC" diff --git a/releases/linux-patch-api_1.0.0-1_amd64.changes b/releases/linux-patch-api_1.0.0-1_amd64.changes deleted file mode 100644 index a80c69e..0000000 --- a/releases/linux-patch-api_1.0.0-1_amd64.changes +++ /dev/null @@ -1,31 +0,0 @@ -Format: 1.8 -Date: Thu, 09 Apr 2026 18:57:12 -0500 -Source: linux-patch-api -Binary: linux-patch-api -Architecture: amd64 -Version: 1.0.0-1 -Distribution: stable -Urgency: medium -Maintainer: Echo -Changed-By: Echo -Description: - linux-patch-api - Secure remote package management API for Linux systems -Changes: - linux-patch-api (1.0.0-1) stable; urgency=medium - . - * Initial production release - * Secure mTLS-authenticated REST API for remote package management - * 15 API endpoints for package install/remove, patch application, system management - * Asynchronous job processing with WebSocket status streaming - * IP whitelist enforcement and comprehensive audit logging - * Systemd integration with security hardening - * Supports Debian 11/12, Ubuntu 20.04/22.04/24.04 -Checksums-Sha1: - 6eacada3e35f2b5d4e76ca6d0dfa2d12588e235a 6044 linux-patch-api_1.0.0-1_amd64.buildinfo - 29bfe7427b42f05b4c0fd886d02b2550289df356 2624992 linux-patch-api_1.0.0-1_amd64.deb -Checksums-Sha256: - 1d7c683fa9bb147f11cc4b8dc949b34d2bd7bdef0e2ba0f04e66e74bab955acc 6044 linux-patch-api_1.0.0-1_amd64.buildinfo - 353b49ef3f83c0bf2c556bcfc1b3e8bb46b8e629a34659d4d5b63ac25c5a80c0 2624992 linux-patch-api_1.0.0-1_amd64.deb -Files: - ab758ad6130467303e536c3aacc901a1 6044 admin optional linux-patch-api_1.0.0-1_amd64.buildinfo - a64eb068fd021dd3a559bf1429960165 2624992 admin optional linux-patch-api_1.0.0-1_amd64.deb diff --git a/releases/linux-patch-api_1.0.0-1_amd64.deb b/releases/linux-patch-api_1.0.0-1_amd64.deb deleted file mode 100644 index f5d3575..0000000 Binary files a/releases/linux-patch-api_1.0.0-1_amd64.deb and /dev/null differ