Difference between revisions of "Notepad plus plus"

From WPKG | Open Source Software Deployment and Distribution
Jump to: navigation, search
(Disable Auto Updater: Note that this has the side effect of breaking the Plugin Manager, whose gpup.exe lives in this directory.)
(WPKG Package for Notepad++)
Line 8: Line 8:
  
 
<source lang="xml">
 
<source lang="xml">
<package
+
<!-- Notepad plus plus -->
  id="NotepadPlusPlus"
+
<package id="npp" name="Notepad++" revision="15" reboot="false" priority="5800">
  name="Notepad++"
+
<variable name="version" value="6.5.5" />
  revision="%version%"
+
<check type="uninstall" condition="versionequalto" path="Notepad++" value="%version%" />
  reboot="false"
+
<!-- remove plug-ins to prevent installer hanging -->
  priority="30">
+
<!-- Exit code of "1" can occur if there are no .dll files in the plugins dir. This happens if a previous installation has been uninstalled,
 
+
since the uninstaller fails to remove the plugins folder. -->
  <variable name="version" value="5.9.5" />
+
<install cmd='%COMSPEC% /c if exist "%PROGRAMFILES%\Notepad++\plugins" del /f /q "%PROGRAMFILES%\Notepad++\plugins\*.dll"' architecture="x86"><exit code="1"/></install>
 
+
<install cmd='%COMSPEC% /c if exist "%PROGRAMFILES(x86)%\Notepad++\plugins" del /f /q "%PROGRAMFILES(x86)%\Notepad++\plugins\*.dll"' architecture="x64"><exit code="1"/></install>
  <check type="uninstall" condition="versionequalto" path="Notepad++" value="%version%" />
+
<install cmd="%SOFTWARE%\npp\npp.%version%.Installer.exe /S" />
 
+
<install cmd='%COMSPEC% /c rmdir /S /Q "%PROGRAMFILES%\Notepad++\updater"' architecture="x86"/>
  <!-- remove plug-ins to prevent installer hanging -->
+
<install cmd='%COMSPEC% /c rmdir /S /Q "%PROGRAMFILES(x86)%\Notepad++\updater"' architecture="x64"/>
  <!-- Exit code of "1" can occur if there are no .dll files in the plugins dir. This happens if a previous installation has been uninstalled,
+
<!-- <install cmd='%COMSPEC% /c rmdir /s /q "%ALLUSERSPROFILE%\Startmenü\Programme\Notepad++"' /> -->
    since the uninstaller fails to remove the plugins folder. -->
+
<!-- remove plug-ins to prevent installer hanging -->
  <install cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins" del /f /q "%ProgramFiles%\Notepad++\plugins\*.dll"' ><exit code="1"/></install>
+
<upgrade cmd='%COMSPEC% /c if exist "%PROGRAMFILES%\Notepad++\plugins" del /f /q "%PROGRAMFILES%\Notepad++\plugins\*.dll"' architecture="x86"><exit code="1"/></upgrade>
  <install cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins" del /f /q "%ProgramFiles(x86)%\Notepad++\plugins\*.dll"' ><exit code="1"/></install>
+
<upgrade cmd='%COMSPEC% /c if exist "%PROGRAMFILES(x86)%\Notepad++\plugins" del /f /q "%PROGRAMFILES(x86)%\Notepad++\plugins\*.dll"' architecture="x64"><exit code="1"/></upgrade>
  <install cmd="%SOFTWARE%\Notepad++\npp.%version%.Installer.exe /S" />
+
<upgrade cmd="%SOFTWARE%\npp\npp.%version%.Installer.exe /S" />
 
+
<upgrade cmd='%COMSPEC% /c rmdir /S /Q "%PROGRAMFILES%\Notepad++\updater"' architecture="x86"/>
  <!-- remove plug-ins to prevent installer hanging -->
