Difference between revisions of "WinMerge"

From WPKG | Open Source Software Deployment and Distribution
Jump to: navigation, search
(new version 2.10.4.0)
(WinMerge)
Line 74: Line 74:
 
</packages>
 
</packages>
 
</source>
 
</source>
 +
 +
Or with X64 support, and no cmd files:
 +
<package
 +
id="winmerge"
 +
name="WinMerge"
 +
revision="2"
 +
reboot="false"
 +
priority="1">
 +
<variable name="version" value="2.12.4" />
 +
<variable name="packagedir" value="%SOFTWARE%\Standard\WinMerge" />
 +
<check type="uninstall" condition="exists" path="WinMerge %version%" />
 +
 +
<install cmd='%packagedir%\WinMerge-%version%-Setup.exe /VERYSILENT /SP- /NORESTART' />
 +
<upgrade cmd='%packagedir%\WinMerge-%version%-Setup.exe /VERYSILENT /SP- /NORESTART' />
 +
 +
<remove  cmd='"%ProgramFiles%\WinMerge\unins000.exe" /VERYSILENT /SP- /NORESTART' architecture="x86" />
 +
<remove  cmd='"%ProgramFiles(x86)%\WinMerge\unins000.exe" /VERYSILENT /SP- /NORESTART' architecture="x64" />
 +
</package>
 +
  
 
[[category:Silent Installers]]
 
[[category:Silent Installers]]

Revision as of 11:08, 7 October 2011

WinMerge

Silent install for WinMerge.

WinMerge is an Open Source visual text file differencing and merging tool for Win32 platforms. See WinMerge Homepage.

I am using the following unattended configuration:

<?xml version="1.0" encoding="utf-8" ?>
<packages>

<package 
    id='WinMerge' 
    name='WinMerge' 
    revision='21040' 
    priority='50' 
    reboot='false' >
  <check type='uninstall' condition='exists' path='WinMerge 2.10.4.0' />
  <install cmd='"%SOFTWARE%\WinMerge v.2.10.4\unattended.cmd"' />
  <remove cmd='"%SOFTWARE%\WinMerge v.2.10.4\unattended-uninstall.cmd"' />
  <upgrade cmd='"%SOFTWARE%\WinMerge v.2.10.4\unattended.cmd"' />
</package>

</packages>

As you can see I am using a command-script to install WinMerge. Here is the code of the two scripts:

unattended.cmd:

@echo off

echo Installing WinMerge

set BINARY=WinMerge-2.10.4-Setup.exe
set INSTALL_LOC=%~dp0

start /wait "WinMerge" "%INSTALL_LOC%%BINARY%" /VERYSILENT /SP- /NORESTART

unattended-uninstall.cmd:

@echo off

echo Removing WinMerge

set PROG_FILES=%ProgramFiles%
if not "%ProgramFiles(x86)%" == "" set PROG_FILES=%ProgramFiles(x86)%

start /wait "WinMerge" "%PROG_FILES%\WinMerge\unins000.exe" /VERYSILENT /SP- /NORESTART

As you can see I am using the unattended-uninstall.cmd script to support the %ProgramFiles(x86)% location on Windows x64 editions.

If you do not need to support x64 editions you might simply include the command lines within the XML file:

<?xml version="1.0" encoding="utf-8" ?>
<packages>

<package 
    id='WinMerge' 
    name='WinMerge' 
    revision='21040' 
    priority='50' 
    reboot='false' >
  <check type='uninstall' condition='exists' path='WinMerge 2.10.4.0' />
  <install cmd='"%SOFTWARE%\WinMerge\WinMerge-2.10.4-Setup.exe" /VERYSILENT /SP- /NORESTART' />
  <remove cmd='"%ProgramFiles%\WinMerge\unins000.exe" /VERYSILENT /SP- /NORESTART' />
  <upgrade cmd='"%SOFTWARE%\WinMerge\WinMerge-2.10.4-Setup.exe" /VERYSILENT /SP- /NORESTART"' />
</package>

</packages>

Or with X64 support, and no cmd files: <package id="winmerge" name="WinMerge" revision="2" reboot="false" priority="1"> <variable name="version" value="2.12.4" /> <variable name="packagedir" value="%SOFTWARE%\Standard\WinMerge" /> <check type="uninstall" condition="exists" path="WinMerge %version%" />

<install cmd='%packagedir%\WinMerge-%version%-Setup.exe /VERYSILENT /SP- /NORESTART' /> <upgrade cmd='%packagedir%\WinMerge-%version%-Setup.exe /VERYSILENT /SP- /NORESTART' />

<remove cmd='"%ProgramFiles%\WinMerge\unins000.exe" /VERYSILENT /SP- /NORESTART' architecture="x86" /> <remove cmd='"%ProgramFiles(x86)%\WinMerge\unins000.exe" /VERYSILENT /SP- /NORESTART' architecture="x64" /> </package>