Entries tagged with “Packaging”.


Python’s first mainstream package was the .egg file. Now there’s a new format in town called the Wheel (*.whl). A wheel “is designed to contain all the files for a PEP 376 compatible install in a way that is very close to the on-disk format”. In this article, we will learn how to create a wheel and then install our wheel in a virtualenv. (more…)

Today we’re going to learn about one of wxPython’s newer features: wx.lib.softwareupdate. It was actually added a couple of years ago. What this allows you to do is add update abilities to your software. As far as I can tell, this mixin only allows prompted updates, not silent updates.

Getting Started

It’s built into wxPython 2.9, so you’ll need that if you want to follow along. The software update feature actually uses the Esky project. If you’re on Windows, you’ll also need py2exe. If you’re on Mac, then you’ll need py2app. We’ll be using the code from one of my previous articles for this demonstration. I created two versions of an Image Viewer, so you’ll want to grab that code as well. Note that we’ll be showing how to do this on Windows only! (more…)

Pip Installs Python or pip is a tool for installing and managing Python packages, many of which are on the Python Package Index (PyPI). It is a replacement of easy_install. In this article, we’ll spend a little time trying out pip to see how it works and how it might help us in our Python endeavors. (more…)

This is the last article of my “Build a Binary Series”. If you haven’t done so already, be sure to check out the others. For our finale, we are to look at Andrea Gavana’s wxPython-based GUI2Exe, a nice graphical user interface to py2exe, bbfreeze, cx_Freeze, PyInstaller and py2app. The latest release of GUI2Exe is 0.5.0, although the source may be slightly newer. Feel free to run from the tip as well. We’ll be using the example scripts that we used for several of the previous articles: one console and one GUI script, neither of which do much of anything. (more…)

The bbfreeze package also allows us to create binaries, but only on Linux and Windows. It’s just an easy_install away, so if you plan on following along with the examples in the article, you should go get it. The bbfreeze package includes egg support, so it can include egg dependencies in your binary, unlike py2exe. You can also freeze multiple scripts at once, include the Python interpreter and more. According to bbfreeze’s PyPI entry, it’s only been tested with Python 2.4-2.5, so keep that in mind. However, I was able to use it with Python 2.6 with no obvious problems. (more…)

In this article, we will be learning about cx_Freeze, a cross-platform set of scripts designed to “freeze” Python scripts into executables in a manner similar to py2exe, PyInstaller, etc. We will freeze one console script and one window (i.e GUI) script, using the examples from the previous article in this series. If you haven’t done so already, you can get cx_Freeze here. Let’s get this party started, shall we? (more…)

I received a request to create an article on how to use py2exe and wxPython to create an executable. I decided to do a series on packaging instead. It is my intention to go over the major Windows binary building utilities and show you, dear reader, how to use them to create a binary that you can distribute. Once those articles are done, I’ll show how to use Inno and NSIS. To kick things off, we’ll go over how to use py2exe, probably the most popular of the Windows executable packages. (more…)