Logiciels libres, linux, le web...

Aller au contenu | Aller au menu | Aller à la recherche

Tag - services

Fil des billets

jeudi, mai 7 2009

Reaction à l'interview de François Elie - l'économie du logiciel libre

Contrairement à des bloggeurs du planet je suis plutôt d'accord avec les propos de F. Elie, non pas ceux qu'il tient à propos des association d'utilisateurs de logiciels libres. Mais sur le fait qu'il faut trouver des solutions, pour faire entrer les développeurs bénévoles dans l'économie du logiciel, et qu'il faut "forcer" les entreprises, qui vendent du logiciel libre, à rendre leurs contributions à la communauté.

Dénigrer le travail des GUL c'est nul

Je ne comprends pas pourquoi Mr Elie a un tel regard sur les associations à but non lucratif qui font la promotion du logiciel libre et même plus, comme Philippe l'indique dans un commentaire.
Ces association sont bien plus à même d'accompagner les utilisateurs dans l'adoption des LL, dans le passage à un système GNU/Linux. J'ai beau installer linux sur les ordinateurs de mes proches et les conseiller, je ne peux pas à moi tout seul rassembler les connaissances des membres d'une association, ni même réussir à les accompagner dans l'utilisation de tel ou tel logiciel. Sur ce point les associations sont indispensables et vont le rester, à mon avis, très longtemps.
Le statut d'association permet d'avoir plus de crédibilité auprès des décideurs, de bénéficier de soutiens pour l'organisation de rencontres telles que les RMLL. Un utilisateur isolé, même en y mettant tout son pouvoir de conviction n'arrivera jamais au résultat des associations.
Il serait même très intéressant et très bénéfique pour les utilisateurs que des GUL s'occupent de la formation des utilisateurs dans une entreprise. Je ne sais pas si cela a déjà été mis en œuvre ?

Ne pas partager son code issu de logiciels libres, c'est inutile

Comme le souligne François Elie dans son interview, il existe un grand nombre d'entreprise qui ne reversent pas à la communauté les développements réalisés à partir de logiciels libres. Cela est certainement dû à plusieurs facteurs. J'en citerais deux :

  • Une entreprise qui paie pour le développement d'une fonctionnalité ne va pas la reverser car elle n'a pas compris l'intérêt qu'elle a à redistribuer le code. Elle se situe plus dans une réflexion du type : "Je ne paierai pas pour les autres !"
  • Une entreprise qui vends des fonctionnalités qu'elle a développé voudra conserver de futurs clients potentiels qui sont prêts à payer pour cette fonctionnalité. Elle non plus n'a pas compris l'intérêt qu'elle aurait à redistribuer son code.

Dans les deux cas la licence n'est pas respectée (à part pour des licences de type BSD), au même titre que des licences pour un poste sont utilisées sur plusieurs postes d'une entreprise.
La première ne pourra bénéficier d'améliorations apportées par la communauté. La deuxième sera aussi isolée que la première et ne cherchera pas forcément à développer plus de fonctionnalités.


Le mot de la fin

Il faut en tout cas trouver des modèles économiques qui permettront de faire profiter tout les développeurs du "fruit" de leur travail. Les mentalités doivent évoluer en entreprise, la vraie valeur ajoutée ne doit pas porter que sur du logiciel ! Enfin sous réserve de trouver les méthodes juridiques adéquat, les GUL pourraient former les utilisateurs en entreprise, cela serait beaucoup plus convivial que des formateurs "froids".

lundi, mai 4 2009

Gestion de bibliothèque libre avec PMB

PMB est un logiciel de gestion de bibliothèque libre, il permet de gérer le fond des livres et la consultation pour les lecteurs. Ce billet a pour but de présenter le logiciel PMB. Comment mettre en place PMB sur Debian Lenny.

Présentation de PMB


Sur le site de PMB, le logiciel est présenté de la manière suivante :

* PMB est conforme aux règles de la bibliothéconomie.

* Il respecte la norme UNIMARC, la recommandation 995 et permet l’import de notices issues de BDP et de toutes bases de données.

* PMB fonctionne en multipostes comme en monoposte, la machine fait office de serveur et de poste de travail.

* PMB est taillé et adapté pour les réseaux de centres de documentation ou de bibliothèques. La possibilité d’héberger la base de données à l’extérieur fait de PMB l’outil idéal pour un catalogage commun pour un réseau de bibliothèques.

* Aucun coût supplémentaire en cas d’ajout d’un poste ou d’un site : seule une connexion réseau suffit

* PMB est portable et tourne sur toutes les plate-formes courantes du marché, Windows, MacOs, Linux et plus généralement tout UNIX.

* PMB est adaptable et durable : vous disposez des sources du programme et pouvez les modifier, l’interface graphique est entièrement paramétrable.

* PMB est ouvert : Outre le code source, vous disposez du modèle conceptuel de la base de données. ... Source : Page de Présentation de PMB


