Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

The Internet Encryption Toolkit: Encrypted Internet Proxy and Encrypted Mail.

Project Description

Bitmask

Your internet encryption toolkit

Bitmask is the client for the services offered by the LEAP Platform. It contains a command-line interface and a multiplatform desktop client. It can be also used as a set of libraries to communicate with the different services from third party applications.

It is written in python using Twisted and licensed under the GPL3. The Graphical User Interface is written in html+js and uses PyQt5 for serving the application.

Package under development!

This is a unified repo that has merged the following packages, previously isolated, under the leap namespace:

bonafide, mail, keymanager, bitmask.

The previous Qt client has been deprecated (bitmask version 0.8.2, still available at the http://github.com/leapcode/bitmask_client repo).

Note that this repo still doesn’t have support for VPN: its porting will follow soon.

Read the Docs!

The latest documentation about Bitmask is available at LEAP.

Bugs

Please report any bugs in our bug tracker.

Development

Running Tests

You need tox to run the tests. If you don’t have it in your system yet:

pip install tox

And then run all the tests:

tox

Hacking

In order to run bitmask in a development environment, you must activate a virtualenv and install the various packages using ‘pip install -e’. This installs python packages as links to the source code, so that your code changes are immediately reflected in the packages installed in the virtualenv.

The various make dev-* commands will run the appropriate pip install commands for you.

Run headless backend in development mode

Prerequisites:

sudo apt install build-essential python-dev python-virtualenv \
                 libsqlcipher-dev libssl-dev libffi-dev

Install and activate a virtualenv:

cd bitmask-dev
virtualenv venv
source venv/bin/activate

All the subsequent commands assume that you have activated the virtualenv.

Install all the python dependencies:

make dev-backend

Run application:

bitmaskd

Run user interface frontend

If you want to run the Bitmask user interface, you additionally need the following:

Prerequisites:

sudo apt install python-pyqt5  python-pyqt5.qtwebkit

Install python dependencies:

make dev-all

Note: even though the UI is in javascript, Qt is used to create a webview window.

Run user interface:

bitmask

The command bitmask should be in your path if you have activated the virtual environment.

Install Bitmask user interface in development mode

The above instructions will install a python package that contains a pre- bundled version of the javascript UI.

If you want to modify the javascript UI, then you need to be able to update the javascript bundle whenever a javascript or CSS source file changes.

Prerequisites:

sudo apt install nodejs npm nodejs-legacy

Next, run dev-install:

cd ui
make dev-install    # install JS code as a python package in "develop" mode.

Now you should be able to run the user interface with debugging tools:

bitmaskd
chromium-browser http://localhost:7070

Firefox does not work as well, because the UI is only tested with webkit-based browsers.

Chromium is not the best for this, however, because it uses a newer webkit. Instead, try qupzilla:

sudo apt install qupzilla
bitmaskd
qupzilla -ow http://localhost:7070

If you make a change to any of the CSS or JS source files, you need to rebuild the javascript bundle. You can do this continually as files change like so:

cd ui
node run watch

For more information, see ui/README.md.

License

Bitmask is released under the terms of the GNU GPL version 3 or later.

Release History

Release History

History Node

0.10rc2

History Node

0.10rc1

History Node

0.10a1

This version
History Node

0.9.4

History Node

0.9.1

History Node

0.9.0

History Node

0.8.1

History Node

0.8.0

History Node

0.7.0

History Node

0.5.2

History Node

0.3.8

History Node

0.3.7

History Node

0.3.6

History Node

0.3.4

History Node

0.3.3

History Node

0.3.2

History Node

0.3.1

History Node

0.5.3-4-g1e456b0

History Node

0.5.0-6-gc3a21a2

History Node

0.3.6-1-gfedc645

History Node

0.3.5-2-g56402b3

History Node

0.3.2-5-g9568093

History Node

0.3.2-4-g899d4d7

History Node

0.3.2-3-ga114a00

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
leap.bitmask-0.9.4.tar.gz (199.4 kB) Copy SHA256 Checksum SHA256 Source Dec 29, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting