test.opsiscript

; opsiscript syntax highlighting test
;
; SPDX-FileCopyrightText: 2024 Stefan Staeglich <sstaeglich@kdemail.net>
;
; SPDX-License-Identifier: LGPL-2.1-or-later
[Actions]
requiredWinstVersion >= "4.12.8"
ScriptErrorMessages=off
setLogLevel = 7
DefVar $OS$ = GetOS
DefVar $ProductId$ = "test"
DefVar $filename$ = GetProductProperty("filename", "/tmp/testfile.txt")
comment "Show product picture"
ShowBitmap "%ScriptPath%\" + $ProductId$ + ".png" $ProductId$
Switch $OS$
	case "Linux"
		Message "Try to install " + $ProductId$ " on " + $OS$
		sub_main_linux
	EndCase
	case "Windows_NT"
		Message "Try to install " + $ProductId$ " on " + $OS$
		sub_main_windows
	EndCase
	DefaultCase
		Message $OS$ + " is not supported"
	EndCase
EndSwitch
[sub_main_linux]
DefVar $distrotype$ = getLinuxDistroType
DefStringList $linuxInfo$ = getLinuxVersionMap
DefVar $distCodeName$ = getValue("Codename", $linuxInfo$)
DefVar $distRelease$ = getValue("Release", $linuxInfo$)
DefVar $distroName$ = getValue("Distributor ID", $linuxInfo$)
if not ($distrotype$ = 'debian')
	LogError "Product: " + $ProductId$ + "is desinged for Debian/Ubuntu"
	isFatalError "Wrong Distrotype"
endif
Message "Try to get Package Lock..."
if waitForPackageLock("60","false")
	comment "we got the package lock."
else
	LogError "could not get Package Lock"
	isFatalError "package lock failed"
endif
ShellInAnIcon_install_linux
if not("0" = getLastExitCode)
	LogError "failed ShellInAnIcon_install_linux"
	isFatalError "ShellInAnIcon_install_linux"
endif
Patches_config_systemd "/etc/systemd/system/test.service.d/override.conf"
if not("0" = getLastExitCode)
	Message "failed Patches_config_systemd"
	LogError "failed Patches_config_systemd"
	isFatalError "config_systemd"
endif
Message "Patch config file ..."
XML2_config "/etc/test.conf"
if not("0" = getLastExitCode)
	Message "failed XML2_config"
	LogError "failed XML2_config"
	isFatalError "XML2_config"
endif
PatchTextFile_config "/etc/test.conf"
if not("0" = getLastExitCode)
	Message "failed PatchTextFile_config"
	LogError "failed PatchTextFile_config"
	isFatalError "XML2_config"
endif
[ShellInAnIcon_install_linux]
set -x
export PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin
export DEBIAN_FRONTEND=noninteractive
EXITCODE=0
apt-get --yes install test
if [ $? -ne 0 ]; then EXITCODE=1; fi
exit $EXITCODE
[XML2_config]
openNode 'file'
SetAttribute "name" "$filename$"
[PatchTextFile_config]
FindLine_Containing "$filename$"
DeleteTheLine
SaveToFile "/etc/test2.conf"
[Patches_config_systemd]
delsec [Service]
set [Service] Restart=on-failure

AltStyle によって変換されたページ (->オリジナル) /