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.
The previous client using PySide has been deprecated (Bitmask version 0.9.2, still available at the http://github.com/leapcode/bitmask_client repo).
There is documentation about Bitmask for users and for developers. For developers, be sure to read the sections on hacking and contributing_. Testers should read the section on testing and QA.
Please report any bugs in our bug tracker.
If you want to watch the logs, from the command line:
bitmaskctl logs watch
The paste command can be handy to do bug reports (needs pastebinit
installed
in the system):
bitmaskctl logs send
but do not upload anything that you do not want to make public ;)
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 python tests:
tox
There are some minimal end-to-end tests:
make test_e2e
For testing the UI (aka bitmask-js
) you need to have mocha
installed. You can run ui tests like this:
cd ui && make test
More info abou testing can be found in the docs/hacking/testing
document.
In order to run bitmask in a development environment, you must activate a
virtualenv and install the various leap-related python packages using pip
install -e
. This installs them as links to the source code, so
that your code changes are immediately reflected in the packages imported from
within the virtualenv.
The various make dev-*
commands will run the appropriate pip install
commands for you.
If you want to setup your whole development environment in a single step, and you are running a debian-based system, you can use:
make dev-bootstrap
That should install all the system dependencies, create a virtualenv for you, and drop you in a shell inside that virtualenv. In the future, you can enter this virtualenv again by using pew:
pew workon bitmask
To upgrade regularly the python dependencies installed inside your virtualenv, you can run:
make upgrade-all
inside your virtualenv, and it will install any new version of your dependencies that is found in pypi.
Check out the docs/hacking
page for more extense instructions to get
you started.
Bitmask is released under the terms of the GNU GPL version 3 or later.