Procédure d'installation

Pré-requis

Pour ces différents éléments, il est bien sûr conseillé d'installer les versions disponible sur votre distribution (par exemple les paquets python, python-django, python-markdown, gettext, apache2 et libapache2-mod-python dans Debian Lenny). Sinon référez vous aux sites de ces applications.

Récupération des sources

La dernière version « stable » est disponible ici .

Sinon dans le répertoire dans lequel vous voulez l'installer, vous pouvez récupérer la dernière version depuis le dépôt subversion :

svn co http://www.peacefrogs.net/svn/papillon/papillon/trunk/ .

Installation des sources

Le cas échéant décompressez puis placez les sources dans un répertoire accessible en lecture à l'utilisateur apache (www-data sous debian).

sudo mkdir /var/local/django
cd /var/local/django
sudo tar xvjf /home/etienne/papillon-last.tar.bz2
sudo chown -R etienne:www-data papillon

Attention : il est important que le répertoire dans lequel est placé Papillon soit nommé papillon, si vous souhaitez faire plusieurs installations de Papillon placez les dans des répertoires différents (par exemple /var/local/django/gulliver/papillon et /var/local/django/perso/papillon)

Modifiez le fichier settings.py et initialisez les variables ROOT_PATH et BASE_SITE en fonction de votre configuration :

cd papillon
vim settings.py
####
ROOT_PATH = '/var/local/django/papillon/' # chemin vers l'installation de Papillon
BASE_SITE = 'http://www.peacefrogs.net/papillon' # adresse internet de Papillon
####

Si vous souhaitez vous servir d'une autre base de données que sqlite (postgresql ou mysql), configurez ici les différents champs commençant par DATABASE en ayant préalablement configuré votre base de données.

Dans le répertoire de Papillon, mettez en place un lien symbolique vers les styles de base django (changez le chemin en fonction de votre installation de django) :

ln -s /usr/share/python-support/python-django/django/contrib/admin/media/ .

Par ailleurs il est nécessaire de modifier le fichier urls.py
Au niveau de la ligne :

(r'^papillon/static/(?P<path>.*)$', 'django.views.static.serve',
                                 {'document_root': 'static/'}),

Remplacer static/ par le chemin local complet pour le contenu statique (par exemple /var/local/django/perso/papillon/static).

Initialisation de la base de données

Dans le répertoire de Papillon simplement faire :

./manage.py syncdb

Répondez simplement aux questions pour créer un administrateur (l'administration étant après disponible à l'adresse : http://l_adresse_ou_est_papillon/admin) et la base est initialisée.
Si vous utilisez sqlite (base par défaut) donnez les droits d'écriture sur le fichier de base à l'utilisateur apache :

chmod g+w papillon.db

Compiler le langage

Si votre langage est disponible dans le répertoire de Papillon, il est simplement nécessaire de le compiler. Toujours dans le répertoire papillon, cela peux être effectué ainsi (ici, « de » est utilisé pour l'allemand. Remplacer cela par le code de pays approprié par exemple pour le français « fr ») :

django-admin compilemessages -l de

Si votre langage n'est pas disponible, n'hésitez pas à créer le fichier po et soumettez le. Toute contribution est appréciée. Pour cela, procédez ainsi :

Tout d'abord, créez d'abord le fichier po par défaut (bien sûr remplacez « de » par le code de langage que vous souhaitez créer) :

django-admin makemessages -l de

Il devrait y avoir alors un fichier django.po dans le répertoire locale/de/LC_MESSAGES. Modifiez le fichier avec votre propre traduction.

Maintenant que ce fichier est complet, compilez-le de la même manière qu'un langage déjà disponible.

Configuration de apache

Créez et éditez un fichier de configuration pour Papillon.

sudo vim /etc/apache2/sites-available/papillon

Insérez les directives apache pour votre installation :

# partie de l'adresse après la racine de votre site
<Location "/papillon/">
# chemin vers le répertoire père de l'installation de papillon
PythonPath "['/var/local/django/'] + sys.path" 
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE papillon.settings
# à On ou Off selon...
PythonDebug On
# mettez des noms différents d'interpréteur si vous voulez mettre en place plusieurs Papillons
PythonInterpreter papillon
</Location>

Activez ce site, rechargez apache et votre Papillon devrait voler de ses propres ailes.

sudo a2ensite papillon
sudo /etc/init.d/apache2 reload

Post-installation

Pour configurer des catégories allez sur l'interface d'administration à http://l_adresse_ou_est_papillon/admin .

Un script poll_cleaning.py permet de faire le ménage parmi les sondages qui ne sont plus actifs. Dans settings.py la variable DAYS_TO_LIVE permet de régler le temps d'inactivité avant effacement.

Also available in: HTML TXT