+
<upgrade cmd='%COMSPEC% /c rmdir /S /Q "%PROGRAMFILES(x86)%\Notepad++\updater"' architecture="x64"/>
  <upgrade cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins" del /f /q "%ProgramFiles%\Notepad++\plugins\*.dll"' ><exit code="1"/></upgrade>
+
<!-- <upgrade cmd='%COMSPEC% /c rmdir /s /q "%ALLUSERSPROFILE%\Startmenü\Programme\Notepad++"' /> -->
  <upgrade cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins" del /f /q "%ProgramFiles(x86)%\Notepad++\plugins\*.dll"' ><exit code="1"/></upgrade>
+
<remove cmd='%COMSPEC% /c if exist "%PROGRAMFILES%\Notepad++\plugins" del /f /q "%PROGRAMFILES%\Notepad++\plugins\*.dll"' ><exit code="1"/></remove>
  <upgrade cmd="%SOFTWARE%\Notepad++\npp.%version%.Installer.exe /S" />
+
<remove cmd='%COMSPEC% /c if exist "%PROGRAMFILES(x86)%\Notepad++\plugins" del /f /q "%PROGRAMFILES(x86)%\Notepad++\plugins\*.dll"' ><exit code="1"/></remove>
 
+
<remove cmd='%COMSPEC% /c if exist "%PROGRAMFILES%\Notepad++\uninstall.exe" "%PROGRAMFILES%\Notepad++\uninstall.exe" /S' architecture="x86" />
  <!-- Windows 32-bit -->
+
<remove cmd='%COMSPEC% /c if exist "%PROGRAMFILES(x86)%\Notepad++\uninstall.exe" "%PROGRAMFILES(x86)%\Notepad++\uninstall.exe" /S' architecture="x64" />
  <remove cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins" del /f /q "%ProgramFiles%\Notepad++\plugins\*.dll"' ><exit code="1"/></remove>
+
<remove cmd='%COMSPEC% /C rmdir /s /q "%PROGRAMFILES%\Notepad++"' architecture="x86"/>
  <remove cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\uninstall.exe" "%ProgramFiles%\Notepad++\uninstall.exe" /S' />
+
<remove cmd='%COMSPEC% /C rmdir /s /q "%PROGRAMFILES(x86)%\Notepad++"' architecture="x64"/>
  <!-- Windows 64-bit -->
+
</package>
  <remove cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins" del /f /q "%ProgramFiles(x86)%\Notepad++\plugins\*.dll"' ><exit code="1"/></remove>
+
  <remove cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\uninstall.exe" "%ProgramFiles(x86)%\Notepad++\uninstall.exe" /S' />
+
</package>
+
 
</source>
 
</source>
  

Revision as of 11:42, 28 April 2014

Notepad++ is a great little source code editor and general plain text editor available from http://notepad-plus-plus.org/.

Plug-ins are available from SourceForge.

WPKG Package for Notepad++

This package supports Windows 32-bit and 64-bit.

