Compiled bjoern packages

bjoern is a WSGI-compatible web server for Python web applications. It supports both Python 2 and Python 3. Unfortunately the authors don't provide any binary packages but I've created compiled binary wheels for bjoern for Python 2 and 3 for Debian Jessie, Stretch and Buster and Ubuntu Xenial, Trusty and Bionic.

To install the package:

  1. Install libev with sudo aptitude install libev4
  2. Find out the release you have installed with source /etc/os-release; echo $PRETTY_NAME
    This will output a line of text like Debian GNU/Linux 9 (stretch). In this example stretch is the name of the release. Write that down somewhere.
  3. Source your virtualenv. You're using a virtualenv, right?
  4. Browse to the bjoern releases page and find the wheels for your release. In my example, they would be stretch-bjoern-2.2.3-cp27-cp27mu-linux_x86_64.whl and stretch-bjoern-2.2.3-cp35-cp35m-linux_x86_64.whl.
  5. Download the Python 2 (cp27) or Python 3 (cp3X) wheel for the version of Python your project uses.
  6. Rename the file to remove the release prefix. In my example, stretch-bjoern-2.2.3-cp35-cp35m-linux_x86_64.whl becomes bjoern-2.2.3-cp35-cp35m-linux_x86_64.whl
  7. Use pip install to install the wheel in your virtualenv. In my example, I would do pip install bjoern-2.2.3-cp35-cp35m-linux_x86_64.whl

Note that the renaming step appears to be optional; pip will throw some errors when you try to install the wheel but the bjoern wheel appears to be installed correctly anyway.