
Mois : octobre 2009
Vous développez une application sous licence libre et vous souhaitez donc mettre les sources à disposition des Internautes sans pour autant être dépendant d’un fournisseur de service comme SourceForge ? Alors ce billet est fait pour vous…
Nous allons détailler l’installation d’un serveur de développement basée sur des logiciels libres:
- Serveur Web pour héberger le site de votre projet (Apache)
- Serveur SVN (Subversion)
- Serveur Trac pour le suivi des bugs, le recueil des demandes de nouvelles fonctions et la roadmap de votre projet
Allez zou, on entre directement dans le vif du sujet…
Installation du système d’exploitation
Peut importe l’OS, il faut juste que vous soyer à l’aise avec lui. Donc n’importe quel OS GNU/Linux, BSD ou Unix fera l’affaire (si tu demandes et Windows ? tu cliques sur le bouton Démarrer / Arrêter l’ordinateur et tu installes un vrai OS).
Personnellement, j’utilise pour illustrer ce billet une Ubuntu Serveur 8.04, l’installation se fera via le compte root et le nom de ma machine est dev.mondomaine.com.
Pour être sûr que votre serveur Ubuntu est à jour:
aptitude update
aptitude safe-upgrade
Installation du serveur Web
Tout commence par l’installation d’Apach et de son module SVN:
aptitude install apache2 libapache2-svn
Puis on désactive les sites par défaut (le fameux « It works! »):
sudo a2dissite default
/etc/init.d/apache2 reload
A ce stade, le serveur devrait vous renvoyer un message comme quoi aucun serveur virtuel n’est configuré (« [warn] NameVirtualHost *:80 has no VirtualHosts »).
Nous allons donc créer le serveur virtuel du projet (libre à vous d’en créer autant que de besoins):
# vi /etc/apache2/sites-available/dev.mondomaine.com
<virtualHost *:80>
ServerName dev.mondomaine.com
ServerAdmin admin@mondomaine.com
DocumentRoot /var/www/dev/
ErrorLog /var/log/apache2/error.log
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
</virtualHost>
On active le serveur virtuel dans la configuration d’Apache:
mkdir /var/www/dev
a2ensite dev.mondomaine.com
/etc/init.d/apache2 reload
On teste l’installation:
echo « OK » > /var/www/dev/index.html
Puis on ouvre un navigateur à l’URL: http://dev.mondomaine.com/
Installation du serveur SVN
On installe Subversion en suivant la procédure suivante (le projet sera donc stocké dans le répertoire /var/svn/projet, à modifier selon votre bon vouloir…).
On configure Apache pour qu’il puisse lire ce dépôt:
# vi /etc/apache2/mods-available/dav_svn.conf
<Location /svn>
DAV svn
SVNParentPath /var/svn
SVNListParentPath On
AuthType Basic
AuthName « Ubik Subversion Repository »
AuthUserFile /etc/apache2/dav_svn.passwd
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>
On créé un utilisateur privilégié qui aura les droits de commit sur le dépôt:
htpasswd –cs /etc/apache2/dav_svn.passwd nicolargo
Attention les prochain utilisateurs devront être créés avec la commande:
htpasswd -s /etc/apache2/dav_svn.passwd titi
Puis on redémarre le serveur:
sudo /etc/init.d/apache2 restart
Il est possible de tester l’installation en entrant l’URL suivante dans votre navigateur Web: http://dev.mondomaine.com/svn/projet/
La liste des dépôt devrait apparaitre.
Le dépôt SVN de votre projet est donc maintenant accessible via l’adresse: http://dev.mondomaine.com/svn/projet/
Lors d’un commit, un couple login/password sera demandé automatiquement (il faudra saisir les informations d’un utilisateur privilégié).
Installation du serveur Trac
On installe Trac:
aptitude install libapache2-mod-python trac python-pygments enscript
sudo a2enmod mod_python
On ajoute la configuration suivante dans le fichier /etc/apache2/sites-available/dev.mondomaine.com (dans la balise VirtualHost):
<Location /trac>
SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir /var/www/dev/trac
PythonOption TracUriRoot /trac
PythonOption PYTHON_EGG_CACHE /tmp
</Location>
<LocationMatch « /trac/[[:alnum:]]+/login »>
AuthType Basic
AuthName « Trac Dev server »
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
</LocationMatch>
trac-admin /var/www/dev/trac/projet initenv
chown -R www-data:www-data /var/www/dev/trac/
Sources m’ayant aidées lors de la rédaction de ce billet:
Invitations pour Google Wave
Update: Je viens d’envoyer les invitations aux personnes suivantes.
Attention, gOOgle met un certain temps avant de valider ces invitations…
wanderscheid
EtreRe
JB
GoZ
jisee
walmins
Agnès
Vincent

