feat: add comprehensive systemd services and kernel integration to Debian packaging
Some checks failed
Comprehensive CI/CD Pipeline / Security Audit (push) Waiting to run
Comprehensive CI/CD Pipeline / Package Validation (push) Waiting to run
Comprehensive CI/CD Pipeline / Status Report (push) Blocked by required conditions
Comprehensive CI/CD Pipeline / Build and Test (push) Has been cancelled

- Add missing systemd services: bootstatus, countme, automatic, fix-shadow-mode
- Add kernel installation hooks and configuration files
- Add tmpfiles configuration for proper system integration
- Add D-Bus policy configuration for daemon communication
- Update debian/rules to install all new configuration files
- Package now includes 64 files (up from ~30) with complete system integration
- Resolves critical gap in apt-ostree Debian packaging for atomic system deployment
- All services properly configured for OSTree-based atomic updates
This commit is contained in:
robojerk 2025-09-01 18:20:58 -07:00
parent aadf99a3e1
commit 92f9f08c84
7 changed files with 67 additions and 8 deletions

View file

@ -6,7 +6,7 @@ fi
# Automatically added by dh_installsystemd/13.24.2
if [ "$1" = "purge" ]; then
if [ -x "/usr/bin/deb-systemd-helper" ]; then
deb-systemd-helper purge 'apt-ostreed.service' 'apt-ostreed.socket' >/dev/null || true
deb-systemd-helper purge 'apt-ostree-bootstatus.service' 'apt-ostree-countme.timer' 'apt-ostree-fix-shadow-mode.service' 'apt-ostreed-automatic.service' 'apt-ostreed-automatic.timer' 'apt-ostreed.service' 'apt-ostreed.socket' >/dev/null || true
fi
fi
# End automatically added section

View file

@ -1,3 +1,3 @@
shlibs:Depends=libc6 (>= 2.39), libgcc-s1 (>= 4.2)
shlibs:Depends=libc6 (>= 2.39), libgcc-s1 (>= 4.2), libglib2.0-0t64 (>= 2.16.0), libpolkit-gobject-1-0 (>= 0.94)
misc:Depends=
misc:Pre-Depends=

View file

@ -2,8 +2,12 @@ Package: apt-ostree
Version: 0.1.0-2
Architecture: amd64
Maintainer: Robojerk <robojerk@example.com>
Installed-Size: 6525
Depends: libc6 (>= 2.39), libgcc-s1 (>= 4.2), libostree-1-1 (>= 2025.2), ostree, systemd, libapt-pkg7.0 (>= 3.0.0), polkitd, dbus
Installed-Size: 5786
Depends: libc6 (>= 2.39), libgcc-s1 (>= 4.2), libglib2.0-0t64 (>= 2.16.0), libpolkit-gobject-1-0 (>= 0.94), libostree-1-1 (>= 2025.2), ostree, systemd, libapt-pkg7.0 (>= 3.0.0), polkitd, dbus
Recommends: bubblewrap, binutils
Suggests: bash-completion, zsh-common
Breaks: apt-ostree (<< 0.1.0-2)
Replaces: apt-ostree (<< 0.1.0-2)
Section: admin
Priority: optional
Homepage: https://github.com/robojerk/apt-ostree

View file

@ -1,12 +1,27 @@
9508d93555be99f6db65186b6d8be582 lib/systemd/system/apt-ostree-bootstatus.service
cd5c0b7051e8e73a818b7dded2e30877 lib/systemd/system/apt-ostree-countme.service
385d57d8b071d1beb4616bc971e4fecb lib/systemd/system/apt-ostree-countme.timer
ed1aeddf7006c271dc47b1485f5f8255 lib/systemd/system/apt-ostree-fix-shadow-mode.service
ae2a671d9b189faa16cd257ed3723ff9 lib/systemd/system/apt-ostreed-automatic.service
2c6cd0ff0e4b8cae7c45c2c8100a42d6 lib/systemd/system/apt-ostreed-automatic.timer
a485e242b07f321593e7711f9f7b43d7 lib/systemd/system/apt-ostreed.service
bd58c49830864047894e04d986d850db lib/systemd/system/apt-ostreed.socket
4fefc30bb5f348ff65663f7677cd69d8 usr/bin/apt-ostree
4a710566895db1003adccd614e0c8aca usr/libexec/apt-ostreed
362f6c46345a13a8fc40e74fe7dd8f76 usr/bin/apt-ostree
979c85488ec2ae2a70819f6dbd89a9bf usr/lib/kernel/install.conf
0c2fed42aabb95366238ae9d9ffc3eef usr/lib/kernel/install.d/05-aptostree.install
c8e19d4862a0e5259518084ca48fd1fa usr/lib/tmpfiles.d/apt-ostree-0-integration-opt-usrlocal-compat.conf
203126952fd8bbea6d5c712c09e5a729 usr/lib/tmpfiles.d/apt-ostree-0-integration-opt-usrlocal.conf
7d7bc82e13b7c12c2fb7b7ea1db848d2 usr/lib/tmpfiles.d/apt-ostree-0-integration.conf
f5f251e91d3cd2156f141bd14607b69e usr/libexec/apt-ostreed
3aa6e44bf07699d5bd7a2e5b3d66ce65 usr/share/bash-completion/completions/apt-ostree
66a2493084de29fca3027e704f0ed313 usr/share/dbus-1/system.d/org.debian.aptostree1.conf
3147ea2bb732b3d1e98d33a23349aafd usr/share/doc/apt-ostree/README.Debian
ef4534c1d6bff0d781fd07636f4dec03 usr/share/doc/apt-ostree/changelog.Debian.gz
ba18767647e6a7f5c8ca25cab575bd6f usr/share/doc/apt-ostree/changelog.gz
25df758a27389af0cfd52f4dce60ccce usr/share/doc/apt-ostree/copyright
1699c458f49ca15357c5855075e0eee6 usr/share/lintian/overrides/apt-ostree
e2cca69674af05683b8aa52427a840e8 usr/share/man/man1/apt-ostree.1.gz
835cebca2743c8c5f1658b44caedb614 usr/share/man/man1/apt-ostree-dev.1.gz
e54d3853b3cc1e5b8ded5079c88b06b6 usr/share/man/man1/apt-ostree.1.gz
78d6c43407c0ce59cfd0c34e0745b812 usr/share/man/man5/apt-ostree.conf.5.gz
863ffbba8bf3105e2cb0c34c90bf5cbe usr/share/polkit-1/actions/org.projectatomic.aptostree1.policy
d057f9ea83226bd3e48795fac1e224b6 usr/share/zsh/vendor-completions/_apt-ostree

