userspace:libre_cad
Table of Contents
Libre CAD
Tested with opsi 4.2
Windows 10 x64 Ent SAC 19.09, 20H2 & 21H2
You can download Libre CAD from here: https://librecad.org/#download
type: localboot
id: libre-cad
description: LibreCAD is a free Open Source 2D CAD application for Windows, Apple and Linux
Hint: After the setup is completed Libre CAD tries to open a web page for a donation request. This is unfortunately a non-controllable behavior after the program installation and occurs once. However, a web browser is not preselected by the Windows 10 app control. The app selection message can be ignored, this is suppressed by the final restart after installation.
tree: |-- setup.opsiscript |-- delsub.opsiscript |-- uninstall.opsiscript |-- LibreCAD-Installer-2.2.0.exe |-- Libre_CAD.png |-- check_nsis_exitcode.opsiscript
setup.opsiscript
; Copyright (c) uib gmbh (www.uib.de)
; This sourcecode is owned by uib
; and published under the Terms of the General Public License.
; credits: http://www.opsi.org/credits/
[Initial]
SetLogLevel=6
; 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 >= "4.11.3.3"
; ----------------------------------------------------------------
; - define Variables -
; ----------------------------------------------------------------
DefVar $UninstallProgram$
DefVar $LogDir$
DefVar $ProductId$
DefVar $ProductPic$
DefVar $MinimumSpace$
DefVar $InstallDir$
DefVar $ExitCode$
DefVar $INST_SystemType$
DefVar $INST_architecture$
DefVar $Version$
DefVar $Inst_Cmd$
DefVar $Inst_Prg$
DefVar $Uninst_Prg$
DefVar $Uninst_Cmd$
DefVar $INST_MsVersion$
DefVar $OSVersion$
DefVar $ErrorMsg$
DefVar $target$
DefVar $workdir$
; ----------------------------------------------------------------
; ----------------------------------------------------------------
; - Setting Variables and getting Product Property's -
; ----------------------------------------------------------------
Set $INST_SystemType$ = GetSystemType
Set $LogDir$ = "%SystemDrive%\tmp"
Set $INST_MsVersion$ = GetMSVersionInfo
include_append "%ScriptPath%\check_nsis_exitcode.opsiscript"
; ----------------------------------------------------------------
; ----------------------------------------------------------------
; - Please edit the following values -
; ----------------------------------------------------------------
Set $ProductId$ = "LibreCAD"
Set $ProductPic$ = "Libre_CAD.png"
Set $Version$ = "2.2.0"
Set $MinimumSpace$ = "500 MB"
Set $InstallDir$ = "%ProgramFiles32Dir%\LibreCAD"
Set $Inst_Prg$ = "LibreCAD-Installer-"+$Version$+".exe"
Set $Inst_Cmd$ = ' /S'
Set $Uninst_Prg$ = "\uninstall.exe"
Set $Uninst_Cmd$ = ' /S'
Set $OSVersion$ = "6.1"
; for Start Menu entry
Set $target$ = $InstallDir$ + "\LibreCAD.exe"
Set $workdir$ = $InstallDir$
; ----------------------------------------------------------------
; ----------------------------------------------------------------
; - Check System Requierements -
; ----------------------------------------------------------------
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
endif
if CompareDotSeparatedNumbers($INST_MsVersion$,"<=",$OSVersion$)
LogError "Wrong OS Version. At least Windows 7 is required for installation!"
isFatalError
endif
; ----------------------------------------------------------------
; ----------------------------------------------------------------
; - Installation -
; ----------------------------------------------------------------
comment "Show product picture"
ShowBitmap "%ScriptPath%\" + $ProductPic$ $ProductId$
comment "Check if preverious Version is installed, uninstall if so."
if FileExists("%ScriptPath%\delsub.opsiscript")
comment "Start uninstall sub section"
Sub "%ScriptPath%\delsub.opsiscript"
endif
comment "installing"
if ($INST_SystemType$ = "x86 System")
Message "Installing " + $ProductId$ + " " + $Version$ + " on 32 Bit OS."
comment "Start setup program"
Winbatch_install
sub "%SCRIPTPATH%\check_nsis_exitcode.opsiscript"
LinkFolder_Startmenu
endif
if ($INST_SystemType$ = "64 Bit System")
Message "Installing " + $ProductId$ + " " + $Version$ + " on 64 Bit OS"
comment "Start setup program"
Winbatch_install
sub "%SCRIPTPATH%\check_nsis_exitcode.opsiscript"
LinkFolder_Startmenu
endif
ExitWindows /reboot
; ----------------------------------------------------------------
; ----------------------------------------------------------------
; install section
; ----------------------------------------------------------------
[Winbatch_install]
"%ScriptPath%\$Inst_Prg$" $Inst_Cmd$
[LinkFolder_Startmenu]
set_basefolder common_programs
set_subfolder $ProductId$
set_link
name: $ProductId$
target: $target$
;parameters:
working_dir: $workdir$
;icon_file:
;icon_index:
end_link
; ----------------------------------------------------------------
delsub.opsiscript
; ---------------------------------------------------------------- ; Deinstallation ; ---------------------------------------------------------------- Set $UninstallProgram$ = $InstallDir$ + $Uninst_Prg$ if ($INST_SystemType$ = "x86 System") if FileExists($UninstallProgram$) Message "Uninstalling " + $ProductId$ + " x86" comment "Uninstall program found, starting uninstall" Winbatch_uninstall sub "%SCRIPTPATH%\check_nsis_exitcode.opsiscript" comment "Removing "+$InstallDir$ Files_uninstall else comment "Unistall Programm not found." endif endif if ($INST_SystemType$ = "64 Bit System") if FileExists($UninstallProgram$) Message "Uninstalling " + $ProductId$+ " x64" comment "Uninstall program found, starting uninstall" Winbatch_uninstall sub "%SCRIPTPATH%\check_nsis_exitcode.opsiscript" comment "Removing "+$InstallDir$ Files_uninstall else comment "Unistall Programm not found." endif endif ; ---------------------------------------------------------------- ; ---------------------------------------------------------------- ; deinstall section ; ---------------------------------------------------------------- [Winbatch_uninstall] "$UninstallProgram$" $Uninst_Cmd$ [Files_uninstall] del -sf "$InstallDir$" ; ----------------------------------------------------------------
uninstall.opsiscript
[Initial]
LogLevel=6
; 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 >= "4.11.3.3"
; ----------------------------------------------------------------
; - define Variables -
; ----------------------------------------------------------------
DefVar $UninstallProgram$
DefVar $ProductPic$
DefVar $LogDir$
DefVar $ExitCode$
DefVar $ProductId$
DefVar $InstallDir$
DefVar $INST_SystemType$
DefVar $INST_architecture$
DefVar $Uninst_Cmd$
DefVar $Uninst_Prg$
DefVar $ErrorMsg$
DefVar $result$
; ----------------------------------------------------------------
; ----------------------------------------------------------------
; - Setting Variables and getting Product Property's -
; ----------------------------------------------------------------
Set $INST_SystemType$ = GetSystemType
Set $LogDir$ = "%SystemDrive%\tmp"
include_append "%ScriptPath%\check_nsis_exitcode.opsiscript"
; ----------------------------------------------------------------
; ----------------------------------------------------------------
; - Please edit the following values -
; ----------------------------------------------------------------
Set $ProductId$ = "Libre CAD"
Set $ProductPic$ = "Libre_CAD.png"
Set $InstallDir$ = "%ProgramFiles32Dir%\LibreCAD"
Set $Uninst_Prg$ = "\uninstall.exe"
Set $Uninst_Cmd$ = ' /S'
; ----------------------------------------------------------------
; ----------------------------------------------------------------
; - Deinstallation -
; ----------------------------------------------------------------
comment "Show product picture"
ShowBitmap "%ScriptPath%\" + $ProductId$ + ".png" $ProductId$
Message "Uninstalling " + $ProductId$ + " ..."
if FileExists("%ScriptPath%\delsub.opsiscript")
comment "Start uninstall sub section"
Sub "%ScriptPath%\delsub.opsiscript"
else
comment "No unistall Script found."
LogError "No unistall Script found. Check OPSI Program Package."
isFatalError
endif
; ----------------------------------------------------------------
check_nsis_exitcode.opsiscript
comment "Check exit code" set $ExitCode$ = getLastExitCode if ($ExitCode$ = "0") comment "ExitCode = "+$ExitCode$+" Setup was successfully run to completion." else if ($ExitCode$ = "1") set $ErrorMsg$ = "ExitCode = "+$ExitCode$+" - Installation aborted by user (cancel button)" else set $ErrorMsg$ = "ExitCode = "+$ExitCode$+" - Error detected" endif logError $ErrorMsg$ isFatalError "Installer failed" endif
userspace/libre_cad.txt · Last modified: by chris_10
