561 lines
18 KiB
Bash
Executable File
561 lines
18 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# install-kiosk.sh
|
|
#
|
|
# Installatiescript voor de kiosk-laptop (geluidssysteem gemeenschapshal).
|
|
# Voert stap 2 t/m 9 uit van de "Kiosk Laptop Setup Guide".
|
|
# Voer dit script uit NA installatie van Linux Mint Cinnamon, ingelogd
|
|
# op het av-admin-account (stap 1 van de handleiding).
|
|
#
|
|
# Gebruik:
|
|
# 1. Pas hieronder de INSTELLINGEN aan (goedgekeurde URL's en pop-upbeleid)
|
|
# 2. chmod +x install-kiosk.sh
|
|
# 3. sudo ./install-kiosk.sh (vraagt bevestiging)
|
|
# of: sudo ./install-kiosk.sh --yes (slaat bevestiging over)
|
|
#
|
|
# Het script kan in principe veilig opnieuw worden uitgevoerd, maar
|
|
# controleer telkens de uitvoer.
|
|
|
|
set -euo pipefail
|
|
|
|
# =============================================================================
|
|
# INSTELLINGEN — pas dit gedeelte aan naar wens vóórdat je het script draait
|
|
# =============================================================================
|
|
|
|
# --- 1. Lijst van goedgekeurde URL's -----------------------------------------
|
|
# Dit zijn de tabbladen die automatisch geopend worden wanneer de kiosk
|
|
# opstart. Voeg zoveel regels toe als nodig.
|
|
APPROVED_URLS=(
|
|
"http://vida-24q-a9f0.local/#/panels"
|
|
"https://www.radiozenders.fm"
|
|
"https://www.spotify.com"
|
|
)
|
|
|
|
# --- 2. Pop-upbeleid ----------------------------------------------------------
|
|
# Kies één van de volgende waarden voor POPUP_MODE:
|
|
# "alle" -> alle pop-ups worden toegestaan (niet aanbevolen)
|
|
# "geen" -> alle pop-ups worden geblokkeerd (standaard, veiligst)
|
|
# "sommige" -> pop-ups worden standaard geblokkeerd, behalve voor de
|
|
# sites die genoemd worden in POPUP_ALLOWED_URLS hieronder
|
|
POPUP_MODE="sommige"
|
|
|
|
# Alleen relevant wanneer POPUP_MODE="sommige". Gebruik het formaat
|
|
# "https://voorbeeld.nl/*" (met wildcard) zodat alle pagina's binnen dat
|
|
# domein zijn toegestaan.
|
|
POPUP_ALLOWED_URLS=(
|
|
"https://open.spotify.com/*"
|
|
"https://accounts.google.com/*"
|
|
"https://www.facebook.com/*"
|
|
"https://m.facebook.com/*"
|
|
)
|
|
|
|
# =============================================================================
|
|
# Vanaf hier hoeft er normaal gesproken niets aangepast te worden.
|
|
# =============================================================================
|
|
|
|
# Kleine helperfunctie: zet een bash-array om in een JSON-array (string).
|
|
json_array() {
|
|
local arr=("$@")
|
|
local out="["
|
|
local first=true
|
|
for item in "${arr[@]}"; do
|
|
if $first; then
|
|
first=false
|
|
else
|
|
out+=", "
|
|
fi
|
|
out+="\"${item}\""
|
|
done
|
|
out+="]"
|
|
echo "$out"
|
|
}
|
|
|
|
# Zet een volledige URL om naar een "bare origin" (schema://host, zonder pad).
|
|
# LET OP: Chromium's URLBlocklist/URLAllowlist-filtersyntax werkt NIET zoals
|
|
# extensie-matchpatterns — een expliciet toegevoegd "/*" pad wordt daar
|
|
# gelezen als "pad moet letterlijk beginnen met het teken *", wat nooit
|
|
# matcht met echte URL's. Een kale origin (zonder pad) matcht in die syntax
|
|
# juist automatisch elk pad binnen dat domein. Voeg hier dus GEEN "/*" toe.
|
|
url_to_origin_wildcard() {
|
|
local url="$1"
|
|
if [[ "$url" =~ ^([a-zA-Z]+://[^/]+) ]]; then
|
|
echo "${BASH_REMATCH[1]}"
|
|
else
|
|
echo "$url"
|
|
fi
|
|
}
|
|
|
|
# Bepaal de Chromium-instellingen op basis van POPUP_MODE.
|
|
case "$POPUP_MODE" in
|
|
alle)
|
|
POPUP_SETTING_VALUE=1
|
|
POPUP_ALLOWED_JSON="[]"
|
|
;;
|
|
geen)
|
|
POPUP_SETTING_VALUE=2
|
|
POPUP_ALLOWED_JSON="[]"
|
|
;;
|
|
sommige)
|
|
POPUP_SETTING_VALUE=2
|
|
POPUP_ALLOWED_JSON="$(json_array "${POPUP_ALLOWED_URLS[@]}")"
|
|
;;
|
|
*)
|
|
echo "FOUT: POPUP_MODE moet 'alle', 'geen' of 'sommige' zijn (huidige waarde: '$POPUP_MODE')." >&2
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
if [ "${#APPROVED_URLS[@]}" -eq 0 ]; then
|
|
echo "FOUT: APPROVED_URLS mag niet leeg zijn — voeg minstens één URL toe." >&2
|
|
exit 1
|
|
fi
|
|
|
|
# Navigatie-toegestane lijst (URLAllowlist): het domein van elke goedgekeurde
|
|
# starttab, plus de domeinen die nodig zijn voor pop-ups (bv. inloggen bij
|
|
# Google/Facebook, of de Spotify-webspeler). Zonder deze lijst kan de kiosk
|
|
# naar willekeurige sites navigeren, ook al staan die niet in APPROVED_URLS.
|
|
# POPUP_ALLOWED_URLS bevat een "/*"-suffix (nodig voor PopupsAllowedForUrls,
|
|
# dat WEL matchpattern-syntax gebruikt) — die wordt hier gestript, omdat
|
|
# URLAllowlist die syntax juist niet gebruikt (zie url_to_origin_wildcard).
|
|
ALLOWLIST_URLS=()
|
|
for u in "${APPROVED_URLS[@]}"; do
|
|
ALLOWLIST_URLS+=("$(url_to_origin_wildcard "$u")")
|
|
done
|
|
for u in "${POPUP_ALLOWED_URLS[@]}"; do
|
|
ALLOWLIST_URLS+=("${u%/\*}")
|
|
done
|
|
ALLOWLIST_JSON="$(json_array "${ALLOWLIST_URLS[@]}")"
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# 0. Voorafgaande controles
|
|
# -----------------------------------------------------------------------------
|
|
|
|
if [ "$(id -u)" -ne 0 ]; then
|
|
echo "Voer dit script uit met sudo: sudo ./install-kiosk.sh" >&2
|
|
exit 1
|
|
fi
|
|
|
|
echo "=============================================="
|
|
echo " Installatie kiosk-laptop"
|
|
echo "=============================================="
|
|
echo
|
|
echo "Goedgekeurde URL's die geopend worden:"
|
|
for u in "${APPROVED_URLS[@]}"; do
|
|
echo " - $u"
|
|
done
|
|
echo
|
|
echo "Pop-upbeleid: $POPUP_MODE"
|
|
if [ "$POPUP_MODE" = "sommige" ]; then
|
|
echo " Toegestaan voor:"
|
|
for u in "${POPUP_ALLOWED_URLS[@]}"; do
|
|
echo " - $u"
|
|
done
|
|
fi
|
|
echo
|
|
echo "Navigatie is beperkt tot de volgende domeinen (URLAllowlist):"
|
|
for u in "${ALLOWLIST_URLS[@]}"; do
|
|
echo " - $u"
|
|
done
|
|
echo
|
|
|
|
# Zet AUTO_YES=1 (of geef -y/--yes mee) om de bevestigingsvraag over te slaan
|
|
AUTO_YES="${AUTO_YES:-0}"
|
|
for arg in "$@"; do
|
|
case "$arg" in
|
|
-y|--yes) AUTO_YES=1 ;;
|
|
esac
|
|
done
|
|
|
|
if [ "$AUTO_YES" -ne 1 ]; then
|
|
read -rp "Dit script maakt een 'kiosk'-gebruiker aan en past LightDM/X11 op deze machine aan. Doorgaan? [j/N] " CONFIRM
|
|
if [[ ! "$CONFIRM" =~ ^[jJ]$ ]]; then
|
|
echo "Afgebroken."
|
|
exit 0
|
|
fi
|
|
else
|
|
echo "Bevestiging overgeslagen (--yes)."
|
|
fi
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# 1. Systeem bijwerken (onderdeel van handleidingstap 1)
|
|
# -----------------------------------------------------------------------------
|
|
|
|
echo
|
|
echo "--> Systeempakketten bijwerken..."
|
|
apt update
|
|
apt full-upgrade -y
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# 2. Kiosk-gebruiker aanmaken (vóór het instellen van het wachtwoord — zie
|
|
# hieronder waarom dit die volgorde moet hebben)
|
|
# -----------------------------------------------------------------------------
|
|
|
|
echo
|
|
echo "--> Gebruiker 'kiosk' aanmaken..."
|
|
if id "kiosk" &>/dev/null; then
|
|
echo " Gebruiker 'kiosk' bestaat al, aanmaken wordt overgeslagen."
|
|
else
|
|
adduser --disabled-password --gecos "" kiosk
|
|
fi
|
|
|
|
usermod -aG audio,video,netdev,plugdev kiosk
|
|
|
|
# Wachtwoord voor het 'kiosk'-account is vastgesteld op 'kiosk'.
|
|
# We schrijven de hash direct weg met usermod -p in plaats van chpasswd,
|
|
# omdat chpasswd via PAM loopt en de wachtwoordkwaliteitscontrole
|
|
# (bv. wachtwoord == gebruikersnaam) ook voor root kan blokkeren,
|
|
# wat dit script niet-interactief zou laten vastlopen.
|
|
echo
|
|
echo "--> Wachtwoord voor 'kiosk' instellen..."
|
|
KIOSK_PASSWORD="kiosk"
|
|
KIOSK_HASH="$(openssl passwd -6 "${KIOSK_PASSWORD}")"
|
|
usermod -p "${KIOSK_HASH}" kiosk
|
|
unset KIOSK_PASSWORD KIOSK_HASH
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# 3. Openbox en Chromium installeren
|
|
# -----------------------------------------------------------------------------
|
|
|
|
echo
|
|
echo "--> Openbox, LightDM GTK-greeter en hulpprogramma's installeren..."
|
|
apt install -y openbox lightdm-gtk-greeter unclutter xdotool
|
|
|
|
echo
|
|
echo "--> Chromium installeren (deb-pakket, geen snap)..."
|
|
# Verwijder de snap-versie van Chromium indien aanwezig: deze leest
|
|
# /etc/chromium/policies/ niet betrouwbaar uit.
|
|
if snap list chromium &>/dev/null; then
|
|
echo " Snap-versie van Chromium wordt verwijderd..."
|
|
snap remove chromium
|
|
fi
|
|
|
|
apt install -y chromium || apt install -y chromium-browser
|
|
|
|
BROWSER_BIN="$(command -v chromium || command -v chromium-browser || true)"
|
|
if [ -z "$BROWSER_BIN" ]; then
|
|
echo "FOUT: geen chromium-programma gevonden na installatie." >&2
|
|
exit 1
|
|
fi
|
|
echo " Gebruikte browser: $BROWSER_BIN"
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# 4. Chromium-beleid (extensies, pop-ups, incognito etc. blokkeren)
|
|
# -----------------------------------------------------------------------------
|
|
# Let op: de sleutelnamen in dit JSON-bestand (bv. "ExtensionInstallBlocklist")
|
|
# zijn vaste namen die Chromium herkent en kunnen niet vertaald worden zonder
|
|
# de werking te breken. JSON ondersteunt bovendien geen commentaarregels.
|
|
|
|
echo
|
|
echo "--> Chromium-beheerbeleid wegschrijven..."
|
|
mkdir -p /etc/chromium/policies/managed
|
|
|
|
cat > /etc/chromium/policies/managed/kiosk_policy.json <<EOF
|
|
{
|
|
"ExtensionInstallBlocklist": ["*"],
|
|
"ExtensionInstallForcelist": [],
|
|
"BlockExternalExtensions": true,
|
|
"DeveloperToolsAvailability": 2,
|
|
"IncognitoModeAvailability": 1,
|
|
"BrowserGuestModeEnabled": false,
|
|
"BrowserAddPersonEnabled": false,
|
|
"SigninAllowed": false,
|
|
"SyncDisabled": true,
|
|
"PasswordManagerEnabled": false,
|
|
"AutofillAddressEnabled": false,
|
|
"AutofillCreditCardEnabled": false,
|
|
"URLBlocklist": ["*"],
|
|
"URLAllowlist": ${ALLOWLIST_JSON},
|
|
"DefaultPopupsSetting": ${POPUP_SETTING_VALUE},
|
|
"PopupsAllowedForUrls": ${POPUP_ALLOWED_JSON},
|
|
"DefaultNotificationsSetting": 2,
|
|
"DefaultGeolocationSetting": 2,
|
|
"HomepageLocation": "http://localhost/kiosk-home",
|
|
"RestoreOnStartup": 4,
|
|
"RestoreOnStartupURLs": [],
|
|
"BookmarkBarEnabled": false,
|
|
"EditBookmarksEnabled": false,
|
|
"ShowFullUrlsInAddressBar": true,
|
|
"DownloadRestrictions": 3,
|
|
"DefaultDownloadDirectory": "/tmp/kiosk-downloads",
|
|
"PromptForDownloadLocation": false,
|
|
"PrintingEnabled": false,
|
|
"TranslateEnabled": false,
|
|
"MetricsReportingEnabled": false,
|
|
"SafeBrowsingEnabled": true
|
|
}
|
|
EOF
|
|
|
|
echo " Beleid weggeschreven naar /etc/chromium/policies/managed/kiosk_policy.json"
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# 5. Lijst van goedgekeurde websites
|
|
# -----------------------------------------------------------------------------
|
|
|
|
echo
|
|
echo "--> /etc/kiosk/urls.txt aanmaken op basis van APPROVED_URLS..."
|
|
mkdir -p /etc/kiosk
|
|
|
|
{
|
|
echo "# Goedgekeurde kiosk-tabbladen — één URL per regel."
|
|
echo "# Regels die beginnen met # zijn commentaar en worden genegeerd."
|
|
for u in "${APPROVED_URLS[@]}"; do
|
|
echo "$u"
|
|
done
|
|
} > /etc/kiosk/urls.txt
|
|
|
|
AV_ADMIN_HOME="/home/av-admin"
|
|
ADMIN_KIOSK_DIR="${AV_ADMIN_HOME}/kiosk"
|
|
mkdir -p "$ADMIN_KIOSK_DIR"
|
|
|
|
usermod -aG kiosk av-admin
|
|
chown root:kiosk /etc/kiosk/urls.txt
|
|
chmod 664 /etc/kiosk/urls.txt
|
|
|
|
ln -sf /etc/kiosk/urls.txt "${AV_ADMIN_HOME}/urls.txt"
|
|
chown -h av-admin:av-admin "${AV_ADMIN_HOME}/urls.txt"
|
|
|
|
SCRIPT_PATH="$(readlink -f "$0")"
|
|
cp "$SCRIPT_PATH" "${AV_ADMIN_HOME}/re-install-kiosk.sh"
|
|
chmod +x "${AV_ADMIN_HOME}/re-install-kiosk.sh"
|
|
|
|
rm -rf "${AV_ADMIN_HOME}/install-kiosk.sh"
|
|
|
|
chown -R av-admin:admin "$AV_ADMIN_HOME" 2>/dev/null || true
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# 6. Opstartscript voor de browser
|
|
# -----------------------------------------------------------------------------
|
|
|
|
echo
|
|
echo "--> /usr/local/bin/kiosk-launch.sh wegschrijven..."
|
|
cat > /usr/local/bin/kiosk-launch.sh <<'EOF'
|
|
#!/bin/bash
|
|
# Start Chromium gemaximaliseerd (niet fullscreen) met de goedgekeurde tabbladen.
|
|
|
|
URL_LIST="/etc/kiosk/urls.txt"
|
|
BROWSER_BIN="$(command -v chromium || command -v chromium-browser)"
|
|
|
|
if [ -z "$BROWSER_BIN" ]; then
|
|
echo "Geen chromium-programma gevonden." >&2
|
|
exit 1
|
|
fi
|
|
|
|
# Lees alle regels die geen commentaar of leeg zijn in een array
|
|
mapfile -t URLS < <(grep -vE '^\s*#' "$URL_LIST" | grep -vE '^\s*$')
|
|
|
|
if [ ${#URLS[@]} -eq 0 ]; then
|
|
URLS=("http://localhost/kiosk-home")
|
|
fi
|
|
|
|
exec "$BROWSER_BIN" \
|
|
--start-maximized \
|
|
--noerrdialogs \
|
|
--disable-infobars \
|
|
--disable-session-crashed-bubble \
|
|
--disable-translate \
|
|
--no-first-run \
|
|
--fast \
|
|
--fast-start \
|
|
--disable-pinch \
|
|
--overscroll-history-navigation=0 \
|
|
--password-store=basic \
|
|
"${URLS[@]}"
|
|
EOF
|
|
|
|
chmod +x /usr/local/bin/kiosk-launch.sh
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# 7. Openbox-sessie voor de kiosk-gebruiker
|
|
# -----------------------------------------------------------------------------
|
|
|
|
echo
|
|
echo "--> Openbox configureren voor 'kiosk'..."
|
|
sudo -u kiosk mkdir -p /home/kiosk/.config/openbox
|
|
|
|
cat > /home/kiosk/.config/openbox/autostart <<'EOF'
|
|
# Schermbeveiliging/energiebeheer uitschakelen — deze laptop mag nooit slapen
|
|
xset s off
|
|
xset -dpms
|
|
xset s noblank
|
|
|
|
# Muisaanwijzer verbergen bij inactiviteit
|
|
unclutter -idle 2 &
|
|
|
|
# Bewakingslus: herstart de browser als deze ooit gesloten wordt of vastloopt
|
|
(
|
|
while true; do
|
|
/usr/local/bin/kiosk-launch.sh
|
|
sleep 2
|
|
done
|
|
) &
|
|
EOF
|
|
|
|
cat > /home/kiosk/.config/openbox/rc.xml <<'EOF'
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<openbox_config xmlns="http://openbox.org/3.4/rc">
|
|
<keyboard>
|
|
<!-- Verborgen beheerderscombinatie: Ctrl+Alt+L terug naar inlogscherm -->
|
|
<keybind key="C-A-l">
|
|
<action name="Execute">
|
|
<command>dm-tool switch-to-greeter</command>
|
|
</action>
|
|
</keybind>
|
|
</keyboard>
|
|
<mouse>
|
|
<context name="Frame"/>
|
|
</mouse>
|
|
</openbox_config>
|
|
EOF
|
|
|
|
chown -R kiosk:kiosk /home/kiosk/.config
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# 8. LightDM: automatisch inloggen + av-admin-account verbergen
|
|
# -----------------------------------------------------------------------------
|
|
# Let op: de sleutelnamen hieronder (bv. "autologin-user") zijn vaste
|
|
# LightDM-configuratienamen en kunnen niet vertaald worden.
|
|
|
|
echo
|
|
echo "--> LightDM automatisch inloggen configureren..."
|
|
mkdir -p /etc/lightdm/lightdm.conf.d
|
|
|
|
cat > /etc/lightdm/lightdm.conf.d/50-kiosk.conf <<'EOF'
|
|
[Seat:*]
|
|
autologin-user=kiosk
|
|
autologin-user-timeout=0
|
|
autologin-session=openbox
|
|
greeter-hide-users=true
|
|
allow-guest=false
|
|
EOF
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# 9. Extra beveiliging — virtuele-terminalwissel uitschakelen
|
|
# -----------------------------------------------------------------------------
|
|
|
|
echo
|
|
echo "--> Virtuele-terminalwissel (Ctrl+Alt+F1-F7) en Zap uitschakelen..."
|
|
mkdir -p /etc/X11/xorg.conf.d
|
|
|
|
cat > /etc/X11/xorg.conf.d/10-no-vtswitch.conf <<'EOF'
|
|
Section "ServerFlags"
|
|
Option "DontVTSwitch" "true"
|
|
Option "DontZap" "true"
|
|
EndSection
|
|
EOF
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# 10. Script waarmee av-admin het Chromium-beleid kan verversen na het
|
|
# aanpassen van /etc/kiosk/urls.txt.
|
|
#
|
|
# Het echte script staat centraal in /etc/kiosk/.
|
|
# av-admin krijgt een symlink in ~/kiosk/.
|
|
# -----------------------------------------------------------------------------
|
|
|
|
echo
|
|
echo "--> refresh_policies.sh installeren..."
|
|
|
|
AV_ADMIN_HOME="/home/av-admin"
|
|
ADMIN_KIOSK_DIR="${AV_ADMIN_HOME}/kiosk"
|
|
REFRESH_SCRIPT="/etc/kiosk/refresh_policies.sh"
|
|
REFRESH_LINK="${ADMIN_KIOSK_DIR}/refresh_policies.sh"
|
|
|
|
# Zorg dat de directories bestaan
|
|
mkdir -p /etc/kiosk
|
|
mkdir -p "$ADMIN_KIOSK_DIR"
|
|
|
|
# Schrijf het refresh-script
|
|
cat > "$REFRESH_SCRIPT" <<'REFRESH_EOF'
|
|
#!/bin/bash
|
|
|
|
# Ververs de kiosk-browser nadat /etc/kiosk/urls.txt is gewijzigd.
|
|
#
|
|
# Gebruik als av-admin:
|
|
#
|
|
# sudo /home/av-admin/kiosk/refresh_policies.sh
|
|
#
|
|
# Chromium wordt beëindigd. De Openbox-bewakingslus in de kiosk-sessie
|
|
# start Chromium daarna automatisch opnieuw.
|
|
|
|
set -euo pipefail
|
|
|
|
if [ "$(id -u)" -ne 0 ]; then
|
|
echo "Voer dit script uit met sudo:" >&2
|
|
echo " sudo /home/av-admin/kiosk/refresh_policies.sh" >&2
|
|
exit 1
|
|
fi
|
|
|
|
echo "--> Chromium op de kiosk wordt herstart..."
|
|
|
|
if pgrep -u kiosk chromium >/dev/null 2>&1; then
|
|
pkill -u kiosk chromium || true
|
|
echo " Chromium beëindigd."
|
|
elif pgrep -u kiosk chromium-browser >/dev/null 2>&1; then
|
|
pkill -u kiosk chromium-browser || true
|
|
echo " Chromium-browser beëindigd."
|
|
else
|
|
echo " Chromium draaide momenteel niet."
|
|
fi
|
|
|
|
echo " De Openbox-bewakingslus start Chromium automatisch opnieuw."
|
|
echo " Klaar."
|
|
REFRESH_EOF
|
|
|
|
# Script uitvoerbaar maken
|
|
chmod 755 "$REFRESH_SCRIPT"
|
|
|
|
# Eigendom centraal script
|
|
chown root:root "$REFRESH_SCRIPT"
|
|
|
|
# Verwijder eventueel oude versie/link
|
|
rm -f "$REFRESH_LINK"
|
|
|
|
# Maak de symlink voor av-admin
|
|
ln -s "$REFRESH_SCRIPT" "$REFRESH_LINK"
|
|
|
|
# Zorg dat av-admin eigenaar is van zijn eigen kiosk-directory
|
|
chown -R av-admin:av-admin "$ADMIN_KIOSK_DIR"
|
|
|
|
# Controleer resultaat
|
|
echo
|
|
echo " Refresh-script:"
|
|
ls -l "$REFRESH_SCRIPT"
|
|
|
|
echo
|
|
echo " Link voor av-admin:"
|
|
ls -l "$REFRESH_LINK"
|
|
|
|
# Controleer dat de link daadwerkelijk naar het script wijst
|
|
if [ ! -e "$REFRESH_LINK" ]; then
|
|
echo "FOUT: refresh_policies.sh kon niet worden aangemaakt." >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [ ! -x "$REFRESH_LINK" ]; then
|
|
echo "FOUT: refresh_policies.sh is niet uitvoerbaar." >&2
|
|
exit 1
|
|
fi
|
|
|
|
echo " refresh_policies.sh succesvol geïnstalleerd."
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Klaar
|
|
# -----------------------------------------------------------------------------
|
|
|
|
echo
|
|
echo "=============================================="
|
|
echo " Installatie voltooid."
|
|
echo "=============================================="
|
|
echo
|
|
echo "Resterende handmatige stappen:"
|
|
echo " 1. Controleer /etc/kiosk/urls.txt (of pas APPROVED_URLS hierboven aan"
|
|
echo " en voer het commando 'sudo ${ADMIN_KIOSK_DIR}/refresh_policies.sh' uit om wijzigingen door te voeren)."
|
|
echo " 2. Herstart om te testen: sudo reboot"
|
|
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 " bereiken en log in als beheerder om te controleren of het gewone"
|
|
echo " bureaublad nog werkt."
|
|
echo
|
|
echo "LightDM is NIET automatisch herstart, omdat dit je huidige grafische"
|
|
echo "sessie zou beëindigen. Herstart wanneer je klaar bent:"
|
|
echo " sudo reboot"
|