Differences

This shows you the differences between two versions of the page.

Link to this comparison view

userspace:windows-subsystem-for-linux [2019/05/14 14:52]
tobias created
userspace:windows-subsystem-for-linux [2019/05/14 14:56]
tobias
Line 20: Line 20:
 └── setup.opsiscript └── setup.opsiscript
  
-  ​ 
 </​code>​ </​code>​
 +
 +
 +<​code>​
 +[Actions]
 +importlib "​fhg_rebootcontrol.opsiinc"​
 +requiredWinstVersion >= "​4.11.4.6"​
 +ScriptErrorMessages=off
 +
 +
 +DefVar $MsiId$
 +DefVar $UninstallProgram$
 +DefVar $LogDir$
 +DefVar $ProductId$  ​
 +DefVar $MinimumSpace$
 +DefVar $rebootCounter$
 +DefVar $rebooted$
 +
 +DefVar $distribution$
 +
 +Set $LogDir$ = "​%opsiLogDir%"​
 +
 +Message "init reboot counter"​
 +set $rebooted$ = rebootcontrol("​auto","​read"​)
 +
 +; ----------------------------------------------------------------
 +; - Please edit the following values ​                            -
 +; ----------------------------------------------------------------
 +;​$ProductId$ should be the name of the product in opsi
 +; therefore please: only lower letters, no umlauts, ​
 +; no white space use '​-'​ as a seperator
 +Set $ProductId$ ​      = "​Microsoft-WSL"​
 +Set $MinimumSpace$ ​   = "5000 MB"
 +; the path were we find the product after the installation
 +; ----------------------------------------------------------------
 +
 +if not(HasMinimumSpace ("​%SystemDrive%",​ $MinimumSpace$))
 + LogError "Not enough space on %SystemDrive%,​ " + $MinimumSpace$ + " on drive %SystemDrive% needed for " + $ProductId$
 + isFatalError "No Space"
 + ; Stop process and set installation status to failed
 +else
 + comment "Show product picture"​
 + ShowBitmap "​%ScriptPath%\"​ + $ProductId$ + "​.png"​ $ProductId$
 +
 + comment "get property value ....."
 + set $distribution$ = getProductProperty("​distribution",​ "​wsl-ubuntu-1804"​)
 +
 +
 + Message "​Installing " + $ProductId$ + " ..."
 + comment "Start setup program"​
 + ChangeDirectory "​%SCRIPTPATH%"​
 +
 + if $rebooted$ <= "​0" ​
 + powershellCall('​Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux -NoRestart'​)
 + set $rebootCounter$ = rebootcontrol("​auto","​write"​)
 + ExitWindows /​ImmediateReboot
 + else
 + message "WSL is enabled"​
 + message "​install Distribution"​
 + powershellCall('​Add-AppxProvisionedPackage -SkipLicense -Online -PackagePath %scriptpath%\files\'​+$distribution$)
 +
 + set $rebootCounter$ = rebootcontrol("​auto","​delete"​)
 + endif
 +
 +
 +endif
 +
 +</​code>​
 +
 +<​code>​
 +[Package]
 +version: 1
 +depends: ​
 +incremental:​ False
 +
 +[Product]
 +type: localboot
 +id: Microsoft-WSL
 +name: Windows Subsystem for Linux
 +description:​ A template for opsi products
 +advice: ​
 +version: 4.0.6
 +priority: 0
 +licenseRequired:​ False
 +productClasses: ​
 +setupScript:​ setup.opsiscript
 +uninstallScript:​
 +updateScript: ​
 +alwaysScript: ​
 +onceScript: ​
 +customScript: ​
 +userLoginScript: ​
 +
 +[ProductProperty]
 +type: unicode
 +name: Distribution
 +multivalue: False
 +editable: True
 +description:​ Select Distribution
 +values: ["​wsl-ubuntu-1804.appx","​wsl-debian-gnulinux.appx","​wsl-ubuntu-1604.appx","​wsl-kalilinux-1140.appx","​wsl-sles-12.appx","​wsl-opensuse-42.appx"​]
 +default: ["​wsl-ubuntu-1804.appx"​]
 +
 +
 +</​code>​
 +

QR Code
QR Code userspace:windows-subsystem-for-linux (generated for current page)