From 7a58425cbb090acb3777b602bd3350581f7b30e8 Mon Sep 17 00:00:00 2001 From: kali Date: Wed, 3 Oct 2012 21:23:38 +0900 Subject: updated readme with some clarifications hopefully it's a bit more clear now. developer: feedback welcome. are you able to get it running with the instructions listed here? --- README.rst | 139 +++++++++++++++++++++++++++++++++++++++++++++++++++ README.txt | 111 ---------------------------------------- pkg/requirements.pip | 2 +- 3 files changed, 140 insertions(+), 112 deletions(-) create mode 100644 README.rst delete mode 100644 README.txt diff --git a/README.rst b/README.rst new file mode 100644 index 00000000..56780848 --- /dev/null +++ b/README.rst @@ -0,0 +1,139 @@ +LEAP +The LEAP Encryption Access Project +your internet encryption toolkit + +Installation +============= + +Dependencies +-------------- +Listed in pkg/requirements.pip and pkg/test-requirements.pip + +* python 2.6 or 2.7 +* python setuptools +* qt4 libraries +* python-qt4 +* python-gnutls == 1.1.9 +* python-nose, python-mock, python-coverage (if you want to run tests) + +If you are on a debian-based system, you can run: + +apt-get install python-qt4 python-qt4-doc pyqt4-dev-tools python-gnutls libgnutls-dev python-setuptools python-nose + + +Install PyQt +------------ +pip install PyQt will fail because PyQt4 does not use the standard setup.py mechanism. +Instead, they use configure.py which generates a Makefile. + +python configure.py +make && make install + +You can: + +* (recommended) run pkg/postmkvenv.sh after creating your virtualenv. It will symlink to your global PyQt installation. +* install PyQt globally and make a virtualenv with --site-packages +* run pkg/install_pyqt.sh inside your virtualenv (with --no-site-packages) + + +Install +--------------- + +# need to run this if you are installing from the git source tree +# not needed if installing from a tarball. + +python setup.py branding + +# run this if you have installed previous versions before + +python setup.py clean + +python setup.py install # as root if installing globally. + + + +Running the App +----------------- + +If you're running a branded build, the script name will have a suffix that +depends on your build flavor. Look for it in /usr/local/bin + +% leap-springbok-client + +In order to run in debub mode: + +% leap-springbok-client --debug --logfile /tmp/leap.log + +To see all options: + +% leap-springbok-client --help + + +Development +============== + +Hack +-------------- +Some steps to be run when setting a development environment for the first time. + +# recommended: enable a virtualenv to isolate your libraries. + +% virtualenv . # ensure your .gitignore knows about it +% source bin/activate + +# make sure you're in the development branch + +(leap_client)% git checkout develop + +(leap_client)% pkg/postmkvenv.sh + +(leap_client)% python setup.py branding +(leap_client)% python setup.py develop + +to avoid messing with the entry point and global versions installed, +it's recommended to run the app like this during development cycle: + +(leap_client)% cd src/leap +(leap_client)% python app.py --debug + +Install testing dependencies +---------------------------- + +have a look at setup/test-requires +The ./run_tests.sh command should install all of them in your virtualenv for you. + +Running tests +------------- + +./run_tests.sh + +force no virtualenv and create coverage reports: +./run_tests.sh -N -c + +if you want to run specific tests, pass the (sub)module to nose: + +nosetests leap.util + +or + +nosetests leap.util.test_leap_argparse + +Tox +--- +For running testsuite against all the supported python versions (currently 2.6 and 2.7), run: + +tox -v + + +Compiling resource/ui files +----------------------------- + +You should refresh resource/ui files every time you +change an image or a resource/ui (.ui / .qc). From +the root folder: + +make ui +make resources + +As there are some tests to guard against unwanted resource updates, +you will have to update the resource hash in those failing tests. diff --git a/README.txt b/README.txt deleted file mode 100644 index 238cd1e3..00000000 --- a/README.txt +++ /dev/null @@ -1,111 +0,0 @@ -======================================== -= LEAP = -= The LEAP Encryption Access Project = -= your internet encryption toolkit = -======================================== - -Installation -============= - -Dependencies --------------- - -* python <= 2.7 -* python setuptools -* qt4 libraries -* python-qt4 -* python-gnutls == 1.1.9 -* python-nose, python-mock, python-coverage (if you want to run tests) - -If you are on a debian-based system, you can run: - -apt-get install python-qt4 python-qt4-doc pyqt4-dev-tools python-gnutls libgnutls-dev python-setuptools python-nose - -Install ---------------- - -Global install: -sudo python setup.py install - -If using virtualenv: -python setup.py install - -Install PyQt ------------- -pip install PyQt will fail because PyQt4 does not use the standard setup.py mechanism. -Instead, they use configure.py which generates a Makefile. - -python configure.py -make && make install - -You can: - -* install PyQt globally and make a virtualenv with --site-packages -* run pkg/install_pyqt.sh inside your virtualenv (with --no-site-packages) -* run pkg/postmkvenv.sh after creating your virtualenv, for making symlinks to your global PyQt installation. - - -Running the App ------------------ - -leap-client --debug --logfile /tmp/leap.log - -If you're running a branded build, the script name will have a suffix that -depends on your build flavor: - -leap-client-springbok - -(or python app.py --debug if you run it from the src/leap folder). - -Development -============== - -Hack --------------- - -(recommended) -virtualenv . # ensure your .gitignore knows about it -source bin/activate -git checkout develop -pkg/postmkvenv.sh - -python setup.py branding -python setup.py develop - -Running tests -------------- - -./run_tests.sh - -force no virtualenv and create coverage reports: -./run_tests.sh -N -c - -if you want to run specific tests, pass the (sub)module to nose: - -nosetests leap.util - -or - -nosetests leap.util.test_leap_argparse - -Tox ---- -For running testsuite against all the supported python versions (currently 2.6 and 2.7), run: - -tox -v - -Test-deps ---------- - -have a look at setup/test-requires - - -Compiling resource/ui files ------------------------------ - -You should refresh resource/ui files every time you -change an image or a resource/ui (.ui / .qc). From -the root folder: - -make ui -make resources diff --git a/pkg/requirements.pip b/pkg/requirements.pip index 6bbc53fe..aef934fb 100644 --- a/pkg/requirements.pip +++ b/pkg/requirements.pip @@ -1,4 +1,4 @@ -argparse +argparse # only for python 2.6 requests ping netifaces -- cgit v1.2.3