Installer and Updater for a python desktop application

Question:

I am building a desktop app with python and packaging it to an exe with Pyinstaller.
I would like to ship my application with an installer and also provide automatic and silent updates to the software like Google Chrome, Dropbox or Github for Windows does.

I have found the following software to be able to do this:

I am trying to find the easiest solution to my problem.

Asked By: Thomaschaaf

||

Answers:

WiX (Windows Installer XML toolset) is an open source project for an MSI authoring tool.
Part of the project is ClickThrough, a set of add-on tools, including a tool to automatically detect available updates (via an RSS feed), notify users and install the update.
As you can read here:

The Windows Installer Xml (WiX) toolset is composed of a compiler, a
linker, a lib tool and a decompiler. It generates MSI and MSM files
from XML input. It doesn’t include a GUI frontend to create the
project files, but there are a couple of projects that plan to fill
this gap. Votive, which is part of the WiX project, is a Visual Studio
extension. It allows you to create “WiX projects” that act like any
other project in a VS solution. WiX was created by Rob Mensching, a
Microsoft employee and former member of the MSI team, in his free time
and released as open source. It is used by several teams inside
Microsoft to create their setups.

See also How to create a simple MSI installer using WIX

Answered By: user1419445

I recommend Google Omaha. You can get managed servers for pretty cheap now days if the only thing holding you back is the server / overhead cost.

Answered By: Eric Leroy

There is a suite of tools from the cloudmatrix guys that addresses that problem.

esky is an auto-update framework for frozen apps that is compatible with the common python “packaging” frameworks. signedimp tries to ensure that apps are not modified after they are signed, and to minimize invasive Windows UAC dialogs. myppy aims to insulate you from base library incompatibility issues on Linux eg installing on distributions with different gcc and libc versions. The whole set can be seen on github here.

The video and slides from this year’s PyCon are here: http://lanyrd.com/2012/pycon/spckh/

Answered By: Ngure Nyaga

I’m working on a project that you may find useful.

PyUpdater

Answered By: JohnyMoSwag