summaryrefslogtreecommitdiffstats
path: root/core/modules/kdm-theme-bwlp/data/opt
diff options
context:
space:
mode:
authorJonathan Bauer2016-12-23 13:12:09 +0100
committerJonathan Bauer2016-12-23 13:12:09 +0100
commit6806ae4a850fc7785a8c05304237cf53b5b8f951 (patch)
treeb1dd8413d6c7b9a250251da7f0d49bb52b4ddc57 /core/modules/kdm-theme-bwlp/data/opt
parentwrong kernel version variable used (diff)
downloadmltk-6806ae4a850fc7785a8c05304237cf53b5b8f951.tar.gz
mltk-6806ae4a850fc7785a8c05304237cf53b5b8f951.tar.xz
mltk-6806ae4a850fc7785a8c05304237cf53b5b8f951.zip
merge with latest dev version (tm-scripts commit f5a59daf8d70a9027118292cd40b18c221897408)
Diffstat (limited to 'core/modules/kdm-theme-bwlp/data/opt')
-rwxr-xr-xcore/modules/kdm-theme-bwlp/data/opt/openslx/scripts/systemd-kdm_hwinfo_warnings66
1 files changed, 66 insertions, 0 deletions
diff --git a/core/modules/kdm-theme-bwlp/data/opt/openslx/scripts/systemd-kdm_hwinfo_warnings b/core/modules/kdm-theme-bwlp/data/opt/openslx/scripts/systemd-kdm_hwinfo_warnings
new file mode 100755
index 00000000..8b37de80
--- /dev/null
+++ b/core/modules/kdm-theme-bwlp/data/opt/openslx/scripts/systemd-kdm_hwinfo_warnings
@@ -0,0 +1,66 @@
+#!/bin/ash
+
+patch_kdm_theme() {
+ local THEME_FILE="/usr/share/desktop/themes/kdm/bwlehrpool/theme.xml"
+ [ -s "$THEME_FILE" ] || return 0
+ local TMP=$(mktemp)
+ [ -z "$TMP" ] && TMP="/tmp/kdm-$$-$(whoami)-$?-$!-tmp"
+ sed '/INFO_START_MARKER/,/INFO_END_MARKER/{//!d};/INFO_START_MARKER/a REPLACE_MARKER' "$THEME_FILE" > "$TMP"
+ local DATA=
+ build_replacement_xml
+ awk -v r="$DATA" '{gsub(/REPLACE_MARKER/,r)}1' "$TMP" > "$THEME_FILE"
+}
+
+build_replacement_xml() {
+ local TEMPLATE='
+<item type="label">
+ <normal color="_COLOR_" font="Sans 11"/>
+ <text>_TEXT_</text>
+</item>'
+ . "/run/hwinfo"
+ local CONTACT_RZ=
+ # Warning: add_replace_xml doesn't escape <>& (XML), and also doesn't escape , and & (sed), so e.g. < should be written as \&lt;
+ # Also don't use # as it's the sed delimiter
+ if [ "$HW_KVM" = "DISABLED" ]; then
+ add_replace_xml "ff0000" "* 64Bit-Gast-Support (VT-x oder AMD-V) ist im BIOS deaktiviert. 64Bit VMs können nicht gestartet werden."
+ CONTACT_RZ=jau
+ elif [ "$HW_KVM" = "UNSUPPORTED" ]; then
+ add_replace_xml "000000" "* CPU hat keinen 64Bit-Gast-Support (VT-x oder AMD-V). 64Bit VMs können nicht gestartet werden."
+ fi
+ if [ -n "$HW_MBRAM" ] && [ "$HW_MBRAM" -lt 3400 ]; then
+ local GB=$(( ( HW_MBRAM + 300 ) / 1024 ))
+ add_replace_xml "000000" "* Dieser PC hat wenig RAM (${GB}GB). Die Leistung von VM-Sitzungen wird nicht optimal sein."
+ fi
+ if [ "$HW_ID44" = "0" ]; then
+ add_replace_xml "000000" "* Keine ID44-Partition gefunden. VMs bekommen wenig RAM zugewiesen."
+ if [ "$HW_HDDCOUNT" = "0" ]; then
+ add_replace_xml "000000" " Keine Festplatte erkannt; eine Festplatte wird empfohlen, wenn Sie VMs nutzen wollen."
+ elif [ -n "$HW_HDDCOUNT" ]; then
+ CONTACT_RZ=klar
+ fi
+ if [ -n "$HW_MBRAM" ] && [ "$HW_MBRAM" -lt 4500 ]; then
+ add_replace_xml "ff0000" " Da der PC wenig RAM hat, ist die Einrichtung einer ID44-Partition dringend zu empfehlen."
+ fi
+ elif [ -n "$HW_ID44" ] && [ "$HW_ID44" -lt 10000 ]; then
+ add_replace_xml "000000" "* Die ID44-Partition ist sehr klein. VM-Sitzungen könnten nach einiger Zeit aus Speichermangel abstürzen."
+ CONTACT_RZ=fjeden
+ fi
+ if ! systemctl status mount-vm-store >/dev/null; then
+ add_replace_xml "ff0000" "* Der VM-Store konnte nicht eingehängt werden. VMs können nicht gestartet werden."
+ add_replace_xml "ff0000" " Versuchen Sie das Problem zu lösen, indem Sie den Computer neu starten."
+ fi
+ if [ -n "$CONTACT_RZ" ]; then
+ add_replace_xml "000000" " -- "
+ add_replace_xml "000000" " -- Wenden Sie sich ggf. an den bwLehrpool-Support Ihres Rechenzentrums -- "
+ fi
+}
+
+add_replace_xml() {
+ [ -z "$DATA" ] && DATA=$(echo "$TEMPLATE" | sed "s,_COLOR_,#000000,;s,_TEXT_,Hinweise für den Admin/Hardware-Betreuer:,")
+ DATA="$DATA $(echo "$TEMPLATE" | sed "s,_COLOR_,#$1,;s#_TEXT_#$2#")"
+}
+
+
+
+patch_kdm_theme
+