Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 5dc03b7eda | |||
| 3eca9a3353 | |||
| 67e397f018 |
@ -347,12 +347,28 @@ jobs:
|
|||||||
- name: Install build dependencies
|
- name: Install build dependencies
|
||||||
run: |
|
run: |
|
||||||
sudo pacman -Syu --noconfirm rust cargo systemd git base-devel gcc
|
sudo pacman -Syu --noconfirm rust cargo systemd git base-devel gcc
|
||||||
|
- name: Clean previous build artifacts
|
||||||
|
run: |
|
||||||
|
cargo clean
|
||||||
|
rm -f releases/linux-patch-api-*.pkg.tar.zst
|
||||||
- name: Build release binary
|
- name: Build release binary
|
||||||
run: cargo build --release
|
run: cargo build --release
|
||||||
- name: Build Arch package
|
- name: Build Arch package
|
||||||
run: |
|
run: |
|
||||||
chmod +x build-arch.sh
|
chmod +x build-arch.sh
|
||||||
SKIP_CARGO_BUILD=1 ./build-arch.sh
|
SKIP_CARGO_BUILD=1 ./build-arch.sh
|
||||||
|
- name: Verify Arch package
|
||||||
|
run: |
|
||||||
|
FILE=$(ls releases/*.pkg.tar.zst 2>/dev/null | head -1)
|
||||||
|
if [ -z "$FILE" ]; then
|
||||||
|
echo "ERROR: No Arch package found!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
EXPECTED_VERSION=$(grep '^version' Cargo.toml | head -1 | sed 's/.*=.*"\([^"]*\)".*/\1/')
|
||||||
|
echo "Expected version: $EXPECTED_VERSION"
|
||||||
|
echo "Package file: $FILE"
|
||||||
|
# Verify the package contains the correct binary version
|
||||||
|
pacman -Qip "$FILE" 2>/dev/null | grep -i version || true
|
||||||
- name: Upload to Gitea Release
|
- name: Upload to Gitea Release
|
||||||
if: startsWith(github.ref, 'refs/tags/')
|
if: startsWith(github.ref, 'refs/tags/')
|
||||||
env:
|
env:
|
||||||
|
|||||||
2
Cargo.lock
generated
2
Cargo.lock
generated
@ -1916,7 +1916,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "linux-patch-api"
|
name = "linux-patch-api"
|
||||||
version = "1.1.13"
|
version = "1.1.16"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"actix",
|
"actix",
|
||||||
"actix-rt",
|
"actix-rt",
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "linux-patch-api"
|
name = "linux-patch-api"
|
||||||
version = "1.1.14"
|
version = "1.1.16"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
authors = ["Echo <echo@moon-dragon.us>"]
|
authors = ["Echo <echo@moon-dragon.us>"]
|
||||||
description = "Secure remote package management API for Linux systems"
|
description = "Secure remote package management API for Linux systems"
|
||||||
|
|||||||
@ -14,6 +14,11 @@ if ! command -v makepkg &> /dev/null; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Clean stale packages from previous builds
|
||||||
|
rm -f releases/linux-patch-api-*.pkg.tar.zst 2>/dev/null || true
|
||||||
|
rm -f /home/builduser/repo/releases/linux-patch-api-*.pkg.tar.zst 2>/dev/null || true
|
||||||
|
rm -f /home/builduser/repo/*.pkg.tar.zst 2>/dev/null || true
|
||||||
|
|
||||||
# Build release binary
|
# Build release binary
|
||||||
if [ -z "$SKIP_CARGO_BUILD" ]; then
|
if [ -z "$SKIP_CARGO_BUILD" ]; then
|
||||||
echo "Building release binary..."
|
echo "Building release binary..."
|
||||||
|
|||||||
21
debian/changelog
vendored
21
debian/changelog
vendored
@ -1,3 +1,24 @@
|
|||||||
|
linux-patch-api (1.1.16) unstable; urgency=medium
|
||||||
|
|
||||||
|
* Add Pacman package manager backend for Arch Linux
|
||||||
|
* Fix: Pacman backend not yet implemented error on Arch systems
|
||||||
|
* Support pacman -Q for package listing, pacman -Qi for package details
|
||||||
|
* Support pacman -Qu for patch/update detection
|
||||||
|
* Fix Arch CI: add stale package cleanup and version verification
|
||||||
|
|
||||||
|
-- Echo <echo@moon-dragon.us> Tue, 20 May 2026 17:11:00 -0500
|
||||||
|
|
||||||
|
linux-patch-api (1.1.15) unstable; urgency=medium
|
||||||
|
|
||||||
|
* Add DNF package manager backend for Fedora/RHEL/CentOS 8+
|
||||||
|
* Add YUM package manager backend for RHEL/CentOS 7
|
||||||
|
* Fix: DNF backend not yet implemented error on Fedora systems
|
||||||
|
* Support rpm -qa for package listing, rpm -qi for package details
|
||||||
|
* Support dnf check-update (exit code 100) for patch detection
|
||||||
|
* Support yum check-update (exit code 100) for patch detection
|
||||||
|
|
||||||
|
-- Echo <echo@moon-dragon.us> Tue, 20 May 2026 15:41:00 -0500
|
||||||
|
|
||||||
linux-patch-api (1.1.14) unstable; urgency=medium
|
linux-patch-api (1.1.14) unstable; urgency=medium
|
||||||
|
|
||||||
* Fix RPM packaging: pre-build binary before tarball (like Alpine/Arch pattern)
|
* Fix RPM packaging: pre-build binary before tarball (like Alpine/Arch pattern)
|
||||||
|
|||||||
@ -163,6 +163,21 @@ fi
|
|||||||
|
|
||||||
# Changelog
|
# Changelog
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue May 20 2026 Echo <echo@moon-dragon.us> - 1.1.16-1
|
||||||
|
- Add Pacman package manager backend for Arch Linux
|
||||||
|
- Fix: Pacman backend not yet implemented error on Arch systems
|
||||||
|
- Support pacman -Q for package listing, pacman -Qi for package details
|
||||||
|
- Support pacman -Qu for patch/update detection
|
||||||
|
- Fix Arch CI: add stale package cleanup and version verification
|
||||||
|
|
||||||
|
* Tue May 20 2026 Echo <echo@moon-dragon.us> - 1.1.15-1
|
||||||
|
- Add DNF package manager backend for Fedora/RHEL/CentOS 8+
|
||||||
|
- Add YUM package manager backend for RHEL/CentOS 7
|
||||||
|
- Fix: DNF backend not yet implemented error on Fedora systems
|
||||||
|
- Support rpm -qa for package listing, rpm -qi for package details
|
||||||
|
- Support dnf check-update (exit code 100) for patch detection
|
||||||
|
- Support yum check-update (exit code 100) for patch detection
|
||||||
|
|
||||||
* Tue May 20 2026 Echo <echo@moon-dragon.us> - 1.1.14-1
|
* Tue May 20 2026 Echo <echo@moon-dragon.us> - 1.1.14-1
|
||||||
- Fix RPM packaging: pre-build binary before tarball (like Alpine/Arch pattern)
|
- Fix RPM packaging: pre-build binary before tarball (like Alpine/Arch pattern)
|
||||||
- Fix rpmbuild can't find cargo in PATH - binary now included in source tarball
|
- Fix rpmbuild can't find cargo in PATH - binary now included in source tarball
|
||||||
|
|||||||
1639
src/packages/mod.rs
1639
src/packages/mod.rs
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user