====== Notepad2 4.2.25 ======
Adaptation of the opsi-template scripts for Notepad2. \\
Notepad2 is a fast and light-weight Notepad-like text editor with syntax highlighting.\\
Website of the author, with x86 and x64 installation files: http://www.flos-freeware.ch/notepad2.html \\
During the installation a notepad2.ini is copied to the installation directory of notepad2, which redirects notepad2 to use the ini file in the Application Data folder of the user. This way each user can mess with his own settings. \\
==== %scriptpath%\files\programfiles\notepad2.ini ====
[Notepad2]
Notepad2.ini=%APPDATA%\Notepad2.ini
==== %scriptpath%\files\appdata\notepad2.ini ====
[Notepad2]
[Settings]
SaveSettings=0
SaveRecentFiles=0
SaveFindReplace=0
CloseFind=0
CloseReplace=0
NoFindWrap=0
OpenWithDir=%USERPROFILE%\Desktop
Favorites=%CSIDL:MYDOCUMENTS%
PathNameFormat=2
WordWrap=0
WordWrapMode=0
WordWrapIndent=0
WordWrapSymbols=22
ShowWordWrapSymbols=0
MatchBraces=1
AutoCloseTags=0
HighlightCurrentLine=0
AutoIndent=1
ShowIndentGuides=0
TabsAsSpaces=0
TabIndents=1
BackspaceUnindents=0
TabWidth=8
IndentWidth=0
MarkLongLines=0
LongLinesLimit=72
LongLineMode=1
ShowSelectionMargin=0
ShowLineNumbers=1
ViewWhiteSpace=0
ViewEOLs=0
DefaultEncoding=0
SkipUnicodeDetection=0
LoadASCIIasUTF8=0
NoEncodingTags=0
DefaultEOLMode=0
FixLineEndings=1
FixTrailingBlanks=0
PrintHeader=1
PrintFooter=0
PrintColorMode=3
PrintZoom=10
PrintMarginLeft=2000
PrintMarginTop=2000
PrintMarginRight=2000
PrintMarginBottom=2000
SaveBeforeRunningTools=0
FileWatchingMode=0
ResetFileWatching=1
EscFunction=0
AlwaysOnTop=0
MinimizeToTray=0
TransparentMode=0
ToolbarButtons=1 2 3 4 0 5 6 0 7 8 9 0 10 11 0 12 0 13 14 0 15 16 0 17
ShowToolbar=1
ShowStatusbar=1
EncodingDlgSizeX=256
EncodingDlgSizeY=262
RecodeDlgSizeX=256
RecodeDlgSizeY=262
FileMRUDlgSizeX=412
FileMRUDlgSizeY=376
OpenWithDlgSizeX=384
OpenWithDlgSizeY=386
FavoritesDlgSizeX=334
FavoritesDlgSizeY=316
FindReplaceDlgPosX=0
FindReplaceDlgPosY=0
[Window]
1600x900 PosX=744
1600x900 PosY=16
1600x900 SizeX=840
1600x900 SizeY=840
1600x900 Maximized=0
[Custom Colors]
01=#000000
02=#0A246A
03=#3A6EA5
04=#003CE6
05=#006633
06=#608020
07=#648000
08=#A46000
09=#FFFFFF
10=#FFFFE2
11=#FFF1A8
12=#FFC000
13=#FF4000
14=#C80000
15=#B000B0
16=#B28B40
[Styles]
Use2ndDefaultStyle=0
DefaultScheme=0
AutoSelect=1
SelectDlgSizeX=304
SelectDlgSizeY=324
[Recent Files]
[Recent Find]
[Recent Replace]
==== control file ====
[Package]
version: 1
depends:
incremental: False
[Product]
type: localboot
id: notepad2
name: Notepad2 Text Editor
description: Notepad2 is a fast and lightweight Notepad-like text editor with syntax highlighting.
advice:
version: 4.2.25
priority: 0
licenseRequired: False
productClasses:
setupScript: setup3264.ins
uninstallScript: uninstall3264.ins
updateScript:
alwaysScript:
onceScript:
customScript:
userLoginScript:
[Changelog]
notepad2 (4.2.25-1) testing; urgency=low
* Initial package
-- ICT Thu, 03 Apr 2014 19:01:31 +0000
==== setup3264.ins ====
; 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/en/credits/
;
; License Management removed
[Actions]
requiredWinstVersion >= "4.10.8.6"
;DefVar $MsiId32$
;DefVar $UninstallProgram32$
;DefVar $MsiId64$
;DefVar $UninstallProgram64$
DefVar $LogDir$
DefVar $ProductId$
DefVar $MinimumSpace$
DefVar $InstallDir32$
DefVar $InstallDir64$
DefVar $ExitCode$
DefVar $INST_SystemType$
;DefVar $INST_architecture$
DefVar $INST_MsVersion$
set $INST_MsVersion$ = GetMsVersionInfo
Set $INST_SystemType$ = GetSystemType
;set $INST_architecture$ = GetProductProperty("install_architecture","system specific")
Set $LogDir$ = "%SystemDrive%\tmp"
; ----------------------------------------------------------------
; - 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$ = "notepad2"
Set $MinimumSpace$ = "50 MB"
; the path were we find the product after the installation
Set $InstallDir32$ = "%ProgramFiles32Dir%\" + $ProductId$
Set $InstallDir64$ = "%ProgramFiles64Dir%\" + $ProductId$
; ----------------------------------------------------------------
if not(HasMinimumSpace ("%SystemDrive%", $MinimumSpace$))
LogError "Not enough space on %SystemDrive%, " + $MinimumSpace$ + " on drive %SystemDrive% needed for " + $ProductId$
isFatalError
; Stop process and set installation status to failed
endif
if $INST_MsVersion$ < "5.1"
LogError "Windows XP or newer is required for " + $ProductId$
isFatalError
endif
comment "Show product picture"
ShowBitmap "%ScriptPath%\" + $ProductId$ + ".png" $ProductId$
if FileExists("%ScriptPath%\delsub3264.ins")
comment "Start uninstall sub section"
Sub "%ScriptPath%\delsub3264.ins"
endif
comment "installing"
if ($INST_SystemType$ = "x86 System")
;and ($INST_architecture$ = "system specific")) or ($INST_architecture$ = "both") or ($INST_architecture$ = "32 only")
Message "Installing " + $ProductId$ + "..."
comment "Start setup program"
Winbatch_install_32
Sub_check_exitcode
comment "Copy files"
Files_install_32 /32Bit
comment "Patch Registry"
Registry_install /32Bit
comment "Copy files to all userprofiles"
Files_install_allusers /AllNTUserProfiles
comment "Create shortcuts"
LinkFolder_install
endif
if ($INST_SystemType$ = "64 Bit System")
;and (($INST_architecture$ = "system specific") or ($INST_architecture$ = "both") or ($INST_architecture$ = "64 only"))
Message "Installing " + $ProductId$ + "..."
comment "Start setup program"
Winbatch_install_64
Sub_check_exitcode
comment "Copy files"
Files_install_64 /64Bit
comment "Patch Registry"
Registry_install /64Bit
comment "Copy files to all userprofiles"
Files_install_allusers /AllNTUserProfiles
comment "Create shortcuts"
LinkFolder_install
endif
[Winbatch_install_32]
"%ScriptPath%\files\Notepad2_4.2.25_x86.exe" /silent
[Files_install_32]
copy -s "%ScriptPath%\files\programfiles\Notepad2.ini" "$InstallDir32$"
[Winbatch_install_64]
"%ScriptPath%\files\Notepad2_4.2.25_x64.exe" /silent
[Files_install_64]
copy -s "%ScriptPath%\files\programfiles\Notepad2.ini" "$InstallDir64$"
[Files_install_allusers]
copy -s "%ScriptPath%\files\appdata\Notepad2.ini" "%UserProfileDir%\Application Data\"
[Registry_install]
; Example of setting some values of an registry key:
;
; openkey [HKEY_LOCAL_MACHINE\Software\$ProductId$]
; set "name1" = "some string value"
; set "name2" = REG_DWORD:0001
; set "name3" = REG_BINARY:00 af 99 cd
[LinkFolder_install]
; Example of deleting a folder from AllUsers startmenu:
;
; set_basefolder common_programs
; delete_subfolder $ProductId$
;
; Example of creating an shortcut to the installed exe in AllUsers startmenu:
;
; set_basefolder common_programs
; set_subfolder $ProductId$
;
; set_link
; name: $ProductId$
; target:
; parameters:
; working_dir: $InstallDir$
; icon_file:
; icon_index:
; end_link
;
; Example of creating an shortcut to the installed exe on AllUsers desktop:
;
; set_basefolder common_desktopdirectory
; set_subfolder ""
;
; set_link
; name: $ProductId$
; target:
; parameters:
; working_dir: $InstallDir$
; icon_file:
; icon_index: 2
; end_link
[Sub_check_exitcode]
comment "Test for installation success via exit code"
set $ExitCode$ = getLastExitCode
; informations to exit codes see
; http://msdn.microsoft.com/en-us/library/aa372835(VS.85).aspx
; http://msdn.microsoft.com/en-us/library/aa368542.aspx
if ($ExitCode$ = "0")
comment "Looks good: setup program gives exitcode zero"
else
comment "Setup program gives a exitcode unequal zero: " + $ExitCode$
if ($ExitCode$ = "1605")
comment "ERROR_UNKNOWN_PRODUCT 1605 This action is only valid for products that are currently installed."
comment "Uninstall of a not installed product failed - no problem"
else
if ($ExitCode$ = "1641")
comment "looks good: setup program gives exitcode 1641"
comment "ERROR_SUCCESS_REBOOT_INITIATED 1641 The installer has initiated a restart. This message is indicative of a success."
else
if ($ExitCode$ = "3010")
comment "looks good: setup program gives exitcode 3010"
comment "ERROR_SUCCESS_REBOOT_REQUIRED 3010 A restart is required to complete the install. This message is indicative of a success."
else
logError "Fatal: Setup program gives an unknown exitcode unequal zero: " + $ExitCode$
isFatalError
endif
endif
endif
endif
==== uninstall3264.ins ====
; Copyright (c) uib gmbh (www.uib.de)
; This sourcecode is owned by uib gmbh
; and published under the Terms of the General Public License.
; credits: http://www.opsi.org/en/credits/
;
; License Management removed
[Actions]
requiredWinstVersion >= "4.10.8.6"
;DefVar $MsiId32$
;DefVar $UninstallProgram32$
;DefVar $MsiId64$
;DefVar $UninstallProgram64$
DefVar $LogDir$
DefVar $ExitCode$
DefVar $ProductId$
DefVar $InstallDir32$
DefVar $InstallDir64$
DefVar $INST_SystemType$
;DefVar $INST_architecture$
Set $INST_SystemType$ = GetSystemType
;set $INST_architecture$ = GetProductProperty("install_architecture","system specific")
Set $LogDir$ = "%SystemDrive%\tmp"
; ----------------------------------------------------------------
; - Please edit the following values -
; ----------------------------------------------------------------
Set $ProductId$ = "notepad2"
Set $InstallDir32$ = "%ProgramFiles32Dir%\" + $ProductId$
Set $InstallDir64$ = "%ProgramFiles64Dir%\" + $ProductId$
; ----------------------------------------------------------------
comment "Show product picture"
ShowBitmap "%ScriptPath%\" + $ProductId$ + ".png" $ProductId$
Message "Uninstalling " + $ProductId$ + " ..."
if FileExists("%ScriptPath%\delsub3264.ins")
comment "Start uninstall sub section"
Sub "%ScriptPath%\delsub3264.ins"
endif
==== delsub3264.ins ====
; Copyright (c) uib gmbh (www.uib.de)
; This sourcecode is owned by uib gmbh
; and published under the Terms of the General Public License.
; credits: http://www.opsi.org/en/credits/
;
; License Management removed
DefVar $UninstallProgram32$
DefVar $UninstallProgram64$
Set $UninstallProgram32$ = $InstallDir32$ + "\Notepad2.inf"
Set $UninstallProgram64$ = $InstallDir64$ + "\Notepad2.inf"
if ($INST_SystemType$ = "x86 System")
;and ($INST_architecture$ = "system specific")) or ($INST_architecture$ = "both") or ($INST_architecture$ = "32 only")
Message "Uninstalling " + $ProductId$ + "..."
if FileExists($UninstallProgram32$)
comment "Uninstall program found, starting uninstall"
Winbatch_uninstall_32
sub_check_exitcode
endif
; if not (GetRegistryStringValue32("[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\" + $MsiId32$ + "] DisplayName") = "")
; comment "MSI id " + $MsiId32$ + " found in registry, starting msiexec to uninstall"
; Winbatch_uninstall_msi_32
; sub_check_exitcode
; endif
comment "Delete files"
Files_uninstall_32 /32Bit
Files_uninstall_allusers /AllNTUserProfiles
comment "Cleanup registry"
Registry_uninstall /32Bit
endif
if ($INST_SystemType$ = "64 Bit System")
;and (($INST_architecture$ = "system specific") or ($INST_architecture$ = "both") or ($INST_architecture$ = "64 only"))
Message "Uninstalling " + $ProductId$ + "..."
if FileExists($UninstallProgram64$)
comment "Uninstall program found, starting uninstall"
Winbatch_uninstall_64
sub_check_exitcode
endif
; if not (GetRegistryStringValue64("[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\" + $MsiId64$ + "] DisplayName") = "")
; comment "MSI id " + $MsiId64$ + " found in registry, starting msiexec to uninstall"
; Winbatch_uninstall_msi_64
; sub_check_exitcode
; endif
comment "Delete files"
Files_uninstall_64 /64Bit
Files_uninstall_allusers /AllNTUserProfiles
comment "Cleanup registry"
Registry_uninstall /64Bit
endif
comment "Delete program shortcuts"
LinkFolder_uninstall
[Winbatch_uninstall_32]
rundll32.exe advpack.dll,LaunchINFSectionEx "$UninstallProgram32$",DefaultUninstall,,8,N
[Files_uninstall_32]
; Example for recursively deleting the installation directory (don't forget the trailing backslash):
;
; delete -sf "$InstallDir32$\"
[Winbatch_uninstall_64]
rundll32.exe advpack.dll,LaunchINFSectionEx "$UninstallProgram64$",DefaultUninstall,,8,N
[Files_uninstall_64]
; Example for recursively deleting the installation directory (don't forget the trailing backslash):
;
; delete -sf "$InstallDir64$\"
[Files_uninstall_allusers]
delete -f "%AppdataDir%\Notepad2.ini"
[Registry_uninstall]
; Example of deleting a registry key:
;
; deletekey [HKEY_LOCAL_MACHINE\Software\$ProductId$]
[LinkFolder_uninstall]
; Example of deleting a folder from AllUsers startmenu:
;
; set_basefolder common_programs
; delete_subfolder $ProductId$
;
; Example of deleting a shortcut from AllUsers desktop:
;
; set_basefolder common_desktopdirectory
; set_subfolder ""
; delete_element $ProductId$
[Sub_check_exitcode]
comment "Test for installation success via exit code"
set $ExitCode$ = getLastExitCode
; informations to exit codes see
; http://msdn.microsoft.com/en-us/library/aa372835(VS.85).aspx
; http://msdn.microsoft.com/en-us/library/aa368542.aspx
if ($ExitCode$ = "0")
comment "Looks good: setup program gives exitcode zero"
else
comment "Setup program gives a exitcode unequal zero: " + $ExitCode$
if ($ExitCode$ = "1605")
comment "ERROR_UNKNOWN_PRODUCT 1605 This action is only valid for products that are currently installed."
comment "Uninstall of a not installed product failed - no problem"
else
if ($ExitCode$ = "1641")
comment "looks good: setup program gives exitcode 1641"
comment "ERROR_SUCCESS_REBOOT_INITIATED 1641 The installer has initiated a restart. This message is indicative of a success."
else
if ($ExitCode$ = "3010")
comment "looks good: setup program gives exitcode 3010"
comment "ERROR_SUCCESS_REBOOT_REQUIRED 3010 A restart is required to complete the install. This message is indicative of a success."
else
logError "Fatal: Setup program gives an unknown exitcode unequal zero: " + $ExitCode$
isFatalError
endif
endif
endif
endif