<!-- Notepad plus plus -->			
	<package id="npp" name="Notepad++" revision="15" reboot="false" priority="5800">
		<variable name="version" value="6.5.5" />
		<check type="uninstall" condition="versionequalto" path="Notepad++" value="%version%" />
		<!-- remove plug-ins to prevent installer hanging -->
		<!-- Exit code of "1" can occur if there are no .dll files in the plugins dir. This happens if a previous installation has been uninstalled,
		 since the uninstaller fails to remove the plugins folder. -->
		<install cmd='%COMSPEC% /c if exist "%PROGRAMFILES%\Notepad++\plugins" del /f /q "%PROGRAMFILES%\Notepad++\plugins\*.dll"' architecture="x86"><exit code="1"/></install>
		<install cmd='%COMSPEC% /c if exist "%PROGRAMFILES(x86)%\Notepad++\plugins" del /f /q "%PROGRAMFILES(x86)%\Notepad++\plugins\*.dll"' architecture="x64"><exit code="1"/></install>
		<install cmd="%SOFTWARE%\npp\npp.%version%.Installer.exe /S" />
		<install cmd='%COMSPEC% /c rmdir /S /Q "%PROGRAMFILES%\Notepad++\updater"' architecture="x86"/>
		<install cmd='%COMSPEC% /c rmdir /S /Q "%PROGRAMFILES(x86)%\Notepad++\updater"' architecture="x64"/>
		<!-- <install cmd='%COMSPEC% /c rmdir /s /q "%ALLUSERSPROFILE%\Startmenü\Programme\Notepad++"' /> -->
		<!-- remove plug-ins to prevent installer hanging -->
		<upgrade cmd='%COMSPEC% /c if exist "%PROGRAMFILES%\Notepad++\plugins" del /f /q "%PROGRAMFILES%\Notepad++\plugins\*.dll"' architecture="x86"><exit code="1"/></upgrade>
		<upgrade cmd='%COMSPEC% /c if exist "%PROGRAMFILES(x86)%\Notepad++\plugins" del /f /q "%PROGRAMFILES(x86)%\Notepad++\plugins\*.dll"' architecture="x64"><exit code="1"/></upgrade>
		<upgrade cmd="%SOFTWARE%\npp\npp.%version%.Installer.exe /S" />
		<upgrade cmd='%COMSPEC% /c rmdir /S /Q "%PROGRAMFILES%\Notepad++\updater"' architecture="x86"/>
		<upgrade cmd='%COMSPEC% /c rmdir /S /Q "%PROGRAMFILES(x86)%\Notepad++\updater"' architecture="x64"/>
		<!-- <upgrade cmd='%COMSPEC% /c rmdir /s /q "%ALLUSERSPROFILE%\Startmenü\Programme\Notepad++"' />	-->
		<remove cmd='%COMSPEC% /c if exist "%PROGRAMFILES%\Notepad++\plugins" del /f /q "%PROGRAMFILES%\Notepad++\plugins\*.dll"' ><exit code="1"/></remove>
		<remove cmd='%COMSPEC% /c if exist "%PROGRAMFILES(x86)%\Notepad++\plugins" del /f /q "%PROGRAMFILES(x86)%\Notepad++\plugins\*.dll"' ><exit code="1"/></remove>
		<remove cmd='%COMSPEC% /c if exist "%PROGRAMFILES%\Notepad++\uninstall.exe" "%PROGRAMFILES%\Notepad++\uninstall.exe" /S' architecture="x86" />
		<remove cmd='%COMSPEC% /c if exist "%PROGRAMFILES(x86)%\Notepad++\uninstall.exe" "%PROGRAMFILES(x86)%\Notepad++\uninstall.exe" /S' architecture="x64" />
		<remove cmd='%COMSPEC% /C rmdir /s /q "%PROGRAMFILES%\Notepad++"' architecture="x86"/>
		<remove cmd='%COMSPEC% /C rmdir /s /q "%PROGRAMFILES(x86)%\Notepad++"' architecture="x64"/>
	</package>

