This shows you the differences between two versions of the page.
userspace:libreoffice_6.x [2020/01/14 21:02] dominikwi created |
userspace:libreoffice_6.x [2021/08/23 08:37] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== LibreOffce 6.x ====== | ||
- | |||
- | --- // | ||
- | |||
- | Tested on Windows 10 64bit | ||
- | |||
- | Tested with opsi 4.12.1.5\\ | ||
- | required Winst Version >= 4.12.1.5 (only tested with that, i expect lower Versions will also work) \\ | ||
- | Most code was copied from [[LibreOffice 4.0]] , created by [[darpakiss@gmail.com|darpakiss]] \\ | ||
- | Files can be downloaded at [[http:// | ||
- | |||
- | Installer will autodetect x64 or amd64 Achritecture and will install right variant. | ||
- | |||
- | |||
- | |||
- | ==== Tree: ==== | ||
- | < | ||
- | ├── CLIENT_DATA | ||
- | │ | ||
- | │ | ||
- | │ | ||
- | │ | ||
- | │ | ||
- | │ | ||
- | │ | ||
- | │ | ||
- | │ | ||
- | ├── OPSI | ||
- | │ | ||
- | │ | ||
- | │ | ||
- | └── SERVER_DATA | ||
- | |||
- | </ | ||
- | |||
- | ==== Steps ==== | ||
- | - Download the installer and the helppacks for x86 and amd64 from libreoffice (links see above) | ||
- | - You can customize the installer if you follow [[https:// | ||
- | - You should create a logo from an images from internet, and save with name // | ||
- | |||
- | ==== setup.ins ==== | ||
- | <code winst> | ||
- | [Initial] | ||
- | setLogLevel=5 | ||
- | ; Log Errors in Logfile but don't abort: | ||
- | ExitOnError=false | ||
- | ; Show syntax errors in the script: | ||
- | ScriptErrorMessages=on | ||
- | ; Dont trace step by step through the script: | ||
- | TraceMode=off | ||
- | ; let started programs run in front of the winst window | ||
- | StayOnTop=false | ||
- | |||
- | |||
- | [Actions] | ||
- | requiredWinstVersion >= " | ||
- | |||
- | DefVar $UninstallProgram32$ | ||
- | DefVar $UninstallProgram64$ | ||
- | DefVar $LogDir$ | ||
- | DefVar $ProductId$ | ||
- | DefVar $MinimumSpace$ | ||
- | DefVar $InstallDir32$ | ||
- | DefVar $InstallDir64$ | ||
- | DefVar $ExitCode$ | ||
- | DefVar $LicenseRequired$ | ||
- | DefVar $LicenseKey$ | ||
- | DefVar $LicensePool$ | ||
- | DefVar $INST_SystemType$ | ||
- | ;DefVar $INST_version$ | ||
- | DefVar $OnlineUpdate$ | ||
- | DefVar $Inst_Para$ | ||
- | DefVar $Inst_Prg32$ | ||
- | DefVar $Inst_Prg64$ | ||
- | DefVar $Uninst_Prg$ | ||
- | DefVar $InstallCommandList$ | ||
- | DefVar $Register_EXT$ | ||
- | DefStringList $result1$ | ||
- | DefVar $Inst_Help_DE_32$ | ||
- | DefVar $Inst_Help_DE_64$ | ||
- | DefVar $InstHelp_Para$ | ||
- | |||
- | Set $INST_SystemType$ = GetSystemType | ||
- | |||
- | Set $LogDir$ = " | ||
- | Set $OnlineUpdate$ = GetProductProperty(" | ||
- | set $Register_EXT$ = GetProductProperty(" | ||
- | |||
- | Set $InstallCommandList$ = "" | ||
- | |||
- | ; ---------------------------------------------------------------- | ||
- | ; - Please edit the following values | ||
- | ; ---------------------------------------------------------------- | ||
- | ; | ||
- | ; therefore please: only lower letters, no umlauts, | ||
- | ; no white space use ' | ||
- | Set $ProductId$ = " | ||
- | Set $MinimumSpace$ = "300 MB" | ||
- | |||
- | Set $Inst_Prg32$ = " | ||
- | Set $Inst_Prg64$ = " | ||
- | Set $Inst_Help_DE_32$ = " | ||
- | Set $Inst_Help_DE_64$ = " | ||
- | set $InstHelp_Para$ | ||
- | |||
- | Set $LicenseRequired$ = " | ||
- | Set $LicensePool$ | ||
- | Set $Uninst_Prg$ | ||
- | Set $Inst_Para$ | ||
- | Set $Inst_Para$ | ||
- | Set $Inst_Para$ | ||
- | Set $Inst_Para$ | ||
- | Set $Inst_Para$ | ||
- | Set $Inst_Para$ | ||
- | Set $Inst_Para$ | ||
- | Set $Inst_Para$ | ||
- | Set $Inst_Para$ | ||
- | Set $Inst_Para$ | ||
- | Set $Inst_Para$ | ||
- | ; ---------------------------------------------------------------- | ||
- | |||
- | if not(HasMinimumSpace (" | ||
- | LogError "Not enough space on %SystemDrive%, | ||
- | isFatalError | ||
- | ; Stop process and set installation status to failed | ||
- | else | ||
- | comment "Show product picture" | ||
- | ShowBitmap " | ||
- | |||
- | if FileExists(" | ||
- | comment "Start uninstall sub section" | ||
- | Sub " | ||
- | endif | ||
- | |||
- | if $LicenseRequired$ = " | ||
- | comment " | ||
- | Sub_get_licensekey | ||
- | endif | ||
- | |||
- | if contains(lower($OnlineUpdate$)," | ||
- | comment " | ||
- | Set $Inst_Para$ = $Inst_Para$ + ', | ||
- | endif | ||
- | |||
- | if ($Register_EXT$ = " | ||
- | Set $Inst_Para$ | ||
- | else | ||
- | Set $Inst_Para$ | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($INST_SystemType$ = "x86 System" | ||
- | Message " | ||
- | comment "Start setup program" | ||
- | Winbatch_install_32 | ||
- | Sub " | ||
- | endif | ||
- | |||
- | if ($INST_SystemType$ = "64 Bit System" | ||
- | Message " | ||
- | comment "Start setup program" | ||
- | Winbatch_install_64 | ||
- | Sub " | ||
- | endif | ||
- | |||
- | |||
- | endif | ||
- | |||
- | |||
- | [Winbatch_install_32] | ||
- | msiexec /i %ScriptPath%\$Inst_Prg32$ $Inst_Para$ | ||
- | msiexec /i %ScriptPath%}$Inst_Help_DE_32$ $InstHelp_Para$ | ||
- | |||
- | [Winbatch_install_64] | ||
- | msiexec /i %ScriptPath%\$Inst_Prg64$ $Inst_Para$ | ||
- | msiexec /i %ScriptPath%\$Inst_Help_DE_64$ $InstHelp_Para$ | ||
- | </ | ||
- | |||
- | ==== uninstall.ins ==== | ||
- | <code winst> | ||
- | [Initial] | ||
- | SetLogLevel=5 | ||
- | ; Log Errors in Logfile but don't abort: | ||
- | ExitOnError=false | ||
- | ; Show syntax errors in the script: | ||
- | ScriptErrorMessages=on | ||
- | ; Dont trace step by step through the script: | ||
- | TraceMode=off | ||
- | ; let started programs run in front of the winst window | ||
- | StayOnTop=false | ||
- | |||
- | [Actions] | ||
- | requiredWinstVersion >= " | ||
- | |||
- | DefVar $LogDir$ | ||
- | DefVar $ExitCode$ | ||
- | DefVar $ProductId$ | ||
- | DefVar $InstallDir32$ | ||
- | DefVar $InstallDir64$ | ||
- | DefVar $LicenseRequired$ | ||
- | DefVar $LicensePool$ | ||
- | DefVar $INST_SystemType$ | ||
- | DefVar $INST_architecture$ | ||
- | DefVar $DisplayName$ | ||
- | |||
- | Set $INST_SystemType$ = GetSystemType | ||
- | |||
- | |||
- | Set $LogDir$ = " | ||
- | |||
- | ; ---------------------------------------------------------------- | ||
- | ; - Please edit the following values | ||
- | ; ---------------------------------------------------------------- | ||
- | Set $ProductId$ = " | ||
- | Set $InstallDir32$ = " | ||
- | Set $LicenseRequired$ = " | ||
- | Set $LicensePool$ = " | ||
- | ; ---------------------------------------------------------------- | ||
- | |||
- | comment "Show product picture" | ||
- | ShowBitmap " | ||
- | |||
- | Message " | ||
- | |||
- | if FileExists(" | ||
- | comment "Start uninstall sub section" | ||
- | Sub " | ||
- | endif | ||
- | |||
- | if $LicenseRequired$ = " | ||
- | comment " | ||
- | Sub_free_license | ||
- | endif | ||
- | |||
- | [Sub_free_license] | ||
- | comment " | ||
- | |||
- | comment " | ||
- | DefVar $result$ | ||
- | Set $result$ = FreeLicense($LicensePool$) | ||
- | ; If there is an assignment of a license pool to the product, it is possible to use | ||
- | ; Set $result$ = FreeLicense("", | ||
- | ; | ||
- | ; If there is an assignment of a license pool to a windows software id, it is possible to use | ||
- | ; DefVar $WindowsSoftwareId$ | ||
- | ; $WindowsSoftwareId$ = " | ||
- | ; set $result$ = FreeLicense("", | ||
- | </ | ||
- | |||
- | ==== delsub.ins ==== | ||
- | <code winst> | ||
- | DefStringList $result$ | ||
- | DefStringList $result1$ | ||
- | |||
- | DefVar $INST_arch$ | ||
- | Set $INST_arch$ = " | ||
- | |||
- | DefVar $INST2_SystemType$ | ||
- | Set $INST2_SystemType$ = GetSystemType | ||
- | |||
- | DefVar $appKey$ | ||
- | DefVar $UninstallCommandList$ | ||
- | DefVar $UninstallCommandList64$ | ||
- | DefVar $appString$ | ||
- | DefVar $appKeyString$ | ||
- | DefVar $testName$ | ||
- | DefVar $exeString$ | ||
- | Set $appKeyString$ = " | ||
- | Set $appString$ = " | ||
- | |||
- | if ($INST2_SystemType$ = "x86 System" | ||
- | Message " | ||
- | comment "Start setup program" | ||
- | Set $result$ = getRegistryKeyList32(" | ||
- | for $app$ in $result$ do Sub_searchApp32 | ||
- | endif | ||
- | |||
- | if not ($UninstallCommandList$ = "" | ||
- | set $result1$ = splitString($UninstallCommandList$,"::" | ||
- | for $UninstallCommand$ in $result1$ do Winbatch_Uninstall | ||
- | sub " | ||
- | endif | ||
- | |||
- | if ($INST2_SystemType$ = "64 Bit System" | ||
- | Message " | ||
- | comment "Start setup program" | ||
- | Set $result$ = getRegistryKeyList64(" | ||
- | for $app$ in $result$ do Sub_searchApp64 | ||
- | endif | ||
- | |||
- | if not ($UninstallCommandList64$ = "" | ||
- | set $result1$ = splitString($UninstallCommandList64$,"::" | ||
- | for $UninstallCommand$ in $result1$ do Winbatch_Uninstall | ||
- | sub " | ||
- | endif | ||
- | |||
- | if fileExists($InstallDir32$) | ||
- | Files_delete_installdir | ||
- | endif | ||
- | |||
- | [Sub_searchApp32] | ||
- | set $appKey$ = " | ||
- | Set $testName$ = GetRegistryStringValue32($appKey$) | ||
- | if contains($testName$, | ||
- | set $appKey$ = " | ||
- | Set $testName$ = GetRegistryStringValue32($appKey$) | ||
- | if contains(lower($testName$), | ||
- | set $UninstallCommandList$ = $UninstallCommandList$ + " | ||
- | else | ||
- | Set $testName$ = unquote($testName$,'"' | ||
- | Set $testName$ = unquote($testName$,"'" | ||
- | Set $exeString$ = takeString(0, | ||
- | set $UninstallCommandList$ = $UninstallCommandList$ + $exeString$ + "exe /S::" | ||
- | endif | ||
- | endif | ||
- | |||
- | [Sub_searchApp64] | ||
- | set $appKey$ = " | ||
- | Set $testName$ = GetRegistryStringValue64($appKey$) | ||
- | if contains($testName$, | ||
- | set $appKey$ = " | ||
- | Set $testName$ = GetRegistryStringValue64($appKey$) | ||
- | if contains(lower($testName$), | ||
- | set $UninstallCommandList64$ = $UninstallCommandList64$ + " | ||
- | else | ||
- | Set $testName$ = unquote($testName$,'"' | ||
- | Set $testName$ = unquote($testName$,"'" | ||
- | Set $exeString$ = takeString(0, | ||
- | set $UninstallCommandList64$ = $UninstallCommandList64$ + '"' | ||
- | endif | ||
- | endif | ||
- | |||
- | [Winbatch_Uninstall] | ||
- | $UninstallCommand$ | ||
- | |||
- | [Files_delete_installdir] | ||
- | del -f -s " | ||
- | |||
- | </ | ||
- | |||
- | ====check_msi-exitcode.ins==== | ||
- | <code winst> | ||
- | ;Den ExitCode des Installers abfragen | ||
- | set $ExitCode$ = getLastExitCode | ||
- | |||
- | |||
- | |||
- | ;Loglevel anpassen | ||
- | SetLogLevel = 6 | ||
- | |||
- | |||
- | |||
- | ;Den ExitCode auswerten | ||
- | |||
- | if ($ExitCode$ = " | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | comment " | ||
- | setLogLevel = 4 | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | comment " | ||
- | setLogLevel = 4 | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | comment " | ||
- | setLogLevel = 4 | ||
- | endif | ||
- | |||
- | |||
- | |||
- | else | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | if ($ExitCode$ = " | ||
- | setLogLevel = 5 | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | |||
- | endif | ||
- | |||
- | |||
- | |||
- | ;Loglevel anpassen | ||
- | SetLogLevel = 4 | ||
- | </ | ||
- | ==== control ==== | ||
- | < | ||
- | [[Package] | ||
- | version: 1 | ||
- | depends: | ||
- | incremental: | ||
- | |||
- | [Product] | ||
- | type: localboot | ||
- | id: libreoffice_win | ||
- | name: LibreOffice | ||
- | description: | ||
- | advice: | ||
- | version: 6.3.4 | ||
- | priority: 0 | ||
- | licenseRequired: | ||
- | productClasses: | ||
- | setupScript: | ||
- | uninstallScript: | ||
- | updateScript: | ||
- | alwaysScript: | ||
- | onceScript: | ||
- | customScript: | ||
- | userLoginScript: | ||
- | |||
- | [ProductProperty] | ||
- | type: unicode | ||
- | name: updater_enabled | ||
- | multivalue: False | ||
- | editable: False | ||
- | description: | ||
- | values : [" | ||
- | default: [" | ||
- | |||
- | [ProductProperty] | ||
- | type: bool | ||
- | name: register_all_extensions | ||
- | description: | ||
- | default: True | ||
- | |||
- | [Changelog] | ||
- | libreoffice_win (4.3.7-1) testing; urgency=low | ||
- | |||
- | * Initial package | ||
- | |||
- | -- Dominik < | ||
- | |||
- | </ | ||
- | |||