Chrome/Chromium: Tilføj/Fjern Udvidelse(r)
Tilføjer/fjerner en eller flere Chrome/Chromium-Udvidelser til/fra browserens ExtensionSettings policy
Source: Download script
Last Updated: 4. December 2024 by Agnete Moos (agms@sonderborg.dk)
Parameters:
Navn | Type | Standardværdi | Påkrævet |
---|---|---|---|
Click to see the source code
#! /bin/bash
# Ref: https://chromeenterprise.google/policies/#ExtensionSettings
# This script can:
# 1. Create an ExtensionSettings policy if none exists.
# 2. Add/remove a list(1..*) of Chrome Extensions to/from the ExtensionSettings file.
# 3. Remove the ExtensionSettings policy.
# Authors: Heini Leander Ovason
set -x
if get_os2borgerpc_config os2_product | grep --quiet kiosk; then
echo "Dette script er ikke designet til at blive anvendt på en kiosk-maskine."
exit 1
fi
ACTIVATE=$1
EXTENSIONS_ARRAY=$2
POLICIES_DIR="/etc/opt/chrome/policies/managed"
POLICY_FILE="os2borgerpc-extension-settings.json"
if [ "$ACTIVATE" = 'True' ]; then
if [ ! -d "$(dirname "$POLICY_FILE")" ]; then
mkdir --parents "$(dirname "$POLICY_FILE")"
fi
EXTENSIONS_DICT=""
if [ -n "$EXTENSIONS_ARRAY" ]; then
IFS=',' read -ra EXTENSIONS_ARRAY <<< "$EXTENSIONS_ARRAY"
ARR_LEN="${#EXTENSIONS_ARRAY[@]}"
C=0
for EXTENSION in "${EXTENSIONS_ARRAY[@]}"
do
DICT_TEMPLATE="\"$EXTENSION\": {
\"installation_mode\": \"force_installed\",
\"toolbar_pin\": \"force_pinned\",
\"update_url\": \"https://clients2.google.com/service/update2/crx\"
}"
C=$((C+1))
if [ "$C" -eq "$ARR_LEN" ]; then
EXTENSIONS_DICT+=" $DICT_TEMPLATE"
else
EXTENSIONS_DICT+="$DICT_TEMPLATE,
"
fi
done
fi
cat << EOF > "$POLICIES_DIR/$POLICY_FILE"
{
"ExtensionSettings": {
$EXTENSIONS_DICT
}
}
EOF
else
rm "$POLICIES_DIR/$POLICY_FILE"
fi
Beskrivelse
Udviklet og testet i samarbejde med Aarhus kommune.
- Kan tilføje/fjerne en liste af Chrome/Chromium-Udvidelser til/fra browserens ExtensionSettings policy.
- Kan slette browserens ExtensionSettings policy.
(Læs det hele inden du kører scriptet)
For installere udvidelser
For installere udvidelser skal scriptet køres med flueben i checkbox’en Aktivér
.
Alle Chrome-udvidelser har et unikt ID der fremgår i URL’en i Chrome Web Store.
ID’et er det du finder inden for < >-symbolerne i URL’en herunder: https://chrome.google.com/webstore/detail/ublock-origin/
Eksempelvis for uBlock Origin vil URL’en se således ud:
https://chrome.google.com/webstore/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm?hl=en
ID’et for uBlock Origin, som du skal bruge ifm. kørsel af scriptet, er derved: cjpalhdlnbpafiamejdnhcphjbkeiagm
Eksempel på en liste med 3 udvidelser, henholdsvis uBlock Origin, IntoWords, og AppWriter:
cjpalhdlnbpafiamejdnhcphjbkeiagm,nopjifljihndhkfeogabcclpgpceapln,lokadhdaghfjbmailhhenifjejpokche
Ovenstående er den tekststreng man angiver ved kørsel i tekstparameteren “Udvidelser”, hvis man vil installere de tre udvidelser.
Hver gang scriptet køres så overskrives den eksisterende liste med den nye liste.
For at slette udvidelser
For at slette alle udvidelser køres scriptet uden flueben i checkbox’en “Aktivér”.
Dette script er blevet testet og virker på Ubuntu 22.04.
Mulige udvidelser
Nogle kommuner bruger udvidelsen “Adgang for Alle” til oplæsning på dansk: https://chrome.google.com/webstore/detail/adgang-for-alle-opl%C3%A6sning/emlafdcpicmngaecnedehchapmmcjfhb?hl=da
Hvis man er kunde hos AppWriter eller IntoWords kan man overveje deres udvidelser for at øge tilgængeligheden i browser.
Parametre
- Aktivér : True/False
- Udvidelser : komma-separeret liste af ID’er