Go to page:

Search:   Help

Developers' side bar

Selected categories

Edit

Shared groups

Links

Administration

Categories: Misc, Development
<< | Page list | >>

Notes on administrating the server and setting up new developers. Links to other pages with e.g. release procedure.

 

Services related to LyX and LyX development on different servers.

ServiceLocationServer todayComment
Web sitehttp://www.lyx.org???Apache, PmWiki
Wiki sitehttp://wiki.lyx.org???Apache, PmWiki
File area (wiki)http://wiki.lyx.org/uploads???For users. IPFM
FTP siteftp://ftp.lyx.orgdurga.via.ecp.fr
FTP site (devel.)ftp://ftp.devel.lyx.org???
VCS, Subversionsvn://svn.lyx.org/lyx???Subversion
Source viewerhttp://www.lyx.org/trac/browser???Trac
Issue trackerhttp://www.lyx.org/trac/wiki/BugTrackerHome???Trac
Mailing listslyx-users@lists.lyx.org???Same for lyx-devel@, lyx-docs@...
VCS mailing listlyx-cvs@lists.lyx.org???ML with patches etc
DNS networksolutionsLars knows

The "LyX-server", i.e. the server lyx.lyx.org

  • Domain name: lyx.lyx.org
  • Virtual machine
  • Hosted at the University of Bonn
  • The account "webadmin" is a mailing list alias.

Setting up a new developer at lyx.org:

Note that this does not include a shell account on the server, that's at the moment only for administrators.

To give Subversion write permission:

        sudo su - lyx           # Need permission as if the user 'lyx'

        # Give Subversion write permission by doing the following:
        emacs ~lyx/etc/passwd     # Add line per format: USER = PLAIN-PASSWORD
        emacs ~lyx/etc/authz      # Add developer to the group 'developers'.

        # Create Trac account by doing the following:
        htpasswd -sb ~lyx/www/trac/.htpasswd USER PLAIN-PASSWORD

Note: The original text said something about the same password, I don't think this is necessary.

After the user has been added for Trac, someone needs to give that user the correct permissions in Trac, which is done through Trac's web interface.

About developers@lyx.org

The e-mail address developers@lyx.org is non-public address for LyX developers.

  • Only accepts e-mails originating from <name>@lyx.org
  • Administered by:
    • JMarc
    • Lars

Gitolite - Access to git repositories on the LyX server (section-status: added 2017-01-04/chr)

The LyX project uses "gitolite" for Git repositories on the LyXserver.

To get e.g. write permission to these repositories, contact one of the administrators of gitolite (currently):

  • larsbj
  • lasgouttes
  • rgheck
  • vfr

Precondition for adding e.g. write permission for a LyX developer:

  • The administrator of gitolite will need the public part of the developer's SSH key pair.

Internal notes:

  • Configuration of gitolite is done through it's repository:
     git@git.lyx.org:gitolite-admin.git
  • The main configuration file is:
     conf/gitolite.conf.

Other notes:

Running gitolite commands on the server

With SSH access setup, you should be able to do e.g:

        ssh git@git.lyx.org help

where 'help' is a command to gitolite that will show you other possible commands.

The following command is useful to see e.g. write access:

$ ssh git@git.lyx.org info
hello chr, this is gitolite 2.3.1-1.el6 running on git 1.7.1
the gitolite config gives you the following access:
 @C  R   W 	developers/chr/..*
    @R   W 	features
    @R_    	gsoc
    @R   W 	lyx
    @R_ @W_	testing

where the second to last row indicates write access to the 'lyx' repository.

Restoring/resetting a accounts

Resetting (or setting) a Trac password

To restore someone's account, add their username and a temporary password to trac.htpasswd. You can generate the password using the command:

  htpasswd -nbd UserName Password

This will write an appropriate line, such as:

  UserName:dRQHwZeMce2SI

to the terminal. You do not need to be root to do this.

Copy the line that was generated, then open trac.htpasswd and append it to the end. You will need to sudo to do that.

The trac password file is located here

   /home/lyx/www/trac/conf/trac.htpasswd

Most likely old instructions...

This is probably obsolete, history indicates it was added in 2008-11-?? by me (chr).
  • log in into svn.lyx.org
  • create the user
   sudo /usr/sbin/adduser -c "<Name>" -G svnusers <loginname>
  • give write access to svn:
   sudo vi /home/lyx/svnstore/lyx/conf/authz
   [add a line "<loginname> = rw"]
  • set a password
   sudo passwd <loginname>
  • set the .forward
   sudo bash -c 'echo "<real e-mail>" > /home/<loginname>/.forward'
   sudo chown <loginname>:<loginname> /home/<loginname>/.forward
  • create a correct .ssh/
   sudo mkdir -m 700 /home/<loginname>/.ssh
  • subscribe the user to cvslog@lyx.org
   sudo su
   cd /usr/lib/mailman/bin
   echo <loginname>@lyx.org |./add_members -r - cvslog