WPKG packages for some Notepad++ Plugins

    <package
        id="NotepadPlusPlusComparePlugin"
        name="Notepad++ Compare Plugin"
        revision="1.5.3.1"
        reboot="false"
        priority="10">

        <depends package-id="NotepadPlusPlus" />

        <check type='logical' condition='or'>
            <check type="file" condition="versiongreaterorequal" path="%ProgramFiles%\Notepad++\plugins\ComparePlugin.dll" value="1.5.3.1" />
            <check type="file" condition="versiongreaterorequal" path="%ProgramFiles(x86)%\Notepad++\plugins\ComparePlugin.dll" value="1.5.3.1" />
        </check>

        <install cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\Compare\ComparePlugin.dll" "%ProgramFiles%\Notepad++\plugins"' />
        <install cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\Compare\ComparePlugin.dll" "%ProgramFiles(x86)%\Notepad++\plugins"' />

        <upgrade cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\Compare\ComparePlugin.dll" "%ProgramFiles%\Notepad++\plugins"' />
        <upgrade cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\Compare\ComparePlugin.dll" "%ProgramFiles(x86)%\Notepad++\plugins"' />

        <remove cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins\ComparePlugin.dll" del /f /q "%ProgramFiles%\Notepad++\plugins\ComparePlugin.dll"' />
        <remove cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins\ComparePlugin.dll" del /f /q "%ProgramFiles(x86)%\Notepad++\plugins\ComparePlugin.dll"' />
    </package>

    <package
        id="NotepadPlusPlusWinMgrPlugin"
        name="Notepad++ Window Manager Plugin"
        revision="1.2.2.0"
        reboot="false"
        priority="10">

        <depends package-id="NotepadPlusPlus" />

        <check type='logical' condition='or'>
            <check type="file" condition="versiongreaterorequal" path="%ProgramFiles%\Notepad++\plugins\WindowManager.dll" value="1.2.2.0" />
            <check type="file" condition="versiongreaterorequal" path="%ProgramFiles(x86)%\Notepad++\plugins\WindowManager.dll" value="1.2.2.0" />
        </check>

        <install cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\WindowManager\WindowManager.dll" "%ProgramFiles%\Notepad++\plugins"' />
        <install cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\WindowManager\WindowManager.dll" "%ProgramFiles(x86)%\Notepad++\plugins"' />

        <upgrade cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\WindowManager\WindowManager.dll" "%ProgramFiles%\Notepad++\plugins"' />
        <upgrade cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\WindowManager\WindowManager.dll" "%ProgramFiles(x86)%\Notepad++\plugins"' />

        <remove cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins\WindowManager.dll" del /f /q "%ProgramFiles%\Notepad++\plugins\WindowManager.dll"' />
        <remove cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins\WindowManager.dll" del /f /q "%ProgramFiles(x86)%\Notepad++\plugins\WindowManager.dll"' />
    </package>

    <package
        id="NotepadPlusPlusXMLToolsExtLibs"
        name="Notepad++ XML Tools Plugin External Libraries"
        revision="1"
        reboot="false"
        priority="20">

        <depends package-id="NotepadPlusPlus" />

        <check type='logical' condition='or'>
            <check type="file" condition="sizeequals" path="%ProgramFiles%\Notepad++\libxml2.dll" value="975360" />
            <check type="file" condition="sizeequals" path="%ProgramFiles(x86)%\Notepad++\libxml2.dll" value="975360" />
        </check>

        <install cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\XMLTools\ext_libs\*.dll" "%ProgramFiles%\Notepad++"' />
        <install cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\XMLTools\ext_libs\*.dll" "%ProgramFiles(x86)%\Notepad++"' />

        <upgrade cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\XMLTools\ext_libs\*.dll" "%ProgramFiles%\Notepad++"' />
        <upgrade cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\XMLTools\ext_libs\*.dll" "%ProgramFiles(x86)%\Notepad++"' />

        <remove cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\iconv.dll" del /f /q "%ProgramFiles%\Notepad++\iconv.dll"' />
        <remove cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\libxml2.dll" del /f /q "%ProgramFiles%\Notepad++\libxml2.dll"' />
        <remove cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\libxslt.dll" del /f /q "%ProgramFiles%\Notepad++\libxslt.dll"' />
        <remove cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\zlib1.dll" del /f /q "%ProgramFiles%\Notepad++\zlib1.dll"' />
        <remove cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\iconv.dll" del /f /q "%ProgramFiles(x86)%\Notepad++\iconv.dll"' />
        <remove cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\libxml2.dll" del /f /q "%ProgramFiles(x86)%\Notepad++\libxml2.dll"' />
        <remove cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\libxslt.dll" del /f /q "%ProgramFiles(x86)%\Notepad++\libxslt.dll"' />
        <remove cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\zlib1.dll" del /f /q "%ProgramFiles(x86)%\Notepad++\zlib1.dll"' />
    </package>

    <package
        id="NotepadPlusPlusXMLToolsPlugin"
        name="Notepad++ XML Tools Plugin"
        revision="1.0.0.1"
        reboot="false"
        priority="10">

        <depends package-id="NotepadPlusPlusXMLToolsExtLibs" />
        <depends package-id="NotepadPlusPlus" />

        <check type='logical' condition='or'>
            <check type="file" condition="versiongreaterorequal" path="%ProgramFiles%\Notepad++\plugins\XMLTools.dll" value="1.0.0.1" />
            <check type="file" condition="versiongreaterorequal" path="%ProgramFiles(x86)%\Notepad++\plugins\XMLTools.dll" value="1.0.0.1" />
        </check>

        <install cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\XMLTools\XMLTools.dll" "%ProgramFiles%\Notepad++\plugins"' />
        <install cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\XMLTools\XMLTools.dll" "%ProgramFiles(x86)%\Notepad++\plugins"' />

        <upgrade cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\XMLTools\XMLTools.dll" "%ProgramFiles%\Notepad++\plugins"' />
        <upgrade cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\XMLTools\XMLTools.dll" "%ProgramFiles(x86)%\Notepad++\plugins"' />

        <remove cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins\XMLTools.dll" del /f /q "%ProgramFiles%\Notepad++\plugins\XMLTools.dll"' />
        <remove cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins\XMLTools.dll" del /f /q "%ProgramFiles(x86)%\Notepad++\plugins\XMLTools.dll"' />
    </package>

    <package
        id="NotepadPlusPlusDocMonPlugin"
        name="Notepad++ Document Monitor Plugin"
        revision="2.2.0.0"
        reboot="false"
        priority="10">

        <depends package-id="NotepadPlusPlus" />

        <check type='logical' condition='or'>
            <check type="file" condition="versiongreaterorequal" path="%ProgramFiles%\Notepad++\plugins\docMonitor.dll" value="2.2.0.0" />
            <check type="file" condition="versiongreaterorequal" path="%ProgramFiles(x86)%\Notepad++\plugins\docMonitor.dll" value="2.2.0.0" />
        </check>

        <install cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\DocMonitor\docMonitor.unicode.dll" "%ProgramFiles%\Notepad++\plugins\docMonitor.dll"' />
        <install cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\DocMonitor\docMonitor.unicode.dll" "%ProgramFiles(x86)%\Notepad++\plugins\docMonitor.dll"' />

        <upgrade cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\DocMonitor\docMonitor.unicode.dll" "%ProgramFiles%\Notepad++\plugins\docMonitor.dll"' />
        <upgrade cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins" copy /b /v "%SOFTWARE%\Notepad++\DocMonitor\docMonitor.unicode.dll" "%ProgramFiles(x86)%\Notepad++\plugins\docMonitor.dll"' />

        <remove cmd='%ComSpec% /c if exist "%ProgramFiles%\Notepad++\plugins\docMonitor.dll" del /f /q "%ProgramFiles%\Notepad++\plugins\docMonitor.dll"' />
        <remove cmd='%ComSpec% /c if exist "%ProgramFiles(x86)%\Notepad++\plugins\docMonitor.dll" del /f /q "%ProgramFiles(x86)%\Notepad++\plugins\docMonitor.dll"' />
    </package>

Disable Auto Updater

"Thanks to GUP, (Generic Updater for win32) project (see http://sourceforge.net/projects/gup-w32/ and http://gup-w32.sourceforge.net/) Notepad++ v4.6 and later has the capacity to search and install the update package (if available) from Internet. Only Installer integrates the auto-updater module (optional). So if you use zipped version, you have to download GUP from its project page, create "update" directory in Notepad++ installed directory, unzip the package into it then edit gup.xml file."

Delete or rename the "updater" folder in the Notepad++ application folder to disable automatic updates:

<install cmd='%COMSPEC% /c rmdir /S /Q "%PROGRAMFILES%\Notepad++\updater"' />
<upgrade cmd='%COMSPEC% /c rmdir /S /Q "%PROGRAMFILES%\Notepad++\updater"' />

Note that this has the side effect of breaking the Plugin Manager, whose gpup.exe lives in this directory.