Compare commits

...
1 Commits
Author SHA1 Message Date
bart 06bd01807a Add bnhmeijer-ca-certificates package to sources and repository
Build, Test and Publish Debian Packages / Build Packages (push) Failing after 20s
Build, Test and Publish Debian Packages / Test Package Installation (push) Skipped
Build, Test and Publish Debian Packages / Publish to eendoe repository (push) Skipped
2026-10-20 22:44:29 +02:00
13 changed files with 144 additions and 3 deletions
+8 -3
View File
@@ -82,13 +82,18 @@ jobs:
test -d /usr/share/hyperdeck test -d /usr/share/hyperdeck
test -f /etc/hyperdeck/config.json test -f /etc/hyperdeck/config.json
test -f /usr/lib/systemd/system/hyperdeck.service test -f /usr/lib/systemd/system/hyperdeck.service
python3 -m py_compile /usr/share/hyperdeck/main.py - name: Test install bnhmeijer-ca-certificates
echo "eendoe-hyperdeck: OK" run: |
echo "=== Installing bnhmeijer-ca-certificates ==="
sudo apt-get install -y ./staging/bnhmeijer-ca-certificates-*.deb
dpkg -s bnhmeijer-ca-certificates | grep -q "Status: install ok installed"
test -f /usr/local/share/ca-certificates/bnhmeijer/bnhmeijer-root-ca.crt
echo "bnhmeijer-ca-certificates: OK"
- name: Test package uninstall and cleanup - name: Test package uninstall and cleanup
run: | run: |
echo "=== Testing package removal ===" echo "=== Testing package removal ==="
sudo apt-get remove -y eendoe-hyperdeck eendoe-srs eendoe-repository sudo apt-get remove -y eendoe-hyperdeck eendoe-srs eendoe-repository bnhmeijer-ca-certificates
echo "Package removal: OK" echo "Package removal: OK"
publish: publish:
+1
View File
@@ -6,6 +6,7 @@ Debian / APT package repository bronbestanden en build tools voor Eendoe.
- **`sources/`**: Bronbestanden, control definities en packaging scripts voor de te bouwen packages: - **`sources/`**: Bronbestanden, control definities en packaging scripts voor de te bouwen packages:
- `eendoe_repository`: Repository configuratie package (`/etc/apt/sources.list.d/`) - `eendoe_repository`: Repository configuratie package (`/etc/apt/sources.list.d/`)
- `bnhmeijer_ca_certificates`: Bnhmeijer Homelab Root CA package voor `/usr/local/share/ca-certificates/`
- `eendoe_hyperdeck`: Hyperdeck Python service en systemd unit - `eendoe_hyperdeck`: Hyperdeck Python service en systemd unit
- `eendoe_srs`: SRS streaming server package en systemd unit - `eendoe_srs`: SRS streaming server package en systemd unit
- **`staging/`**: Bestaande en nieuw gebouwde `.deb` packages (exclusief Oracle database packages). - **`staging/`**: Bestaande en nieuw gebouwde `.deb` packages (exclusief Oracle database packages).
+11
View File
@@ -645,6 +645,17 @@
</div> </div>
</div> </div>
<div class="pkg-card">
<div>
<div class="pkg-name">bnhmeijer-ca-certificates</div>
<div class="pkg-desc">Bnhmeijer Homelab Root CA certificaat. Voegt de root CA automatisch toe aan de OS trust store zodat interne TLS-certificaten direct vertrouwd worden.</div>
</div>
<div class="pkg-footer">
<span>Versie: 1.0.0</span>
<span>Arch: all</span>
</div>
</div>
<div class="pkg-card"> <div class="pkg-card">
<div> <div>
<div class="pkg-name">eendoe-repository</div> <div class="pkg-name">eendoe-repository</div>
+45
View File
@@ -0,0 +1,45 @@
#!/bin/sh
set -e
CONTROL_FILE=$(ls -1 *.control 2>/dev/null | head -n 1)
if [ -z "$CONTROL_FILE" ]; then
echo "Fout: Geen .control bestand gevonden in $(pwd)" >&2
exit 1
fi
PACKAGE_NAME=$(awk '/^Package: /{print $NF}' "$CONTROL_FILE")
DETECTED_VERSION=$(awk '/^Version: /{print $NF}' "$CONTROL_FILE")
# Version resolution: CLI arg > ENV var > .control version > default 0.1.0
if [ -n "$1" ]; then
VERSION="$1"
elif [ -n "$PACKAGE_VERSION" ]; then
VERSION="$PACKAGE_VERSION"
elif [ -n "$VERSION" ]; then
VERSION="$VERSION"
elif [ "$DETECTED_VERSION" != "{VERSION}" ] && [ -n "$DETECTED_VERSION" ]; then
VERSION="$DETECTED_VERSION"
else
VERSION="0.1.0"
fi
mkdir -p "packaging/$PACKAGE_NAME/DEBIAN"
sed "s/{VERSION}/${VERSION}/" "$CONTROL_FILE" > "packaging/$PACKAGE_NAME/DEBIAN/control"
ARCH=$(awk '/^Architecture: /{print $NF}' "packaging/$PACKAGE_NAME/DEBIAN/control")
ARCH="${ARCH:-all}"
DEB_FILENAME="${PACKAGE_NAME}-${VERSION}_${ARCH}.deb"
echo "Building package: $PACKAGE_NAME ($VERSION) [$ARCH] -> $DEB_FILENAME"
# Ensure correct Debian directory permissions
find "packaging/$PACKAGE_NAME" -type d -exec chmod 755 {} +
find "packaging/$PACKAGE_NAME/DEBIAN" -type f -exec chmod 755 {} + 2>/dev/null || true
# Build debian binary package
dpkg-deb --build "packaging/$PACKAGE_NAME" "$DEB_FILENAME"
# Cleanup temporary control file
rm -f "packaging/$PACKAGE_NAME/DEBIAN/control"
echo "Succesvol gebouwd: $DEB_FILENAME"
@@ -0,0 +1,12 @@
Package: bnhmeijer-ca-certificates
Version: 1.0.0
Section: utils
Priority: optional
Architecture: all
Depends: ca-certificates
Maintainer: Bart Meijer <info@bnhmeijer.nl>
Description: Bnhmeijer Homelab Root CA certificate
Installs the Bnhmeijer Homelab Root CA certificate into the system trust store
(/usr/local/share/ca-certificates/bnhmeijer/) and updates the CA trust list.
Ensures all homelab internal services (*.lan and *.bnhmeijer.nl) signed by
cert-service are automatically trusted by the OS and browsers.
@@ -0,0 +1,12 @@
#!/bin/sh
set -e
case "$1" in
configure|abort-upgrade)
if command -v update-ca-certificates >/dev/null 2>&1; then
echo "Updating system trusted CA certificates..."
update-ca-certificates >/dev/null 2>&1 || true
fi
;;
esac
exit 0
@@ -0,0 +1,12 @@
#!/bin/sh
set -e
case "$1" in
remove|purge|disappear)
if command -v update-ca-certificates >/dev/null 2>&1; then
echo "Removing certificate from system trust store..."
update-ca-certificates --fresh >/dev/null 2>&1 || true
fi
;;
esac
exit 0
@@ -0,0 +1,31 @@
-----BEGIN CERTIFICATE-----
MIIFZzCCA0+gAwIBAgIRALCvASaMQ9DZPQrGDIYTVkswDQYJKoZIhvcNAQELBQAw
TTEiMCAGA1UEAwwZQm5obWVpamVyIEhvbWVsYWIgUm9vdCBDQTEaMBgGA1UECgwR
Qm5obWVpamVyIEhvbWVsYWIxCzAJBgNVBAYTAk5MMB4XDTI2MTAyMDIwMjQ0OVoX
DTM2MTAxNzIwMjQ0OVowTTEiMCAGA1UEAwwZQm5obWVpamVyIEhvbWVsYWIgUm9v
dCBDQTEaMBgGA1UECgwRQm5obWVpamVyIEhvbWVsYWIxCzAJBgNVBAYTAk5MMIIC
IjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAuOKEFT0p9uzcxf5hfPyvjFDd
Fs2GxN3nUNJ+6fzdwR3Bf0yeFYLIHA8C/7hMApt5JGW/ndnYEA7hk0Oj2mbXUo7o
j7zIKke5OALBO3SSvJSywwBOsaZ95sSTfkYvmCOLojH/EUmLA6+MmUtSTWMIm1do
ki2H8BEdXzeE4XtI/Fw8v1kRX0AYA3l4+AB8ejVSHIuhcWgbrwGKkRZFBEAJMXEp
IKkYiYPxAZ4AUy4FJHVJwpdK9JLc6ORQS4kpBWJRGROwSePs2hfMn3tSg3xfyOK/
c8bOyGTx9O1tjWcfN2cPbGhJ5Uo9j5uyZnAvdkR0mniELB6/G6jM4UzKfmVvQEMt
jH76vowFzJmDiKWRJgmq1rEEdSVPDowateLEac5YkGIc9e+/1G3yKQH+eqcHbGvQ
ORnQF03rB5jNWUHdF5WSbMHPszOndMHnUYMrHC025ApIKXcO8R1/ld0DsMRGY4sS
wQfRQW5oVOOxQkPMk2LcC4v9Gz/ox9DuAhBXpQUpoXkZ/Zdd2zI2eKLnKuYqkiUv
UOUJAUapyztQCCWpxeU9gxTBOrN1g5sSVy3p5lrSWNMQUNXNyOr3ylj3XVQFZxtR
WM64tHb8M4UpHYvLG7Bw7m59BgwgEJP686ShnQg/CpE0XpILU+GH8FPL2k8Zl9RB
H3jJjLrGEjexiv0KdDcCAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8B
Af8EBAMCAQYwHQYDVR0OBBYEFH1zTZdKh8Q63s5JV5UwrfHB6rAYMA0GCSqGSIb3
DQEBCwUAA4ICAQBQmMk725RF2qzN5Me+MuY/N0GdJGNauZ9KvzSybyCIrXfycmid
vwU+g1j3nFwVs2FSH3cU6s06jH1Lr0soz74cEmU/Zn94G3Yp8nMh3Nz+qwmJenD1
ffF9bTgk2b/jhSRRNU4nDm0HvdfUGLTxgmtAkI45dAmmtynGhKhaFqyxbosxz/Pr
Cqzo6SSrKYx7bHj8Wk2wdB6hDY5UbzOvBVWq8JqZCJiSLNjZNgD64YFUtbBTK3kD
CLJhesuf6Qg8UBUL34NqIHfTC5J6G2AlFOLBi6DKBc7rnTlHCCesUUGZqxQy58nC
MSlRLKRg3tqQq1Hy839Vb/llmpQDujWDaQ7ptN1bn2ATzdruc+PW2pPv6Ffs3lS7
o+69mk5/NDhkqNCM1EYK2hDEkO1jdiyUgmXi0i7ni7Qea3HSK2WYAtHPTIDHAGCz
O2Lvfbeq70rfGIf2FJRItIqmS8OjOggGp++ED2d49hvw3Tfxnw108SqYFph2QN/d
rt8kvcXkMNGQXE7eIqyY5sgI3tJuYpy2r7BWsg0EFwYVphZ0o/SFZTleSTKSxGpr
NLXKcqxyEYCmZfZLiWRcvTFOkzCqnLQZGJMMdk3Nkq6IwAaZiyRtW6QBHLaIHX/v
UX0C3FD+bSuRfZbZGcTmdHVLKAdCOfMp0w/oW5X4vURcjoGJNbd8z0UU0A==
-----END CERTIFICATE-----
+4
View File
@@ -33,6 +33,10 @@ DEB_FILENAME="${PACKAGE_NAME}-${VERSION}_${ARCH}.deb"
echo "Building package: $PACKAGE_NAME ($VERSION) [$ARCH] -> $DEB_FILENAME" echo "Building package: $PACKAGE_NAME ($VERSION) [$ARCH] -> $DEB_FILENAME"
# Ensure correct Debian directory permissions
find "packaging/$PACKAGE_NAME" -type d -exec chmod 755 {} +
find "packaging/$PACKAGE_NAME/DEBIAN" -type f -exec chmod 755 {} + 2>/dev/null || true
# Build debian binary package # Build debian binary package
dpkg-deb --build "packaging/$PACKAGE_NAME" "$DEB_FILENAME" dpkg-deb --build "packaging/$PACKAGE_NAME" "$DEB_FILENAME"
+4
View File
@@ -33,6 +33,10 @@ DEB_FILENAME="${PACKAGE_NAME}-${VERSION}_${ARCH}.deb"
echo "Building package: $PACKAGE_NAME ($VERSION) [$ARCH] -> $DEB_FILENAME" echo "Building package: $PACKAGE_NAME ($VERSION) [$ARCH] -> $DEB_FILENAME"
# Ensure correct Debian directory permissions
find "packaging/$PACKAGE_NAME" -type d -exec chmod 755 {} +
find "packaging/$PACKAGE_NAME/DEBIAN" -type f -exec chmod 755 {} + 2>/dev/null || true
# Build debian binary package # Build debian binary package
dpkg-deb --build "packaging/$PACKAGE_NAME" "$DEB_FILENAME" dpkg-deb --build "packaging/$PACKAGE_NAME" "$DEB_FILENAME"
+4
View File
@@ -33,6 +33,10 @@ DEB_FILENAME="${PACKAGE_NAME}-${VERSION}_${ARCH}.deb"
echo "Building package: $PACKAGE_NAME ($VERSION) [$ARCH] -> $DEB_FILENAME" echo "Building package: $PACKAGE_NAME ($VERSION) [$ARCH] -> $DEB_FILENAME"
# Ensure correct Debian directory permissions
find "packaging/$PACKAGE_NAME" -type d -exec chmod 755 {} +
find "packaging/$PACKAGE_NAME/DEBIAN" -type f -exec chmod 755 {} + 2>/dev/null || true
# Build debian binary package # Build debian binary package
dpkg-deb --build "packaging/$PACKAGE_NAME" "$DEB_FILENAME" dpkg-deb --build "packaging/$PACKAGE_NAME" "$DEB_FILENAME"
Binary file not shown.