Compare commits

...
2 Commits
Author SHA1 Message Date
henrov 80a817427d Addds testscript 2026-09-12 10:42:08 +02:00
henrov bdb76f788f Improved some names, messages 2026-09-12 10:41:57 +02:00
3 changed files with 75 additions and 2 deletions

No files matched your search

+5 -2
View File
@@ -1,6 +1,5 @@
#!/usr/bin/env bash #!/usr/bin/env bash
set -euo pipefail set -euo pipefail
set -o pipefail
############################################################################### ###############################################################################
# Aamsveen Audio Kiosk ISO builder # Aamsveen Audio Kiosk ISO builder
@@ -1294,7 +1293,11 @@ echo " $NEW_ISO_PATH"
echo echo
echo "Burn ISO:" echo "Burn ISO:"
echo "sudo dd if=$NEW_ISO_PATH of=/dev/sdX bs=4M status=progress conv=fsync" echo "sudo dd if=$NEW_ISO_PATH of=/dev/sdX bs=4M status=progress conv=fsync"
echo
echo "Run in QEMU" echo "Run in QEMU"
echo
echo qemu-img create -f qcow2 ./kiosk-aamsveen.qcow2 32G
echo
echo "qemu-system-x86_64 \ echo "qemu-system-x86_64 \
-enable-kvm \ -enable-kvm \
-cpu host \ -cpu host \
@@ -1302,7 +1305,7 @@ echo "qemu-system-x86_64 \
-m 8G \ -m 8G \
-boot order=d \ -boot order=d \
-cdrom $NEW_ISO_PATH \ -cdrom $NEW_ISO_PATH \
-drive file=./mint.qcow2,format=qcow2,if=ide \ -drive file=./kiosk-aamsveen.qcow2,format=qcow2,if=ide \
-vga std \ -vga std \
-display gtk \ -display gtk \
-usb \ -usb \
Executable
+51
View File
@@ -0,0 +1,51 @@
#!/usr/bin/env bash
set -euo pipefail
# create_disk.sh
#
# Bouwt de kiosk-ISO, maakt een qcow2-testschijf, schrijft de ISO naar een
# fysieke USB-stick, en start daarna een QEMU-testomgeving.
set -euo pipefail
REPO_DIR="$HOME/Repos/Projects/Aamsveen-Audio-Kiosk"
NEW_ISO_PATH="${REPO_DIR}/non-aamsveen-audio-kiosk_v1.iso"
QCOW2_PATH="${REPO_DIR}/kiosk-aamsveen.qcow2"
USB_DEVICE="/dev/sdb"
cd "$REPO_DIR"
echo "--> ISO bouwen..."
sudo ./build-kiosk-iso-v1.sh
echo "--> qcow2-testschijf aanmaken (32G)..."
qemu-img create -f qcow2 "$QCOW2_PATH" 32G
# LET OP: dd naar een fysiek blockdevice is onomkeerbaar en kan de verkeerde
# schijf wissen als USB_DEVICE niet klopt. Controleer eerst met `lsblk`
# welke devicenaam je USB-stick heeft voordat je hier bevestigt.
echo
echo "LET OP: dit schrijft $NEW_ISO_PATH naar $USB_DEVICE."
echo "Controleer met 'lsblk' in een andere terminal of dit echt de USB-stick is!"
read -rp "Doorgaan met schrijven naar $USB_DEVICE? [j/N] " CONFIRM
if [[ "$CONFIRM" =~ ^[jJ]$ ]]; then
sudo dd if="$NEW_ISO_PATH" of="$USB_DEVICE" bs=4M status=progress oflag=sync
else
echo "Schrijven naar USB overgeslagen."
fi
echo "--> QEMU-testomgeving starten..."
qemu-system-x86_64 \
-enable-kvm \
-cpu host \
-smp 4 \
-m 8G \
-boot order=d \
-cdrom "$NEW_ISO_PATH" \
-drive file="$QCOW2_PATH",format=qcow2,if=ide \
-vga std \
-display gtk \
-usb \
-device usb-tablet \
-audiodev pipewire,id=snd0 \
-device intel-hda \
-device hda-duplex,audiodev=snd0
+19
View File
@@ -238,6 +238,22 @@ if [ -z "$BROWSER_BIN" ]; then
fi fi
echo " Gebruikte browser: $BROWSER_BIN" echo " Gebruikte browser: $BROWSER_BIN"
# -----------------------------------------------------------------------------
# 3b. Firefox installeren voor av-admin (onbeperkte browser, zonder kiosk-beleid)
# -----------------------------------------------------------------------------
# LET OP: het Chromium-beleid hieronder (URLBlocklist/URLAllowlist) geldt
# machinebreed voor elke gebruiker die dezelfde Chromium-binary start — dus
# ook voor av-admin, als die Chromium zou gebruiken. Om av-admin toch vrij
# te laten browsen (bv. om de kiosk te beheren, updates te zoeken, etc.)
# installeren we Firefox als apart programma. Firefox leest het
# Chromium-beleid niet en blijft dus volledig onbeperkt.
echo
echo "--> Firefox installeren voor av-admin (onbeperkte toegang tot alle URL's)..."
apt install -y firefox
echo " Firefox geïnstalleerd. Dit programma wordt niet beperkt door het"
echo " hieronder geschreven Chromium-kioskbeleid en is zo bereikbaar via"
echo " het toepassingenmenu wanneer av-admin is ingelogd."
# ----------------------------------------------------------------------------- # -----------------------------------------------------------------------------
# 4. Chromium-beleid (extensies, pop-ups, incognito etc. blokkeren) # 4. Chromium-beleid (extensies, pop-ups, incognito etc. blokkeren)
# ----------------------------------------------------------------------------- # -----------------------------------------------------------------------------
@@ -512,6 +528,9 @@ echo " -> zou automatisch moeten inloggen op de schermvullende kiosk-browser
echo " 3. Druk op Ctrl+Alt+L op het kiosk-scherm om het inlogscherm te" echo " 3. Druk op Ctrl+Alt+L op het kiosk-scherm om het inlogscherm te"
echo " bereiken en log in als beheerder om te controleren of het gewone" echo " bereiken en log in als beheerder om te controleren of het gewone"
echo " bureaublad nog werkt." echo " bureaublad nog werkt."
echo " 4. Gebruik op het av-admin-account Firefox (via het toepassingenmenu)"
echo " voor onbeperkt browsen — dit programma valt niet onder het"
echo " Chromium-kioskbeleid dat alleen voor de 'kiosk'-gebruiker geldt."
echo echo
echo "LightDM is NIET automatisch herstart, omdat dit je huidige grafische" echo "LightDM is NIET automatisch herstart, omdat dit je huidige grafische"
echo "sessie zou beëindigen. Herstart wanneer je klaar bent:" echo "sessie zou beëindigen. Herstart wanneer je klaar bent:"