Scribus

Scribus

Scribus is a free open source Desktop Publishing (DTP) application.

Scribus 64bit with special batch file for uninstall

<?xml version="1.0" encoding="UTF-8"?>

<packages:packages xmlns:packages="http://www.wpkg.org/packages"
        xmlns:wpkg="http://www.wpkg.org/wpkg" xmlns:xsi="http://www.w3.org/2001\/XMLSchema-instance"
        xsi:schemaLocation="http://www.wpkg.org/packages ../xsd/packages.xsd">

  <package id="scribus"
           name="Scribus"
           revision="%PKG_VERSION%"
           reboot="false"
           priority="5">

    <variable name="PKG_VERSION" value="1.6.4" />
    <variable name="PKG_NAME"           value="scribus" />
    <variable name="PKG_INSTALL_SWITCH" value="/S"/>
    <variable name="PKG_REMOVE_SWITCH"  value="/S"/>

<!-- Is our current version installed? -->
    <check type="uninstall" condition="exists" path="Scribus %PKG_VERSION% (64bit)" />

<!-- If we're going to do an install we are going to check for previous versions and uninstall them if they are installed -->
    <install cmd='%COMSPEC% /C "%ProgramFiles%\Scribus 1.6.1\uninst.exe" %PKG_REMOVE_SWITCH%' >
      <condition>
	<check type="uninstall" condition="exists" path="Scribus 1.6.1 (64bit)" />
      </condition>
    </install>
    <install cmd='%COMSPEC% /C "%ProgramFiles%\Scribus 1.6.2\uninst.exe" %PKG_REMOVE_SWITCH%' >
      <condition>
	<check type="uninstall" condition="exists" path="Scribus 1.6.2 (64bit)" />
      </condition>
    </install>
    <install cmd='%COMSPEC% /C "%ProgramFiles%\Scribus 1.6.3\uninst.exe" %PKG_REMOVE_SWITCH%' >
      <condition>
	<check type="uninstall" condition="exists" path="Scribus 1.6.3 (64bit)" />
      </condition>
    </install>
<!-- Now we install our new version -->
    <install cmd='%COMSPEC% /C "%SOFTWARE%\%PKG_NAME%\%PKG_NAME%-%PKG_VERSION%-windows-x64.exe" %PKG_INSTALL_SWITCH%' />

    <upgrade include="install" />

<!-- If we're uninstalling our current version this is the line we use. A batch file is being used to delay the time between uninstall and the wpkg check to verfy the
     successful uninstall. Some NSIS uninstallers don't seem to finish their processes quick enough and wpkg still picks up the program as installed
 -->                                                                                                                                        
    <remove cmd='%COMSPEC% /C %SOFTWARE%\batch_files\nsis-uninstall-delay.bat "%ProgramFiles%\Scribus %PKG_VERSION%\uninst.exe" /S' />

  </package>

</packages:packages>

Batch file for uninstall

This is saved as nsis-uninstall-delay.bat

Make sure to save this in the path that is correct for your setup.

::We call the below function and pass it the two variables that were passed in by our wpkg script.
CALL :uninstall_nsis %1 %2

:uninstall_nsis
::Our two variables passed in by wpkg are referenced here
%1 %2
::This ping is a dirty way to make the batch script delay for a bit so that everything can be fully uninstalled.
ping /n 30 localhost >nul
EXIT /B 0

Scribus 32bit

WPKG Package

<?xml version="1.0" encoding="utf-8" ?>
<packages>
    id="scribus"
    name="scribus"
    revision="%version%"
    reboot="false"
    priority="50">
 
  <variable name="version" value="1.4.2" />
 
  <check type='logical' condition='or'>
    <check type="file" condition="exists" path="%PROGRAMFILES%\Scribus\Scribus.exe" />
    <check type="uninstall" condition="exists" path="Scribus %version%" />
  </check>

<!-- INSTALL -->
   <install cmd='%COMSPEC% /c if exist "%PROGRAMFILES%\Scribus\uninst.exe" "%PROGRAMFILES%\Scribus\uninst.exe" /S' /> 
   <install cmd="%SOFTWARE%\scribus\scribus-%version%-windows.exe /S /D=%PROGRAMFILES%\Scribus" architecture='x86' />
   <install cmd="%SOFTWARE%\scribus\scribus-%version%-windows-x64.exe /S /D=%PROGRAMFILES%\Scribus" architecture='x64' />
  <!-- Post -->
   <install cmd='"%SOFTWARE%\scribus\post.bat">nul'><exit code="any"/></install>
<!-- UPGRADE -->
  <upgrade include="install" />
 
<!-- REMOVE -->
  <remove  cmd="%PROGRAMFILES%\Scribus\uninst.exe /S" />

</package>
</packages>


WPKG Package

<?xml version="1.0" encoding="UTF-8"?>
<!-- OpenSource -->


<packages>
<package
    id="Scribus"
    name="Scribus"
    revision="%version%"
    reboot="false"
    priority="50">

    <variable name="version" value="1.4.1" />

    <check type="file" condition="exists" path="%PROGRAMFILES%\Scribus\Scribus.exe" />
    <check type="uninstall" condition="exists" path="Scribus %version%" />

    <install cmd='%COMSPEC% /c if exist "%PROGRAMFILES%\Scribus\uninst.exe" "%PROGRAMFILES%\Scribus\uninst.exe" /S'/>
    <install cmd="%SOFTWARE%\scribus\scribus-%version%-windows.exe /S /D=%PROGRAMFILES%\Scribus" />

    <downgrade include="install" />

    <upgrade include="install" />

    <remove  cmd="%PROGRAMFILES%\Scribus\uninst.exe /S" />
</package>
</packages>