Ce qu'il faut retenir c'est que PMB est conformes aux normes bien connues des bibliothécaires et documentalistes. C'est une application web donc PMB peut être installé sur beaucoup de plateformes et n'importe quel poste du réseau peut y accéder. L'interaction avec des Webservices utiles pour obtenir des informations sur les livres est intégrés, ainsi que les flux RSS bi-directionnels. Il fournit une interface de consultation du fond des livres très complets permettant des recherches précises.
Le logiciel est très largement utilisé ce qui permet de trouver beaucoup de ressources sur internet, notamment en ce qui concerne la formation des utilisateurs.



PMB sur debian Lenny


Le but de l'article n'étant pas d'expliquer l'installation de Apache et Mysql, je vous laisse découvrir ici ou la marche à suivre.

Configuration de la base données


Une fois l'installation de Apache et Mysql terminée, vous pouvez (c'est mieux) créer un utilisateur Mysql pour PMB :

$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 43

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> CREATE DATABASE pmb;
Query OK, 1 row affected (0.00 sec)

mysql> use pmb
Database changed

mysql> grant all on pmb.* to pmb@localhost identified by 'password';
Query OK, 0 rows affected (0.00 sec)


Il est vivement conseillé de remplacer password par le mot de passe de votre choix, surtout si le serveur est accessible depuis d'autres machines.

Installation de pmb sur le serveur


Vous pouvez maintenant télécharger l'archive contenant pmb : Page de téléchargement de pmb
Au moment ou j'écris ces ligne, la dernière version est la 3.2.6

Extraire le contenu de l'archive dans le répertoire du serveur web (en général /var/www/) :
# cd /var/www/
# unzip /repertoire/ou/se/trouve/pmb3.2.6.zip
# chown -R www-data:www-data pmb/

La dernière ligne permet de donner les permissions nécessaire pour l'exécution de pmb par le serveur web : utilisateur et groupe www-data pour Debian.

Il faut ensuite copier deux fichiers :

  • répertoire ./includes : db_param.inc.php_exemple en db_param.inc.php
  • répertoire ./opac_css/includes : opac_db_param.inc.php_exemple en opac_db_param.inc.php


Et leur donner les permissions nécessaires.
# cp pmb/includes/db_param.inc.php_exemple pmb/includes/db_param.inc.php
# cp pmb/opac_css/includes/opac_db_param.inc.php_exemple pmb/opac_css/includes/opac_db_param.inc.php
# chown www-data:www-data pmb/includes/db_param.inc.php
# chown www-data:www-data pmb/opac_css/includes/opac_db_param.inc.php
# chmod a+w pmb/includes/db_param.inc.php

Rendez-vous ensuite à l'adresse http://localhost/pmb/tables/install.php si vous êtes sur la machine qui héberge pmb, sinon remplacez localhost par le nom de la machine ou son adresse ip.
Choisissez ensuite l'encodage de la base de données - de préférence utf8 - et la langue. Puis entrez les paramètres de base de donnée définis précédemment :
Base de donnée PMB
Les paramètres suivant sont à choisir selon vos préférences.

Mise à jour de la base de données


Une fois que l'installation s'est bien déroulée, il ne reste plus qu'à mettre à jour la base de données.
La mise à jour consiste à passer aux versions successivement pour attendre la version à jour.
Pour effectuer cette mise à jour il faut se rendre à l'adresse http://localhost/pmb/ (remplacez localhost par le nom de machine ou l'ip si vous n'accédez pas à pmb du poste ou il est installé). Ensuite connectez vous au compte administrateur, allez dans Administration > Outils > M. à J. base. Ensuite il faut cliquer sur Cliquer ici pour poursuivre... jusqu'à ce que la version de la base de données soit la bonne.

Conclusion


PMB est un logiciel de bibliothèque qui propose beaucoup de fonctionnalités intéressantes mais son installation n'est pas totalement automatisée et c'est dommage. Les besoins matériels ne sont pas très importants. La plupart des bibliothèques disposent déjà de ce qu'il faut.

lundi, mars 16 2009

Script bash pour gérer des services sous linux

Pour faire développement web sur un eeepc, comme sur n'importe quel ordinateur, il faut disposer d'un serveur web. Et éventuellement, mais c'est quand même très pratique, d'un serveur de base de données.

Le eeepc est facilement transportable, donc c'est bien de conserver un maximum de batterie. Surtout si on est pas du genre à faire que du développement web dessus.

Après avoir supprimé les liens symboliques des services pour qu'ils ne démarrent pas au démarrage. J'ai créé un petit script bash qui permet de démarrer ou de stopper un service ou groupe de services :

# Manage services (Myql and lighttpd)
#
#
# Services to manage (space separated) :
services_name="mysql lighttpd"

SELF=$(cd $(dirname $0); pwd -P)/$(basename $0)
#
# service funtion
# params : 1 -> action ( start | stop | status ... )
# 2 -> service name (lighttpd | mysql | ...)
#
service() {
    action=$1
    service=$2
    /etc/init.d/$service $action }

#
# main()
#
case "${1:-''}" in
    'start')
        for serv_name in $services_name
do
        service start $serv_name; done ;;
    'stop')
        for serv_name in $services_name do
        service stop $serv_name; done ;;
    'status')
        for serv_name in $services_name do
        echo "Status : $serv_name" service status $serv_name; done ;;
    *) echo "Usage: $SELF start|stop|status (As root)" exit 1 ;;
esac

Il suffit de remplacer les services dans la liste en haut du script. test.