public:user_software:user_software

This is an old revision of the document!


LOFAR User Software

Organization of the repository

usg.lofar.org/svn
|-- code
|   |-- branches
|   `-- trunk
|   |   |-- build
|   |   |-- data
|   |   |-- external
|   |   `-- src
`-- documents
    |-- branches
    `-- trunk

Checking out code

As read-only access to the repository is not restricted in any ways, you can obtain a working copy of the source code by running

svn co http://usg.lofar.org/svn/code/trunk lofarsoft

In case you not only want a working version of the source code, but also of the various documents, you do have two options to options of retrieval:

  1. Check out everything in a single go:
    svn co http://usg.lofar.org/svn usg
  2. Check out a slightly cleaned-up version, omitting the trunk directories from your working version:
    mkdir usg
    cd usg
    svn co http://usg.lofar.org/svn/code/trunk code
    svn co http://usg.lofar.org/svn/documents/trunk docs

Using Git

If you'd rather use Git to locally keep track of changes, simply clone off the Subversion repository via

git svn clone http://usg.lofar.org/svn/code/trunk lofarsoft

Updating your working copy

Go to the build directory and type

make update

In the simplest case this might be nothing but a wrapper around the update command of Subversion, but further actions might carried out if necessary.

Then build your target, for example “dal” with

make dal

You can also just build the target folder leaving everything else untouched using

cd dal
make rebuild_cache && make && make install

Write access to the repository

While (by design) the user software repository is world-wide readable, write access is being restricted to a list of registered users. The basic procedure for getting added to that list – which basically relies on a combination of a username and MD5 encrypted password – is described below:

The information which needs to be provided by the user is a combination of username and password, where the latter is being hashed using the MD5 algorithm. The encryption of the password can be done in a number of ways, depending on the tools available to the user requesting access:

  • Using htpasswd:
    htpasswd -nbm <username> <password>
  • Using openssl:
    openssl passwd -apr1 <password>

If none of the above mentioned tools are available, use can be made of an online htpasswd generator.

Depending on the command line tool being used, the output will contain the full string to be entered into the password file or the encrypted password only (in which case the username needs to be prepended):

lbaehren:$apr1$ziNPu...$YYKeohAqIiIzfz4YA12345    ## htpasswd
$apr1$9H8IBSvy$yswI9jLosDkDx1a6.12345             ## openssl
  • Last modified: 2011-11-02 13:21
  • by Lars Bahren