init
This commit is contained in:
57
image/configure.sh
Executable file
57
image/configure.sh
Executable file
@@ -0,0 +1,57 @@
|
||||
#!/bin/sh
|
||||
# configure.sh — runs inside chroot after base install and overlay copy.
|
||||
# Invoked via alpine-make-vm-image --script-chroot.
|
||||
set -eu
|
||||
|
||||
_step_counter=0
|
||||
step() {
|
||||
_step_counter=$(( _step_counter + 1 ))
|
||||
printf '\n\033[1;36m%d) %s\033[0m\n' $_step_counter "$@" >&2
|
||||
}
|
||||
|
||||
uname -a
|
||||
|
||||
step 'Set timezone to UTC'
|
||||
setup-timezone -z UTC
|
||||
|
||||
step 'Set up networking'
|
||||
# The interfaces file was placed by --fs-skel-dir; link init.d scripts.
|
||||
ln -sf networking /etc/init.d/net.lo
|
||||
ln -sf networking /etc/init.d/net.eth0
|
||||
|
||||
step 'Adjust rc.conf'
|
||||
sed -Ei \
|
||||
-e 's/^[# ](rc_depend_strict)=.*/\1=NO/' \
|
||||
-e 's/^[# ](rc_logger)=.*/\1=YES/' \
|
||||
-e 's/^[# ](unicode)=.*/\1=YES/' \
|
||||
/etc/rc.conf
|
||||
|
||||
step 'Enable base services'
|
||||
rc-update add net.lo boot
|
||||
rc-update add net.eth0 default
|
||||
rc-update add acpid default
|
||||
rc-update add docker default
|
||||
rc-update add cronie default
|
||||
|
||||
step 'Import GPG key for root'
|
||||
GPG_KEY_FILE="/root/gpg-key.asc"
|
||||
if [ -f "$GPG_KEY_FILE" ]; then
|
||||
echo "Found GPG key file: $GPG_KEY_FILE"
|
||||
gpg --batch --import "$GPG_KEY_FILE"
|
||||
# Mark the imported key as ultimately trusted (non-interactive)
|
||||
fingerprint=$(gpg --batch --with-colons --fingerprint \
|
||||
| grep '^fpr:' | head -1 | cut -d: -f10)
|
||||
if [ -n "$fingerprint" ]; then
|
||||
echo "$fingerprint:6:" | gpg --batch --import-ownertrust
|
||||
echo " * GPG key trusted: $fingerprint"
|
||||
fi
|
||||
rm -f "$GPG_KEY_FILE"
|
||||
else
|
||||
echo "WARNING: GPG key file not found at $GPG_KEY_FILE — skipping import" >&2
|
||||
fi
|
||||
|
||||
step 'Clean up APK cache'
|
||||
rm -rf /var/cache/apk/* || true
|
||||
|
||||
echo ''
|
||||
echo '=== Configure script completed ==='
|
||||
Reference in New Issue
Block a user