commit f299be9c77c3bd6345f6fbc74b8c6bf827934783
Author: Aurelien BOMPARD <aurelien.bompard@c-s.fr>
Date:   Wed Apr 20 13:55:25 2011 +0000

    Uniformisation des fichiers de conf dans les IHM
    
    git-svn-id: https://vigilo-dev.si.c-s.fr/svn@6852 b22e2e97-25c9-44ff-b637-2e5ceca36478

diff --git a/.gitignore b/.gitignore
index f884205..3fa335c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
+data
 log/*.log
 vigiboard/i18n/*/LC_MESSAGES/*.mo
 vigiboard/i18n/*/LC_MESSAGES/*.js
diff --git a/Makefile b/Makefile
index 55b078c..c795534 100644
--- a/Makefile
+++ b/Makefile
@@ -1,20 +1,29 @@
 NAME := vigiboard
+
+SUBST_FILES := deployment/logrotate.conf deployment/settings.ini \
+               deployment/vigiboard.conf deployment/vigiboard.wsgi
+
 all: build
+build: $(SUBST_FILES)
 
 include buildenv/Makefile.common
 MODULE := $(NAME)
 CODEPATH := $(NAME)
 EPYDOC_PARSE := vigiboard\.(widgets|controllers)
 
+deployment/%: deployment/%.in
+	sed -e 's,@SYSCONFDIR@,$(SYSCONFDIR),g' \
+        -e 's,@LOCALSTATEDIR@,$(LOCALSTATEDIR),g' $^ > $@
+
 install: build install_python install_data
 install_pkg: build install_python_pkg install_data
 
-install_python: $(PYTHON)
+install_python: $(PYTHON) $(SUBST_FILES)
 	$(PYTHON) setup.py install --record=INSTALLED_FILES
-install_python_pkg: $(PYTHON)
+install_python_pkg: $(PYTHON) $(SUBST_FILES)
 	$(PYTHON) setup.py install --single-version-externally-managed --root=$(DESTDIR) --record=INSTALLED_FILES
 
-install_data: deployment/logrotate.conf
+install_data: $(SUBST_FILES)
 	# Permissions de la conf
 	chmod a+rX -R $(DESTDIR)$(SYSCONFDIR)/vigilo/$(NAME)
 	[ `id -u` -ne 0 ] || chgrp $(HTTPD_USER) $(DESTDIR)$(SYSCONFDIR)/vigilo/$(NAME)/*.ini
@@ -39,5 +48,6 @@ install_data: deployment/logrotate.conf
 lint: lint_pylint
 tests: tests_nose
 clean: clean_python
+	rm -f $(SUBST_FILES)
 
 .PHONY: install_pkg install_python install_python_pkg install_data
diff --git a/deployment/logrotate.conf b/deployment/logrotate.conf
deleted file mode 100644
index c04abde..0000000
--- a/deployment/logrotate.conf
+++ /dev/null
@@ -1,8 +0,0 @@
-/var/log/vigilo/vigiboard/*.log {
-    missingok
-    notifempty
-    sharedscripts
-    postrotate
-        /sbin/service httpd reload > /dev/null 2>/dev/null || true
-    endscript
-}
diff --git a/deployment/logrotate.conf.in b/deployment/logrotate.conf.in
new file mode 100644
index 0000000..c514277
--- /dev/null
+++ b/deployment/logrotate.conf.in
@@ -0,0 +1,8 @@
+@LOCALSTATEDIR@/log/vigilo/vigiboard/*.log {
+    missingok
+    notifempty
+    sharedscripts
+    postrotate
+        /sbin/service httpd reload > /dev/null 2>/dev/null || true
+    endscript
+}
diff --git a/deployment/settings.ini b/deployment/settings.ini
deleted file mode 100644
index 43adb1d..0000000
--- a/deployment/settings.ini
+++ /dev/null
@@ -1,262 +0,0 @@
-;
-; vigiboard - Pylons development environment configuration
-;
-; The %(here)s variable will be replaced with the parent directory of this file
-;
-; This file is for deployment specific config options -- other configuration
-; that is always required for the app is done in the config directory,
-; and generally should not be modified by end users.
-
-[DEFAULT]
-debug = false
-; Uncomment and replace with the address which should receive any error reports
-;email_to = you@yourdomain.com
-smtp_server = localhost
-error_email_from = paste@localhost
-
-[server:main]
-use = egg:Paste#http
-host = 0.0.0.0
-port = 80
-
-[app:main]
-use = egg:vigilo-vigiboard
-
-;
-; Configuration de VigiBoard
-;
-
-;
-; 1 - Configuration de la base de données.
-;
-
-; URL d'accès à la base de données.
-sqlalchemy.url=postgres://vigilo:vigilo@127.0.0.1/vigilo
-
-; Le préfixe des tables de Vigilo dans la base de données.
-db_basename=vigilo_
-
-; Options de bas niveau de la couche ORM
-; (pour déboguer les requêtes SQL).
-sqlalchemy.echo = false
-sqlalchemy.echo_pool = false
-sqlalchemy.pool_recycle = 3600
-sqlalchemy.pool_size=20
-sqlalchemy.max_overflow=100
-
-;
-; 2 - Configuration des éléments de sécurité.
-;
-
-; Méthode de hachage des mots de passe.
-; Les méthodes suivantes sont supportées : md5,sha1.
-; ATTENTION : Si cette directive n'est pas renseignée
-; ou si la méthode indiquée est introuvable, les mots
-; de passe sont stockés en clair dans la base de données !!
-password_hashing_function=md5
-
-; La clé secrète utilisée pour chiffrer/déchiffrer la session.
-; Vous DEVEZ changer cette valeur avant la mise en production.
-; Vous pouvez utilisez la même valeur que pour la clé
-; "sa_auth.cookie_secret".
-beaker.session.secret = vigilo
-
-; La clé secrète utilisée pour chiffrer/déchiffrer le cookie
-; d'authentification.
-; Vous DEVEZ changer cette valeur avant la mise en production.
-; Vous pouvez utilisez la même valeur que pour la clé
-; "beaker.session.secret".
-sa_auth.cookie_secret = vigilo
-
-; Indique si un mécanisme d'authentification externe
-; (ex : Kerberos) est en place ou non.
-external_auth=False
-
-; Fichier de configuration définissant la politique de gestion
-; de l'authentification.
-auth.config = %(here)s/who.ini
-
-;
-; 3 - Configuration de l'interface.
-;
-
-; La langue par défaut de l'interface.
-lang=fr
-
-; Lien d'aide (redirigeant vers la documentation de Vigilo
-; par exemple).
-help_link=http://help.example.com/vigilo
-
-; Délai de rafraîchissement automatique (en secondes).
-refresh_delay=30
-
-; Indique si le rafraîchissement automatique
-; est activé ou non par défaut.
-refresh_enabled=True
-
-; Nombre d'événements par page.
-vigiboard_items_per_page = 15
-
-; URL vers laquelle le logo de Vigilo redirige.
-logo_link = /
-
-; Ordre de tri pour la priorité des événements.
-; - Utiliser "asc" si la priorité est inversement proportionnelle à sa
-;   valeur (ie: plus le nombre est bas, plus la priorité est élevée).
-; - Utiliser "desc" si la priorité est proportionnelle à sa valeur
-;   (ie: plus le nombre est élevé, plus la priorité est élevée).
-; NE PAS METTRE DE GUILLEMETS/APOSTROPHES AUTOUR DE LA VALEUR.
-vigiboard_priority_order = asc
-
-; Indique si le tri des événements se fait d'abord sur l'état Nagios
-; puis l'horodatage de l'événement, ou bien l'inverse.
-; Dans tous les cas, d'autres critères de tri interviennent avant
-; (état d'acquittement et priorité ITIL).
-state_first = True
-
-;
-; 4 - Configuration du proxy Nagios.
-;
-
-; Définition d'une méthode d'authentification, d'un identifiant
-; et d'un mot de passe pour s'identifier auprès d'un éventuel
-; serveur mandataire intermédiaire.
-; Ces directives sont communes à tous les proxies Vigilo configurés.
-; Par défaut : aucune authentification avec un serveur mandataire
-; n'est tentée si l'une de ces directives est manquante.
-;app_proxy_auth_method = basic
-;app_proxy_auth_username = vigilo
-;app_proxy_auth_password = vigilo
-
-; Configuration du proxy Nagios.
-; a) Emplacement de l'installation de Nagios sur le serveur distant.
-app_path.nagios = /nagios/
-; b) Schéma ("protocole") à utiliser pour se connecter
-;    à l'application. En général : http ou https.
-;    Par défaut : http
-;app_scheme.nagios = http
-; c) Port de connexion au serveur distant hébergeant
-;    l'application.
-;    Par défaut : 80 si app_schema.nagios vaut "http"
-;                 ou 443 si app_schema.nagios vaut "https"
-;app_port.nagios = 80
-; d) Le proxy agit-il comme un simple redirecteur ?
-;    Les valeurs autorisées sont "true" (mode redirection) ou "false"
-;    (mode proxy standard).
-;    En mode redirection, les directives relatives à l'authentification
-;    sont ignorées. Si le site distant nécessite une authentification,
-;    elle sera demandée directement à l'utilisateur.
-;    Par défaut : false
-;app_redirect.nagios = true
-; e) Définition d'une méthode d'authentification, d'un identifiant
-;    et d'un mot de passe pour s'identifier auprès de Nagios.
-;    Par défaut : aucune authentification n'a lieu si l'une de ces
-;    directives est manquante.
-;app_auth_method.nagios = basic
-;app_auth_username.nagios = nagios
-;app_auth_password.nagios = <contenu de /etc/nagios/passwd.plaintext>
-
-;
-; 5 - Configuration avancée des sessions.
-;
-
-; Le nom du dossier dans lequel les fichiers de sessions sont conservés.
-cache_dir = /tmp/vigilo/vigiboard/data
-
-; Le nom du cookie de session qui sera créé sur le navigateur
-; du client.
-beaker.session.key = vigiboard
-
-; If you'd like to fine-tune the individual locations of the cache data dirs
-; for the Cache data, or the Session saves, un-comment the desired settings
-; here:
-;beaker.cache.data_dir = %(here)s/data/cache
-;beaker.session.data_dir = %(here)s/data/sessions
-
-;
-; 6 - Autres options.
-; Pensez à configurer le logging dans les sections
-; "loggers", "handlers" & "formatters" ci-dessous.
-;
-
-; Doit être laissé à true pour obtenir une application fonctionnelle.
-full_stack = true
-
-; Doit valoir false en production (risque de sécurité sinon).
-; WARNING: *THE LINE BELOW MUST BE UNCOMMENTED ON A PRODUCTION ENVIRONMENT*
-; Debug mode will enable the interactive debugging tool, allowing ANYONE to
-; execute malicious code after an exception is raised.
-set debug = false
-
-; Logging configuration
-; Add additional loggers, handlers, formatters here
-; Uses python's logging config file format
-; http://docs.python.org/lib/logging-config-fileformat.html
-
-[loggers]
-keys = root, vigiboard, sqlalchemy, auth
-
-[handlers]
-keys = console,sql_log,root_log,vigiboard_log,auth_log
-
-[formatters]
-keys = generic
-
-; If you create additional loggers, add them as a key to [loggers]
-[logger_root]
-level = INFO
-handlers = root_log
-
-[logger_vigiboard]
-level = INFO
-handlers = vigiboard_log
-qualname = vigiboard
-
-[logger_sqlalchemy]
-level = INFO
-handlers = sql_log
-qualname = sqlalchemy.engine
-
-; A logger for authentication, identification and authorization -- this is
-; repoze.who and repoze.what:
-[logger_auth]
-level = INFO
-handlers = auth_log
-qualname = auth
-
-; If you create additional handlers, add them as a key to [handlers]
-[handler_console]
-class = StreamHandler
-args = (sys.stderr,)
-level = NOTSET
-formatter = generic
-
-[handler_sql_log]
-class = handlers.TimedRotatingFileHandler
-args = ('/var/log/vigilo/vigiboard/sql.log','D', 30, 12)
-level = DEBUG
-formatter = generic
-
-[handler_root_log]
-class = handlers.TimedRotatingFileHandler
-args = ('/var/log/vigilo/vigiboard/root.log', 'D', 30, 12)
-level = DEBUG
-formatter = generic
-
-[handler_vigiboard_log]
-class = handlers.TimedRotatingFileHandler
-args = ('/var/log/vigilo/vigiboard/vigiboard.log', 'D', 30, 12)
-level = DEBUG
-formatter = generic
-
-[handler_auth_log]
-class = handlers.TimedRotatingFileHandler
-args = ('/var/log/vigilo/vigiboard/auth.log', 'D', 30, 12)
-level = DEBUG
-formatter = generic
-
-; If you create additional formatters, add them as a key to [formatters]
-[formatter_generic]
-format = %(asctime)s,%(msecs)03d %(levelname)-5.5s [%(name)s] %(message)s
-datefmt = %H:%M:%S
-class=vigilo.common.logging.VigiloFormatter
diff --git a/deployment/settings.ini.in b/deployment/settings.ini.in
new file mode 100644
index 0000000..9a96e40
--- /dev/null
+++ b/deployment/settings.ini.in
@@ -0,0 +1,262 @@
+;
+; vigiboard - Pylons development environment configuration
+;
+; The %(here)s variable will be replaced with the parent directory of this file
+;
+; This file is for deployment specific config options -- other configuration
+; that is always required for the app is done in the config directory,
+; and generally should not be modified by end users.
+
+[DEFAULT]
+debug = false
+; Uncomment and replace with the address which should receive any error reports
+;email_to = you@yourdomain.com
+smtp_server = localhost
+error_email_from = paste@localhost
+
+[server:main]
+use = egg:Paste#http
+host = 0.0.0.0
+port = 80
+
+[app:main]
+use = egg:vigilo-vigiboard
+
+;
+; Configuration de VigiBoard
+;
+
+;
+; 1 - Configuration de la base de données.
+;
+
+; URL d'accès à la base de données.
+sqlalchemy.url=postgres://vigilo:vigilo@127.0.0.1/vigilo
+
+; Le préfixe des tables de Vigilo dans la base de données.
+db_basename=vigilo_
+
+; Options de bas niveau de la couche ORM
+; (pour déboguer les requêtes SQL).
+sqlalchemy.echo = false
+sqlalchemy.echo_pool = false
+sqlalchemy.pool_recycle = 3600
+sqlalchemy.pool_size=20
+sqlalchemy.max_overflow=100
+
+;
+; 2 - Configuration des éléments de sécurité.
+;
+
+; Méthode de hachage des mots de passe.
+; Les méthodes suivantes sont supportées : md5,sha1.
+; ATTENTION : Si cette directive n'est pas renseignée
+; ou si la méthode indiquée est introuvable, les mots
+; de passe sont stockés en clair dans la base de données !!
+password_hashing_function=md5
+
+; La clé secrète utilisée pour chiffrer/déchiffrer la session.
+; Vous DEVEZ changer cette valeur avant la mise en production.
+; Vous pouvez utilisez la même valeur que pour la clé
+; "sa_auth.cookie_secret".
+beaker.session.secret = vigilo
+
+; La clé secrète utilisée pour chiffrer/déchiffrer le cookie
+; d'authentification.
+; Vous DEVEZ changer cette valeur avant la mise en production.
+; Vous pouvez utilisez la même valeur que pour la clé
+; "beaker.session.secret".
+sa_auth.cookie_secret = vigilo
+
+; Indique si un mécanisme d'authentification externe
+; (ex : Kerberos) est en place ou non.
+external_auth=False
+
+; Fichier de configuration définissant la politique de gestion
+; de l'authentification.
+auth.config = %(here)s/who.ini
+
+;
+; 3 - Configuration de l'interface.
+;
+
+; La langue par défaut de l'interface.
+lang=fr
+
+; Lien d'aide (redirigeant vers la documentation de Vigilo
+; par exemple).
+help_link=http://help.example.com/vigilo
+
+; Délai de rafraîchissement automatique (en secondes).
+refresh_delay = 30
+
+; Indique si le rafraîchissement automatique
+; est activé ou non par défaut.
+refresh_enabled=True
+
+; Nombre d'événements par page.
+vigiboard_items_per_page = 15
+
+; URL vers laquelle le logo de Vigilo redirige.
+logo_link = /
+
+; Ordre de tri pour la priorité des événements.
+; - Utiliser "asc" si la priorité est inversement proportionnelle à sa
+;   valeur (ie: plus le nombre est bas, plus la priorité est élevée).
+; - Utiliser "desc" si la priorité est proportionnelle à sa valeur
+;   (ie: plus le nombre est élevé, plus la priorité est élevée).
+; NE PAS METTRE DE GUILLEMETS/APOSTROPHES AUTOUR DE LA VALEUR.
+vigiboard_priority_order = asc
+
+; Indique si le tri des événements se fait d'abord sur l'état Nagios
+; puis l'horodatage de l'événement, ou bien l'inverse.
+; Dans tous les cas, d'autres critères de tri interviennent avant
+; (état d'acquittement et priorité ITIL).
+state_first = True
+
+;
+; 4 - Configuration du proxy Nagios.
+;
+
+; Définition d'une méthode d'authentification, d'un identifiant
+; et d'un mot de passe pour s'identifier auprès d'un éventuel
+; serveur mandataire intermédiaire.
+; Ces directives sont communes à tous les proxies Vigilo configurés.
+; Par défaut : aucune authentification avec un serveur mandataire
+; n'est tentée si l'une de ces directives est manquante.
+;app_proxy_auth_method = basic
+;app_proxy_auth_username = vigilo
+;app_proxy_auth_password = vigilo
+
+; Configuration du proxy Nagios.
+; a) Emplacement de l'installation de Nagios sur le serveur distant.
+app_path.nagios = /nagios/
+; b) Schéma ("protocole") à utiliser pour se connecter
+;    à l'application. En général : http ou https.
+;    Par défaut : http
+;app_scheme.nagios = http
+; c) Port de connexion au serveur distant hébergeant
+;    l'application.
+;    Par défaut : 80 si app_schema.nagios vaut "http"
+;                 ou 443 si app_schema.nagios vaut "https"
+;app_port.nagios = 80
+; d) Le proxy agit-il comme un simple redirecteur ?
+;    Les valeurs autorisées sont "true" (mode redirection) ou "false"
+;    (mode proxy standard).
+;    En mode redirection, les directives relatives à l'authentification
+;    sont ignorées. Si le site distant nécessite une authentification,
+;    elle sera demandée directement à l'utilisateur.
+;    Par défaut : false
+;app_redirect.nagios = true
+; e) Définition d'une méthode d'authentification, d'un identifiant
+;    et d'un mot de passe pour s'identifier auprès de Nagios.
+;    Par défaut : aucune authentification n'a lieu si l'une de ces
+;    directives est manquante.
+;app_auth_method.nagios = basic
+;app_auth_username.nagios = nagios
+;app_auth_password.nagios = <contenu de /etc/nagios/passwd.plaintext>
+
+;
+; 5 - Configuration avancée des sessions.
+;
+
+; Le nom du dossier dans lequel les fichiers de sessions sont conservés.
+cache_dir = @LOCALSTATEDIR@/cache/vigilo/sessions
+
+; Le nom du cookie de session qui sera créé sur le navigateur
+; du client.
+beaker.session.key = vigiboard
+
+; If you'd like to fine-tune the individual locations of the cache data dirs
+; for the Cache data, or the Session saves, un-comment the desired settings
+; here:
+;beaker.cache.data_dir = %(here)s/data/cache
+;beaker.session.data_dir = %(here)s/data/sessions
+
+;
+; 6 - Autres options.
+; Pensez à configurer le logging dans les sections
+; "loggers", "handlers" & "formatters" ci-dessous.
+;
+
+; Doit être laissé à true pour obtenir une application fonctionnelle.
+full_stack = true
+
+; Doit valoir false en production (risque de sécurité sinon).
+; WARNING: *THE LINE BELOW MUST BE UNCOMMENTED ON A PRODUCTION ENVIRONMENT*
+; Debug mode will enable the interactive debugging tool, allowing ANYONE to
+; execute malicious code after an exception is raised.
+set debug = false
+
+; Logging configuration
+; Add additional loggers, handlers, formatters here
+; Uses python's logging config file format
+; http://docs.python.org/lib/logging-config-fileformat.html
+
+[loggers]
+keys = root, vigiboard, sqlalchemy, auth
+
+[handlers]
+keys = console,sql_log,root_log,vigiboard_log,auth_log
+
+[formatters]
+keys = generic
+
+; If you create additional loggers, add them as a key to [loggers]
+[logger_root]
+level = INFO
+handlers = root_log
+
+[logger_vigiboard]
+level = INFO
+handlers = vigiboard_log
+qualname = vigiboard
+
+[logger_sqlalchemy]
+level = INFO
+handlers = sql_log
+qualname = sqlalchemy.engine
+
+; A logger for authentication, identification and authorization -- this is
+; repoze.who and repoze.what:
+[logger_auth]
+level = INFO
+handlers = auth_log
+qualname = auth
+
+; If you create additional handlers, add them as a key to [handlers]
+[handler_console]
+class = StreamHandler
+args = (sys.stderr,)
+level = NOTSET
+formatter = generic
+
+[handler_sql_log]
+class = handlers.TimedRotatingFileHandler
+args = ('@LOCALSTATEDIR@/log/vigilo/vigiboard/sql.log','D', 30, 12)
+level = NOTSET
+formatter = generic
+
+[handler_root_log]
+class = handlers.TimedRotatingFileHandler
+args = ('@LOCALSTATEDIR@/log/vigilo/vigiboard/root.log', 'D', 30, 12)
+level = NOTSET
+formatter = generic
+
+[handler_vigiboard_log]
+class = handlers.TimedRotatingFileHandler
+args = ('@LOCALSTATEDIR@/log/vigilo/vigiboard/vigiboard.log', 'D', 30, 12)
+level = NOTSET
+formatter = generic
+
+[handler_auth_log]
+class = handlers.TimedRotatingFileHandler
+args = ('@LOCALSTATEDIR@/log/vigilo/vigiboard/auth.log', 'D', 30, 12)
+level = NOTSET
+formatter = generic
+
+; If you create additional formatters, add them as a key to [formatters]
+[formatter_generic]
+format = %(asctime)s,%(msecs)03d %(levelname)-5.5s [%(name)s] %(message)s
+datefmt = %H:%M:%S
+class=vigilo.common.logging.VigiloFormatter
diff --git a/deployment/vigiboard.conf b/deployment/vigiboard.conf
deleted file mode 100644
index 9f28405..0000000
--- a/deployment/vigiboard.conf
+++ /dev/null
@@ -1,25 +0,0 @@
-<IfModule !mod_wsgi.c>
-LoadModule wsgi_module modules/mod_wsgi.so
-</IfModule>
-
-<IfModule mod_wsgi.c>
-
-WSGIRestrictStdout off
-WSGIPassAuthorization on
-WSGIDaemonProcess vigiboard user=apache group=apache threads=2
-WSGIScriptAlias /vigilo/vigiboard "/etc/vigilo/vigiboard/vigiboard.wsgi"
-
-KeepAlive Off
-
-<Directory "/etc/vigilo/vigiboard/">
-    <Files "vigiboard.wsgi">
-        WSGIProcessGroup vigiboard
-        WSGIApplicationGroup %{GLOBAL}
-
-        Order deny,allow
-        Allow from all
-    </Files>
-</Directory>
-
-</IfModule>
-
diff --git a/deployment/vigiboard.conf.in b/deployment/vigiboard.conf.in
new file mode 100644
index 0000000..df4ceca
--- /dev/null
+++ b/deployment/vigiboard.conf.in
@@ -0,0 +1,25 @@
+<IfModule !mod_wsgi.c>
+LoadModule wsgi_module modules/mod_wsgi.so
+</IfModule>
+
+<IfModule mod_wsgi.c>
+
+WSGIRestrictStdout off
+WSGIPassAuthorization on
+WSGIDaemonProcess vigiboard user=apache group=apache threads=2
+WSGIScriptAlias /vigilo/vigiboard "@SYSCONFDIR@/vigilo/vigiboard/vigiboard.wsgi"
+
+KeepAlive Off
+
+<Directory "@SYSCONFDIR@/vigilo/vigiboard/">
+    <Files "vigiboard.wsgi">
+        WSGIProcessGroup vigiboard
+        WSGIApplicationGroup %{GLOBAL}
+
+        Order deny,allow
+        Allow from all
+    </Files>
+</Directory>
+
+</IfModule>
+
diff --git a/deployment/vigiboard.wsgi b/deployment/vigiboard.wsgi
deleted file mode 100644
index 17bc1b5..0000000
--- a/deployment/vigiboard.wsgi
+++ /dev/null
@@ -1,20 +0,0 @@
-# -*- coding: utf-8 -*-
-# vim: set fileencoding=utf-8 sw=4 ts=4 et ft=python :
-
-#import os, sys
-#from pkg_resources import get_distribution
-
-#egg_file = get_distribution('vigiboard').egg_info
-
-#os.environ['PYTHON_EGG_CACHE'] = '/tmp/vigiboard/python-eggs'
-
-import os.path
-ini_file = '/etc/vigilo/vigiboard/settings.ini'
-ini_file = os.path.join('/', *ini_file.split('/'))
-
-from paste.deploy import loadapp
-application = loadapp('config:%s' % ini_file)
-
-from paste.script.util.logging_config import fileConfig
-fileConfig(ini_file)
-
diff --git a/deployment/vigiboard.wsgi.in b/deployment/vigiboard.wsgi.in
new file mode 100644
index 0000000..ddf13e1
--- /dev/null
+++ b/deployment/vigiboard.wsgi.in
@@ -0,0 +1,21 @@
+# -*- coding: utf-8 -*-
+# vim: set fileencoding=utf-8 sw=4 ts=4 et ft=python :
+
+#import os, sys
+#from pkg_resources import get_distribution
+
+#egg_file = get_distribution('vigilo-vigiboard').egg_info
+
+#import os
+#os.environ['PYTHON_EGG_CACHE'] = '@LOCALSTATEDIR@/cache/vigilo/eggs'
+
+import os.path
+ini_file = '@SYSCONFDIR@/vigilo/vigiboard/settings.ini'
+ini_file = os.path.join('/', *ini_file.split('/'))
+
+from paste.deploy import loadapp
+application = loadapp('config:%s' % ini_file)
+
+from paste.script.util.logging_config import fileConfig
+fileConfig(ini_file)
+
diff --git a/pkg/vigiboard.mandriva.spec b/pkg/vigiboard.mandriva.spec
index d866053..124a5bf 100644
--- a/pkg/vigiboard.mandriva.spec
+++ b/pkg/vigiboard.mandriva.spec
@@ -20,7 +20,6 @@ Requires:   vigilo-turbogears
 Requires:   python-tw.forms
 Requires:   apache-mod_wsgi
 ######### Dependance from python dependance tree ########
-Requires:   vigilo-vigiboard
 Requires:   vigilo-common
 Requires:   vigilo-models
 Requires:   vigilo-themes-default
@@ -97,6 +96,7 @@ rm -rf $RPM_BUILD_ROOT
 make install_pkg \
 	DESTDIR=$RPM_BUILD_ROOT \
 	SYSCONFDIR=%{_sysconfdir} \
+	LOCALSTATEDIR=%{_localstatedir} \
 	PYTHON=%{__python}
 
 %find_lang %{name}
@@ -117,9 +117,10 @@ rm -rf $RPM_BUILD_ROOT
 %config(noreplace) %{_sysconfdir}/vigilo/%{module}/*.py
 %config(noreplace) %{_sysconfdir}/vigilo/%{module}/*.wsgi
 %config(noreplace) %attr(640,root,apache) %{_sysconfdir}/vigilo/%{module}/*.ini
-%{_sysconfdir}/httpd/conf/webapps.d/%{module}.conf
+%config(noreplace) /etc/httpd/conf/webapps.d/%{module}.conf
 %dir %{_localstatedir}/log/vigilo/
 %attr(750,apache,apache) %{_localstatedir}/log/vigilo/%{module}
-%config(noreplace) %{_sysconfdir}/logrotate.d/%{module}
+%config(noreplace) /etc/logrotate.d/%{module}
 %attr(750,apache,apache) %{_localstatedir}/cache/vigilo/sessions
 %{python_sitelib}/*
+
diff --git a/pkg/vigiboard.redhat.spec b/pkg/vigiboard.redhat.spec
index 6701d0e..dfc8449 100644
--- a/pkg/vigiboard.redhat.spec
+++ b/pkg/vigiboard.redhat.spec
@@ -37,7 +37,7 @@ This application is part of the Vigilo Project <http://vigilo-project.org>
 %prep
 %setup -q
 # A cause des permissions sur /var/log/httpd sur Red Hat
-sed -i -e '/<IfModule mod_wsgi\.c>/a WSGISocketPrefix run/wsgi' deployment/%{module}.conf
+sed -i -e '/<IfModule mod_wsgi\.c>/a WSGISocketPrefix run/wsgi' deployment/%{module}.conf.in
 
 %build
 
@@ -46,6 +46,7 @@ rm -rf $RPM_BUILD_ROOT
 make install_pkg \
 	DESTDIR=$RPM_BUILD_ROOT \
 	SYSCONFDIR=%{_sysconfdir} \
+	LOCALSTATEDIR=%{_localstatedir} \
 	PYTHON=%{__python}
 
 # %find_lang %{name} # ne fonctionne qu'avec les fichiers dans /usr/share/locale/
@@ -68,9 +69,10 @@ rm -rf $RPM_BUILD_ROOT
 %config(noreplace) %attr(640,root,apache) %{_sysconfdir}/vigilo/%{module}/*.ini
 %ghost %{_sysconfdir}/vigilo/%{module}/*.pyo
 %ghost %{_sysconfdir}/vigilo/%{module}/*.pyc
-%{_sysconfdir}/httpd/conf.d/%{module}.conf
+%config(noreplace) /etc/httpd/conf.d/%{module}.conf
 %dir %{_localstatedir}/log/vigilo/
 %attr(750,apache,apache) %{_localstatedir}/log/vigilo/%{module}
-%config(noreplace) %{_sysconfdir}/logrotate.d/%{module}
+%config(noreplace) /etc/logrotate.d/%{module}
 %attr(750,apache,apache) %{_localstatedir}/cache/vigilo/sessions
 %{python26_sitelib}/*
+
diff --git a/pkg/vigiboard.rhel6.spec b/pkg/vigiboard.rhel6.spec
index 81a2366..212a2de 100644
--- a/pkg/vigiboard.rhel6.spec
+++ b/pkg/vigiboard.rhel6.spec
@@ -31,7 +31,7 @@ This application is part of the Vigilo Project <http://vigilo-project.org>
 %prep
 %setup -q
 # A cause des permissions sur /var/log/httpd sur Red Hat
-sed -i -e '/<IfModule mod_wsgi\.c>/a WSGISocketPrefix run/wsgi' deployment/%{module}.conf
+sed -i -e '/<IfModule mod_wsgi\.c>/a WSGISocketPrefix run/wsgi' deployment/%{module}.conf.in
 
 %build
 
@@ -40,6 +40,7 @@ rm -rf $RPM_BUILD_ROOT
 make install_pkg \
     DESTDIR=$RPM_BUILD_ROOT \
     SYSCONFDIR=%{_sysconfdir} \
+	LOCALSTATEDIR=%{_localstatedir} \
     PYTHON=%{__python}
 
 # %find_lang %{name} # ne fonctionne qu'avec les fichiers dans /usr/share/locale/
@@ -60,9 +61,10 @@ rm -rf $RPM_BUILD_ROOT
 %config(noreplace) %{_sysconfdir}/vigilo/%{module}/*.py
 %config(noreplace) %{_sysconfdir}/vigilo/%{module}/*.wsgi
 %config(noreplace) %attr(640,root,apache) %{_sysconfdir}/vigilo/%{module}/*.ini
-%{_sysconfdir}/httpd/conf.d/%{module}.conf
+%config(noreplace) /etc/httpd/conf.d/%{module}.conf
 %dir %{_localstatedir}/log/vigilo/
 %attr(750,apache,apache) %{_localstatedir}/log/vigilo/%{module}
-%config(noreplace) %{_sysconfdir}/logrotate.d/%{module}
+%config(noreplace) /etc/logrotate.d/%{module}
 %attr(750,apache,apache) %{_localstatedir}/cache/vigilo/sessions
 %{python_sitelib}/*
+