J’ai 8 invitations pour tester Google Wave, le nouveau bébé de gOOgle. Je les enverrai aux 8 premiers à laisser un commentaire sur ce billet !
A vos claviers…

Pas trop le temps de blogger en ce moment (sniff), donc juste une rapide note pour vous indiquer que GStreamer, le framework multimédia sous GNU/Linux vient d’évoluer en version 0.10.25 (pour le core et les plugins de bases).
Deux solutions pour profiter dès à présent des nouveautés, la première est de configurer votre système GNU/Linux Ubuntu avec le dépôt de développement du projet GStreamer.
On commence par ajouter les lignes suivantes au fichier /etc/pat/sources.list:
## Gstreamer for dev
deb http://ppa.launchpad.net/gstreamer-developers/ppa/ubuntu jaunty main
deb-src http://ppa.launchpad.net/gstreamer-developers/ppa/ubuntu jaunty main
Puis on met à jour notre système:
sudo apt-key adv –keyserver keyserver.ubuntu.com –recv-keys 051D8B58
sudo aptitude update
sudo aptitude safe-upgrade
La deuxième solution consiste à installer cette nouvelle version en complément de la version standard. Je vous conseille de compiler GStreamer en suivant cette procédure (il y a même un script shell qui fait tout pour vous…).


En réinstallant un nouveau PC sous GNU/Linux, j’ai voulu récupérer la configuration (bookmarks, login/password, historique…) du navigateur Chromium de mon PC portable. Malheureusement, il n’y a pas de fonction d’export de configuration (à l’heure actuelle mais une fonction de synchronisation est prévue dans la roadmap). Nous allons donc voir dans ce billet comment contourner se problème.
La première chose à faire est d’identifier ou les données sont stockées. Après un rapide « locate chromium » et quelques « grep » plus tard, il semble que les paramètres du navigateur se trouve dans un répertoire caché de votre compte racine:
$ ll .config/chromium/
total 28800
drwx—— 7 labo labo 4096 2009-10-02 16:15 Default
drwx—— 2 labo labo 4096 2009-09-07 15:57 Dictionaries
-rw-r–r– 1 labo labo 0 2009-05-25 11:11 First Run Alpha
-rw-r–r– 1 labo labo 0 2009-06-10 17:31 First Run Dev
-rw——- 1 labo labo 17936 2009-10-02 16:14 Local State
-rw-r–r– 1 labo labo 27344896 2009-10-02 16:12 Safe Browsing Bloom
-rw——- 1 labo labo 2078150 2009-10-02 16:12 Safe Browsing Bloom Filter 2
lrwxrwxrwx 1 labo labo 22 2009-10-01 13:54 SingletonLock -> linux-demo-laptop-5279
srwxr-xr-x 1 labo labo 0 2009-10-01 13:54 SingletonSocket
Il faut donc copier le contenu de se répertoire dans votre nouvelle machine (par SSH, clès USB ou tout autres moyens):
scp -r ~/.config/chromium/ monnouveaupc:~/.config/
Si vous relancez le navigateur sur votre nouvelle machine, tout les paramètres devraient être là !
Mes « marques ta-pages » de la semaine

- Moteur de recherche spécial licence Creative Common
- 10 bonnes idées pour recycler ses vieux PC
- Les nouveautés du codec Theora 1.1
- Gnome 2.28 est là !
- Création en ligne de formulaires HTML avec JQuery
- Créer son live CD Ubuntu pas à pas
- Un serveur de messagerie complet et libre (tutorial)
- Ubuntu 9.10, une dernière version alpha (6) avant la bêta
Ubuntu Janty (9.04) est fourni par défaut avec la version 3.0 de la suite bureautique OpenOffice. Nous allons voir dans ce billet comment configurer votre système GNU/Linux pour profiter des améliorations de la version 3.1 et des versions qui suivront.
Ajout du dépôt OpenOffice
La première chose à faire est d’ajouter le dépôt suivant à votre fichier /etc/apt/sources.list:
deb http://ppa.launchpad.net/openoffice-pkgs/ppa/ubuntu jaunty main
deb-src http://ppa.launchpad.net/openoffice-pkgs/ppa/ubuntu jaunty main
Puis on importe la clés:
sudo apt-key adv –keyserver keyserver.ubuntu.com –recv-keys 247D1CFF
On met à jour nos dépôts:
sudo aptitude update
Mise à jour d’OpenOffice
On met à jour tout ce beau monde:
sudo aptitude safe-upgrade
Et on lance OpenOffice pour vérifier que tout est OK:

La vie est simple en ligne de commande…
