diff options
Diffstat (limited to 'docs/dev')
-rw-r--r-- | docs/dev/environment.rst | 22 | ||||
-rw-r--r-- | docs/dev/internationalization.rst | 23 |
2 files changed, 32 insertions, 13 deletions
diff --git a/docs/dev/environment.rst b/docs/dev/environment.rst index 55f00d5e..c3868b81 100644 --- a/docs/dev/environment.rst +++ b/docs/dev/environment.rst @@ -21,18 +21,18 @@ Leap client depends on these libraries: * `python 2.6 or 2.7` * `qt4` libraries (see also :ref:`Troubleshooting PyQt install <pyqtvirtualenv>` about how to install inside your virtualenv) -* `libgnutls` -* `openvpn<http://openvpn.net/index.php/open-source/345-openvpn-project.html>`_ +* `openssl` +* `openvpn <http://openvpn.net/index.php/open-source/345-openvpn-project.html>`_ Debian ^^^^^^ In debian-based systems:: - $ apt-get install openvpn python-qt4 python-crypto python-gnutls + $ apt-get install openvpn python-qt4 python-crypto python-openssl To install the software from sources:: - $ apt-get install python-pip python-dev libgnutls-dev + $ apt-get install python-pip python-dev .. _virtualenv: @@ -81,7 +81,7 @@ A second option if that does not work for you would be to install PyQt globally $ apt-get install python-qt4 $ virtualenv --site-packages . -Or, if you prefer, you can also `download the official PyQt tarball<http://www.riverbankcomputing.com/software/pyqt/download>`_ and execute ``configure.py`` in the root folder of their distribution, which generates a ``Makefile``:: +Or, if you prefer, you can also `download the official PyQt tarball <http://www.riverbankcomputing.com/software/pyqt/download>`_ and execute ``configure.py`` in the root folder of their distribution, which generates a ``Makefile``:: $ python configure.py $ make && make install @@ -90,19 +90,29 @@ Or, if you prefer, you can also `download the official PyQt tarball<http://www.r this section could be completed with useful options that can be passed to the virtualenv command (e.g., to make portable paths, site-packages, ...). +.. _copyscriptfiles: + +Copy script files +----------------- + +The openvpn invocation expects some files to be in place. If you have not installed `leap-client` from a debian package, you must copy these files manually:: + + $ sudo mkdir -p /etc/leap + $ sudo cp pkg/linux/resolv-update /etc/leap .. _policykit: Running openvpn without root privileges --------------------------------------- -In linux, we are using ``policykit`` to be able to run openvpn without run privileges, and a policy file is needed to be installed for that to be possible. +In linux, we are using ``policykit`` to be able to run openvpn without root privileges, and a policy file is needed to be installed for that to be possible. The setup script tries to install the policy file when installing the client system-wide, so if you have installed the client in your global site-packages at least once it should have copied this file for you. If you *only* are running the client from inside a virtualenv, you will need to copy this file by hand:: $ sudo cp pkg/linux/polkit/net.openvpn.gui.leap.policy /usr/share/polkit-1/actions/ + Missing Authentication agent ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/docs/dev/internationalization.rst b/docs/dev/internationalization.rst index e6b89dea..1a9af0be 100644 --- a/docs/dev/internationalization.rst +++ b/docs/dev/internationalization.rst @@ -38,21 +38,30 @@ tl;dr;:: self.tr('your string') -for any string that you want to be translated. +for any string that you want to be translated, as long as the instance derives from ``QObject``. + +If you have to translate something that it is not a ``QObject``, use the magic leap ``translate`` method: + + +.. code-block:: python + + from leap.util.translations import translate + + class Foo(object): + bar = translate(<Context>, <string>, <comment>) + .. Note about this: there seems to be some problems with the .tr method - on QObjects. Investigate this. - I still believe we can use a generic _ method which is smart enough to - fallback to QObject.tr methods or lookup our own tr implementation (for our - multilungual objects, like in exceptions or provider labels that came from json objects). + so the translate method could actually be the preferred thing in all the cases. + Still missing what to do for language labels (json-based). --kali For i18n maintainers ^^^^^^^^^^^^^^^^^^^^ -You need ``pylupdate4`` for these steps. To get it, in debian:: +You need ``pylupdate4`` and ``lrelease`` for these steps. To get it, in debian:: - $ apt-get install python-qt4-utils + $ apt-get install pyqt4-dev-tools qt4-linguist-tools If you do not already have it, install the ``transifex-client`` from the cheese shop:: |