Update Alpine build scripts and configuration for Archipelago
- Updated the Alpine aports submodule to the latest commit. - Modified the build script to clone the Alpine aports repository using the stable branch for better reliability. - Refined the Archipelago profile by adding a title and description, and streamlined the list of additional packages. - Adjusted the build date in hardware configuration files for HP ProDesk and merged overlays to reflect the latest build time.
This commit is contained in:
parent
ba1a7bd3f6
commit
bd39de98e2
@ -3,87 +3,22 @@
|
||||
|
||||
profile_archipelago() {
|
||||
profile_standard
|
||||
title="Archipelago Bitcoin Node OS"
|
||||
desc="A Bitcoin and sovereign computing node OS built on Alpine Linux"
|
||||
profile_abbrev="arch"
|
||||
arch="x86_64"
|
||||
|
||||
# Additional packages for Archipelago
|
||||
apks="$apks
|
||||
systemd
|
||||
systemd-openrc
|
||||
podman
|
||||
podman-compose
|
||||
crun
|
||||
fuse-overlayfs
|
||||
slirp4netns
|
||||
networkmanager
|
||||
networkmanager-openrc
|
||||
openssh
|
||||
openssh-openrc
|
||||
nginx
|
||||
nginx-openrc
|
||||
"
|
||||
|
||||
# Kernel flavor
|
||||
# Kernel flavor
|
||||
kernel_flavors="lts"
|
||||
|
||||
# Bootloader
|
||||
boot_addons="grub-efi"
|
||||
|
||||
# Initfs features
|
||||
initfs_features="base squashfs ext4 usb pcmcia scsi mmc nvme virtio"
|
||||
|
||||
# Initfs modules
|
||||
initfs_modules="loop squashfs"
|
||||
}
|
||||
|
||||
# Post-install hook - called after base system is installed
|
||||
profile_apkovl() {
|
||||
local apkovl="$1"
|
||||
local apkroot="$2"
|
||||
|
||||
# Copy overlay files
|
||||
if [ -d "$(dirname "$0")/overlay" ]; then
|
||||
echo "📦 Installing overlay files..."
|
||||
cp -a "$(dirname "$0")/overlay/"* "$apkroot"/
|
||||
fi
|
||||
|
||||
# Install Archipelago APK if available
|
||||
local apk_file="$(dirname "$0")/../../apks/archipelago-backend-"*.apk"
|
||||
if ls $apk_file 1> /dev/null 2>&1; then
|
||||
echo "📦 Installing Archipelago backend APK..."
|
||||
cp $apk_file "$apkroot"/tmp/archipelago-backend.apk
|
||||
fi
|
||||
|
||||
# Create first boot script
|
||||
mkdir -p "$apkroot"/etc/local.d
|
||||
{
|
||||
echo '#!/bin/sh'
|
||||
echo '# First boot installation script for Archipelago'
|
||||
echo ''
|
||||
echo '# Install backend APK if available'
|
||||
echo 'if [ -f /tmp/archipelago-backend.apk ]; then'
|
||||
echo ' apk add --allow-untrusted /tmp/archipelago-backend.apk'
|
||||
echo ' rm /tmp/archipelago-backend.apk'
|
||||
echo 'fi'
|
||||
echo ''
|
||||
echo '# Enable services'
|
||||
echo 'rc-update add archipelago default 2>/dev/null || true'
|
||||
echo 'systemctl enable archipelago 2>/dev/null || true'
|
||||
echo ''
|
||||
echo '# Create archipelago user if needed'
|
||||
echo 'if ! id archipelago >/dev/null 2>&1; then'
|
||||
echo ' adduser -D -s /bin/bash archipelago'
|
||||
echo ' echo "archipelago ALL=(ALL) NOPASSWD: /usr/bin/podman" >>/etc/sudoers'
|
||||
echo 'fi'
|
||||
echo ''
|
||||
echo '# Setup Podman for archipelago user'
|
||||
echo 'mkdir -p /home/archipelago/.config/containers'
|
||||
echo 'chown -R archipelago:archipelago /home/archipelago'
|
||||
echo ''
|
||||
echo '# Create data directories'
|
||||
echo 'mkdir -p /var/lib/archipelago/apps /var/lib/archipelago/secrets /var/lib/archipelago/logs /var/lib/archipelago/backups'
|
||||
echo 'chown -R archipelago:archipelago /var/lib/archipelago'
|
||||
echo ''
|
||||
echo '# Start services'
|
||||
echo 'rc-service archipelago start 2>/dev/null || systemctl start archipelago 2>/dev/null || true'
|
||||
} > "$apkroot"/etc/local.d/archipelago-install.start
|
||||
chmod +x "$apkroot"/etc/local.d/archipelago-install.start
|
||||
kernel_addons="xtables-addons"
|
||||
}
|
||||
|
||||
@ -22,5 +22,5 @@ ports = "4x USB 3.0, 2x USB 2.0"
|
||||
[build]
|
||||
version = "0.1.0"
|
||||
alpine_version = "3.19"
|
||||
build_date = "2026-01-31T19:47:29Z"
|
||||
build_date = "2026-01-31T20:05:12Z"
|
||||
build_type = "iso"
|
||||
|
||||
@ -22,5 +22,5 @@ ports = "4x USB 3.0, 2x USB 2.0"
|
||||
[build]
|
||||
version = "0.1.0"
|
||||
alpine_version = "3.19"
|
||||
build_date = "2026-01-31T19:47:29Z"
|
||||
build_date = "2026-01-31T20:05:12Z"
|
||||
build_type = "iso"
|
||||
|
||||
@ -1 +1 @@
|
||||
Subproject commit 1e77b77379cbda5bccb7727851c19c4f2d6125fe
|
||||
Subproject commit 4315b9b90c1a786d04b2bc7af5649a0c4caf396a
|
||||
@ -45,10 +45,14 @@ fi
|
||||
APORTS_DIR="$SCRIPT_DIR/aports"
|
||||
if [ ! -d "$APORTS_DIR" ]; then
|
||||
echo "📥 Cloning Alpine aports repository..."
|
||||
git clone --depth=1 --branch "v${ALPINE_VERSION}" \
|
||||
git clone --depth=1 --branch "${ALPINE_VERSION}-stable" \
|
||||
https://gitlab.alpinelinux.org/alpine/aports.git "$APORTS_DIR" || {
|
||||
echo "⚠️ Failed to clone aports, trying without branch..."
|
||||
git clone --depth=1 https://gitlab.alpinelinux.org/alpine/aports.git "$APORTS_DIR"
|
||||
echo "⚠️ Failed to clone ${ALPINE_VERSION}-stable, trying 3.19-stable..."
|
||||
git clone --depth=1 --branch "3.19-stable" \
|
||||
https://gitlab.alpinelinux.org/alpine/aports.git "$APORTS_DIR" || {
|
||||
echo "⚠️ Failed to clone 3.19-stable, using master as fallback..."
|
||||
git clone --depth=1 https://gitlab.alpinelinux.org/alpine/aports.git "$APORTS_DIR"
|
||||
}
|
||||
}
|
||||
fi
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user