Setting up a new administrator at lyx.org

Creating the account

  • Use 'useradd' or 'adduser', I don't remember which...
  • Give a special flag which prevents login with a password
  • Get a public key from the person that'll get the account
  • Copy this key to some file in .ssh/
  • Test that you can login!

Giving sudo permissions

You need to have root access to give an account sudo permissions, so the first step to become root with the following command:

chr@debian:~$ su
Password:
debian:/home/chr# visudo

Now you can add a username to the list. For example:

lasgouttes ALL=(ALL) ALL

Save the file to complete the process.

Then, as root, set a random password (e.g. from pwgen), because without a password he will not be able to use sudo.

Software services on Aussie

  • List of software currently used on Aussie (incomplete)
    • Apache
    • Trac
    • Subversion

Mailing lists

Lars?

Things to do

Also see:

(related to the move to the new server)

Not done:

  • The most irritating one: Web/wiki/trac pages have 30s idle times - this is not under our control - xen problems
  • svn update of web pages after committing into www-user
  • See if it's possible to remove the warnings when starting apache
  • Fix so that notification of change uploaded files works. Right now the same message is sent over and over.
  • redirection http://bugzilla.lyx.org/show_bug.cgi?id=5836 -> http://www.lyx.org/trac/ticket/5836
  • Trac - how to block bugs? link
  • Trac homepage into the top line of buttons
  • Trac doesnt let new users to log-in
  • Trac doesnt let other people to be CC-ed into some bug
  • www.lyx.org wiki does not remember Author field when editing (wiki.lyx.org does)
I think the reason for this could be that the user has logged out in between?
ps: yes, but why wiki.lyx.org is able to remember it?

Done:

  • Trac do not notify peple via email
  • Check that IPFM and file uploading works on the new server [Christian]
  • Check that e-mail notifications from LyX server works when web pages and wiki pages are modified

Tips for sharing files

This should be moved elsewhere...

When for instance you need to send a file that needs to be placed on the LyX ftp site, the following tools/methods could be useful:

Automatically generated source code documentation

  • Doxygen
  • Location: The automatically generated HTML files are stored at /home/lyx/www/????
  • Setup: How to setup so that the generated HTML can be shown
    • Check out a version of the code
      • mkdir -p ~/lyx; cd ~/lyx;
        # rm -rf lyx-devel build    # Opt. delete existig dirs
        svn co svn://svn.lyx.org/lyx/lyx-devel/trunk lyx-devel
        
    • Automake, configure and build
      • cd ~/lyx/lyx-devel; ./autogen.sh
        mkdir -p ~/lyx/build; cd ~/lyx/build; ../lyx-devel/configure
        make
        
    • Move generated code to... ?
  • Re-generation of docs, directly places it in the correct directory:
    SOURCEDOC=/home/lyx/www/wiki.lyx.org/sourcedoc
    [ -d $SOURCEDOC/svnold ] && rm -rf $SOURCEDOC/svnold
    mv $SOURCEDOC/svn $SOURCEDOC/svnold
    mkdir -p $SOURCEDOC/svn
    cd ~/lyx/build
    make OUTPUT_DIR=$SOURCEDOC/svn doxydoc
    

Notes on server configuration

We should move this to a separate page.

Installed packages

# Packages installed by Christian, roughly in chronological order

# Packages for convenience and CLI power
sudo apt-get install screen emacs

# Packages for running the web and wiki services
sudo apt-get install libapache2-mod-php5 php5-cli php5-common php5-cgi

# Packages to be able to build LyX
sudo apt-get install automake
sudo apt-get install libqt4-dev

# Packages to be able to run doxygen, i.e. generate the source docs
sudo apt-get install doxygen
sudo apt-get install graphviz

Trac related stuff

Ticket workflow

A diagram illustrating the ticket workflow (ticket life cycle) can be linked to from wiki pages using

[[uploads:/Site/Trac/trac.png]]

The diagram looks as follows:

.
We should have a page somewhere explaining the diagram...
Generating the diagram

Here's instructions for generating a diagram with the ticket workflow in Trac.

BINDIR=~larsbj/Development/Trac-0.11.3/contrib/workflow
SRCDIR=~lyx/www/trac/conf
DSTDIR=~lyx/www/wiki.lyx.org/uploads/Site/Trac

cp $SRCDIR/trac.ini $DSTDIR
$BINDIR/showworkflow $DSTDIR/trac.ini
rm $DSTDIR/trac.ini 

Notes:

  • I copy the file trac.ini to a different directory ($DSTDIR) because the script 'showworkflow' produces the output in that directory.
  • Afterwards, I remove the file trac.ini in case it contains sensitive information.
  • Neither the command 'cp' nor 'rm' should produce an error message (with the right permissions).
  • The command 'showworkflow' will protest that the program 'kpdf' isn't available. Ignore this.

Categories

Edit - History - Print - Recent Changes - All Recent Changes - Search
Page last modified on 2017-01-04 21:05 CET