Simple filesystem-based desktop application deployment for Windows
unfurl is a simple desktop application deployment tool for Microsoft Windows.
The main objective is to create a simple and robust alternative to systems such as ClickOnce. Inspired by nlaunch, the objective is to create an application/environment/language-agnostic deployment tool that does not require sophisticated infrastructure.
How it works
- unfurl is started with the manifest file as the first argument. Any
additional arguments will be passed along to the target application.
- It finds the manifest file based on the first argument:
- If the argument is an absolute or relative path, it is used
- Search the working directory for the manifest file, adding
- Search the application directory for the manifest file, adding
- The manifest file is parsed.
- It checks the local
APPDATAfolder for existence of the latest version of the target application binary.
- If a local binary was not found, the latest application package is found in
repository. The package naming convention is
myapp-1.0.zip. The package is extracted to the local
- The application specified by
binaryis launched, passing along any additional command line arguments.
If an error occurs during unpackaging, the local copy is removed from
<?xml version="1.0" ?> <unfurl> <binary>myapp.exe</binary> <repository>P:\deploy</repository> <identifier>myapp</identifier> <current-version>1.0</current-version> </unfurl>
- Package dependencies (e.g. a Qt package containing all DLL's)
This code is copyright 2013 Logan Raarup, and is released under the revised BSD License.
For more information, see