From 6d6600a495ef48e0f04cb78bedca8fb913bada2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1s=20Touceda?= Date: Wed, 6 Mar 2013 16:10:30 -0300 Subject: Add README and NEWS --- NEWS.rst | 69 +++++++++++++++++++++++++++++++++++ README.rst | 120 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 189 insertions(+) create mode 100644 NEWS.rst create mode 100644 README.rst diff --git a/NEWS.rst b/NEWS.rst new file mode 100644 index 00000000..00350cbb --- /dev/null +++ b/NEWS.rst @@ -0,0 +1,69 @@ +================================== +User-facing changes in Leap Client +================================== + +Release 0.2.0 (2012-10-XX) +-------------------------- + +This release is a functionally working version in Debian Squeeze and Ubuntu 12.04. +It is able to connect to a preconfigured leap provider and autoconfigures a EIP connection. + +Python Support +'''''''''''''' +This release supports Python2.6 and Python2.7 + +New Features +'''''''''''' +- Branded build: the final package includes branding info needed to connect to a default provider. +- First run wizard: allows to register an user with the selected provider. It also downloads all + the config files needed to connect to the eip service on this provider. +- Network checks: we do some basic network testing and warn user in case we cannot find a + suitable network interface, or if the virtual interface dissapears after a successful eip connection. +- Debug mode and logfiles: the leap-client script allows to be invoked with the --debug flag. + It also accepts a --logfile option that is useful for documenting bug reports. + +Dependencies +'''''''''''' +See the ``README.rst`` for a step-to-step install guide. + +The following libraries are needed: + +- PyQt4 +- libgnutls +- openvpn + +for building the package dependencies, you will need also: + +- python-setuptools +- python-dev +- libgnutls-dev + +Leap-Client depends on the following python packages: + +- requests +- ping +- psutil +- netifaces +- jsonschema +- srp +- pycrypto +- keyring +- python-gnutls==1.1.9 + +We are freezing the python-gnutls library dependency for this release due to a bug in ubuntu, see: +https://bugs.launchpad.net/ubuntu/+source/python-gnutls/+bug/1027129 + + +Configuration files +''''''''''''''''''' + +Config files are created under ``~/.config/leap`` +Currently user should be able to completely remove this folder and have it auto-generated in the first run. + +- Current eip service config is stored in ``eip.json`` +- Under ``.config/leap/providers``, there is a per-provider folder that contains: + - ``provider.json``, with all options for connecting to this provider. + - ``eip-service.json``, with eip-specific configuration options, + - ``keys/ca``, for a copy of the ca certificates used in the tls connections to provider. + - ``keys/client``, for a local copy of leap user certificates used in the eip connection. +- ``leap.conf`` for general application configurations (gui windows geometry, ...). diff --git a/README.rst b/README.rst new file mode 100644 index 00000000..9ef3f99b --- /dev/null +++ b/README.rst @@ -0,0 +1,120 @@ +========================================= +The LEAP Encryption Access Project Client +========================================= + +*your internet encryption toolkit* + +Read the docs! +============== + +You can read the documentation online at `http://leap-client.readthedocs.org `_. If you prefer to build it locally, run:: + + $ cd docs + $ make html + +Quick Start +============== + +At the current development stage we still do not have any versioned release. Instead, you might want to have a look at the `testers guide `_ for a quick howto on fetching and testing latest development code. + +Dependencies +------------------ + +LEAP Client depends on these libraries: + +* ``python 2.6`` or ``2.7`` +* ``qt4 libraries`` +* ``libgnutls`` +* ``openvpn`` + +Python packages are listed in ``pkg/requirements.pip`` and ``pkg/test-requirements.pip`` + +Debian +^^^^^^ + +Under a debian-based system, you can run:: + + $ apt-get install openvpn python-qt4 python-crypto python-requests python-gnutls + +For *testing*:: + + $ apt-get install python-nose python-mock python-coverage + +For *building* the package you will need to install also:: + + $ apt-get install pyqt4-dev-tools libgnutls-dev python-setuptools python-all-dev + + +pip +^^^ + +Use pip to install the required python packages:: + + $ apt-get install python-pip python-dev libgnutls-dev + $ pip install -r pkg/requirements.pip + + +Installing +----------- + +After getting the source and installing all the dependencies, proceed to install ``leap-client`` package:: + + $ python setup.py install + + +Running +------- + +After a successful installation, there should be a launcher called ``leap-client`` somewhere in your path:: + + $ leap-client + + +Hacking +======= + +See the `hackers guide `_. + +The LEAP client git repository is available at:: + + git://leap.se/leap_client + +Some steps need to be run when setting a development environment for the first time. + +Enable a **virtualenv** to isolate your libraries. (Current *.gitignore* knows about a virtualenv in the root tree. If you do not like that place, just change ``.`` for **):: + + $ virtualenv . + $ source bin/activate + +Make sure you are in the development branch:: + + (leap_client)$ git checkout develop + +Symlink your global pyqt libraries:: + + (leap_client)$ pkg/postmkvenv.sh + +And make your working tree available to your pythonpath:: + + (leap_client)$ python setup.py develop + + +Testing +======= + +Have a look at ``pkg/test-requirements.pip`` for the tests dependencies. + +To run the test suite:: + + $ ./run_tests.sh + +which the first time should automagically install all the needed dependencies in your virtualenv for you. + +License +======= + +.. image:: https://raw.github.com/leapcode/leap_client/develop/docs/user/gpl.png + +The LEAP Client is released under the terms of the `GNU GPL version 3`_ or later. + +.. _`GNU GPL version 3`: http://www.gnu.org/licenses/gpl.txt -- cgit v1.2.3