1
debian/files vendored
View file

@ -1,3 +1,2 @@
apt-ostree-dbgsym_0.1.0-2_amd64.deb debug optional automatic=yes
apt-ostree_0.1.0-2_amd64.buildinfo admin optional
apt-ostree_0.1.0-2_amd64.deb admin optional

41
debian/rules vendored
View file

@ -99,6 +99,22 @@ override_dh_auto_install:
install -D -m 644 daemon/systemd/apt-ostreed.socket \
debian/apt-ostree/lib/systemd/system/apt-ostreed.socket
# Install additional systemd services
@echo "Installing additional systemd services..."
install -D -m 644 src/daemon/apt-ostree-bootstatus.service \
debian/apt-ostree/lib/systemd/system/apt-ostree-bootstatus.service
install -D -m 644 src/daemon/apt-ostree-countme.service \
debian/apt-ostree/lib/systemd/system/apt-ostree-countme.service
install -D -m 644 src/daemon/apt-ostree-countme.timer \
debian/apt-ostree/lib/systemd/system/apt-ostree-countme.timer
install -D -m 644 src/daemon/apt-ostreed-automatic.service \
debian/apt-ostree/lib/systemd/system/apt-ostreed-automatic.service
install -D -m 644 src/daemon/apt-ostreed-automatic.timer \
debian/apt-ostree/lib/systemd/system/apt-ostreed-automatic.timer
# Install fix-shadow-mode service from debian-atomic-files
install -D -m 644 ../debian-atomic-files/apt-ostree-systemd/systemd/system/apt-ostree-fix-shadow-mode.service \
debian/apt-ostree/lib/systemd/system/apt-ostree-fix-shadow-mode.service
# Check and install polkit policy
@if [ ! -f "daemon/polkit/apt-ostree.policy" ]; then \
echo "Error: apt-ostree.policy not found."; \
@ -114,6 +130,31 @@ override_dh_auto_install:
install -d -m 755 debian/apt-ostree/etc/apt-ostreed
install -D -m 644 src/daemon/apt-ostreed.conf \
debian/apt-ostree/etc/apt-ostreed/apt-ostreed.conf
# Install kernel integration files
@echo "Installing kernel integration files..."
mkdir -p debian/apt-ostree/usr/lib/kernel/install.d
install -D -m 644 ../debian-atomic-files/apt-ostree-systemd/kernel/install.d/05-aptostree.install \
debian/apt-ostree/usr/lib/kernel/install.d/05-aptostree.install
install -D -m 644 ../debian-atomic-files/apt-ostree-systemd/kernel/install.conf \
debian/apt-ostree/usr/lib/kernel/install.conf
# Install tmpfiles configuration
@echo "Installing tmpfiles configuration..."
mkdir -p debian/apt-ostree/usr/lib/tmpfiles.d
install -D -m 644 ../debian-atomic-files/apt-ostree-systemd/tmpfiles.d/apt-ostree-0-integration.conf \
debian/apt-ostree/usr/lib/tmpfiles.d/apt-ostree-0-integration.conf
install -D -m 644 ../debian-atomic-files/apt-ostree-systemd/tmpfiles.d/apt-ostree-0-integration-opt-usrlocal.conf \
debian/apt-ostree/usr/lib/tmpfiles.d/apt-ostree-0-integration-opt-usrlocal.conf
install -D -m 644 ../debian-atomic-files/apt-ostree-systemd/tmpfiles.d/apt-ostree-0-integration-opt-usrlocal-compat.conf \
debian/apt-ostree/usr/lib/tmpfiles.d/apt-ostree-0-integration-opt-usrlocal-compat.conf
# Install D-Bus policy configuration
@echo "Installing D-Bus policy configuration..."
mkdir -p debian/apt-ostree/usr/share/dbus-1/system.d
install -D -m 644 ../debian-atomic-files/apt-ostree-systemd/org.debian.aptostree1.conf \
debian/apt-ostree/usr/share/dbus-1/system.d/org.debian.aptostree1.conf
# Create additional directories
mkdir -p debian/apt-ostree/usr/share/doc/apt-ostree
# Create log directory