README.txt
== Introduction ==

h-client, a client for an h-source server (such as https://h-node.org)

== Requirements ==

* h-client can run on any GNU/Linux system. However, the h-node.org server accepts submissions only for the following GNU/Linux distributions:
  - Debian GNU/Linux
  - Dragora GNU/Linux-libre
  - Guix System
  - Hyperbola GNU/Linux-libre
  - Parabola GNU/Linux-libre
  - Pureos
  - Trisquel
* linux-libre or the debian kernel
* pciutils (for lspci)
* usbutils (for lsusb)
* python3
* python-pycurl  (aka: python3-pycurl)
* python-gobject (aka: python3-gi)

For development, the following tools are used:

* python-distribute (python-setuptools)
* python-pyflakes   (TODO: adapt for python3 equivalent)
* python-pylint     (TODO: adapt for python3 equivalent)
* python-pep8       (TODO: adapt for python3 equivalent)
* python-coverage   (TODO: adapt for python3 equivalent)

To make translation files or to use translations when installing from
SVN GNU Make and Gettext are also needed.

== Installation ==

Extract the tarball inside a folder of your filesystem.

Move to the just extracted folder.

Optionally run the following command to prepare translation files:

  $ make

Type the following command to install the package:

  $ python ./setup.py install --user --optimize=1
  $ sudo make prefix=/usr install-data

Instead of the --user option installing to ~/.local, you may use
--prefix to specify different path prefix to use.

== Use the client ==

Type the following command:

  $ ~/.local/bin/h-client

or add the directory to PATH (e.g. in your ~/.bashrc)

  $ export PATH=~/.local/bin:$PATH" to )

, then you can simply type: `h-client`.

== Unit tests ==

To run the unit tests of h-client, type the following command:

  $ python ./setup.py test

or, to also get HTML report of which statements were run:

  $ make check

To run a single test:
  $ python -m unittest tests_hclient.<TEST_MODULE>.<TEST_CLASS>.<TEST_METHOD>
  eg:
  $ python -m unittest tests_hclient.machine.CreatingDevicesTestCase.test_dict


== Translating ==

To add a translation, add its language code xx_YY (as used in the LANG
environment variable) to the L10N variable in the Makefile.  Run
"make" and edit po/xx_YY.po to include translations.  Run "make" again
to use the translation for running the program or to update it with
texts changed in the program.

== License ==

h-client, a client for an h-source server (such as https://h-node.com)
Copyright (C) 2011  Antonio Gallo


h-client is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

h-client is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with h-client.  If not, see <http://www.gnu.org/licenses/>.