Installer la plateforme de favoris collaboratifs GetBoo sur Debian 4.0 Etch et 5.0 Lenny
Depuis maintenant 5 ans, j'utilise Sitebar pour gérer mes favoris. J'ai pourtant atteins les limite de cet outil car il ne me permet pas de gérer simplement les liens qui sont intéressants, mais pas vitaux. N'ayant aucune confiance dans les services du type de del.ico.us, ou Digg, ou autres outils de favoris collaboratifs présents sur Internet. Ce guide facilite l'installation de GetBoo sur Debian GNU/Linux.
Remarque : Après avoir testé la plateforme GetBoo, je l'ai trouvée quelque peu boguée, et un peu lourde. Au final, Scuttle correspond mieux à mes besoins. Pour l'installer, vous pouvez suivre mon guide Installer la plateforme de favoris collaboratifs Scuttle sur Debian 4.0 Etch et 5.0 Lenny.
Pré-requis
Serveur HTTP avec support du PHP
En premier lieu, il vous faut un serveur HTTP avec support du PHP. Vous pouvez par exemple utiliser Lighttpd comme décrit dans mon guide :
Installer Lighttpd et PHP 5 sur Debian 4.0 Etch et 5.0 Lenny.
Nous installons en plus les modules nécessaires au bon fonctionnement de Scuttle :
/usr/bin/apt-get install php5-mysql php5-curl php-pear mysql-client apg
Une fois ceci fait, redémarrez votre serveur HTTP pour prendre ne compte les nouveaux modules :
/etc/init.d/lighttpd force-reload
Base de données MySQL
GetBoo utilise une base de données MySQL pour stocker les favoris. Créez une base de données GETBOO pour répondre à ce besoin. Cela peut être fait en suivant mon guide:
Installer et configurer MySQL sur Debian 4.0 Etch et 5.0 Lenny
Une fois la base de donnée créée, nous plaçons une valeur par défaut pour le nom d'hôte du serveur de la base de données:
if [ -z "$MYSQL_HOST" ]; then
MYSQL_HOST=localhost
fi
Attention : Si vous avez suivi mon guide sur le même hôte que votre serveur HTTP, vous pouvez passer ces lignes de commandes, sinon, remplacer les informations en gras par celles correspondant à votre base de données MySQL :
MYSQL_HOST=localhost
MYSQL_DB=GETBOO
MYSQL_USERNAME=getboo
MYSQL_USERPWD=getboo_password
Installation
La première étape de l'installation consiste à déterminer la version
de GetBoo que vous souhaitez installer. Vous trouverez le numéro de la
dernier version de logiciel en visitant la page d'accueil de GetBoo. Une fois la version déterminée, renseignez-la dans une variable d'environnement :
VERSION=1.0.4
Et lancez le téléchargement :
CLEAN_VERSION=$(/bin/echo ${VERSION} | /bin/sed -e 's/\.\([0-9]*\)$/\1/')
/usr/bin/wget http://downloads.sourceforge.net/getboo/getboo.${CLEAN_VERSION}.tar.gz \
--output-document=/tmp/getboo.${CLEAN_VERSION}.tar.gz
Une fois le téléchargement terminé, décompressez le fichier à l'emplacement adéquat :
/bin/tar --directory=/opt -xzf /tmp/getboo.${CLEAN_VERSION}.tar.gz
Et renommez le dossier ainsi créé :
/bin/mv "/opt/getboo.${CLEAN_VERSION}" /opt/getboo
Et nous créons un lien symbolique dans le dossier /var/www:
/bin/ln -s /opt/getboo /var/www/
Une fois ceci fait, vous pouvez supprimer l'archive téléchargée :
/bin/rm /tmp/getboo.${CLEAN_VERSION}.tar.gz
Configuration
Initialisation de la base de données
La première étape de configuration est l'initialisation de la base de données. En premier lieu, générez un préfixe de table aléatoire afin d'augmenter la sécurité contre les attaques par injection SQL:
TABLE_PREFIX=$(/usr/bin/apg -q -a 0 -n 1 -M NCL)
Appliquez ce préfixe aux script de création des tables :
/bin/sed -i -e "s/gb_/${TABLE_PREFIX}_/g" /opt/getboo/includes/sql/mysql_structure.sql
Enfin, créez les tables à l'aide de la commande :
/usr/bin/mysql --host=$MYSQL_HOST --user=$MYSQL_USERNAME --password=$MYSQL_USERPWD $MYSQL_DB \
< /opt/getboo/includes/sql/mysql_structure.sql
Enfin, nous créons l'utilisateur d'administration. Pour ce faire, saisissez l'adresse électronique à utiliser pour cet utilisateur:
ADMIN_EMAIL=firstname.lastname@domaine.com
Une fois ceci-fait, nous créons l'utilisateur d'administration :
/bin/echo "INSERT INTO ${TABLE_PREFIX}_session (name, pass, email, status, style)
VALUES('admin', 'd033e22ae348aeb5660fc2140aec35850c4da997', '${ADMIN_EMAIL}', 'admin', 'Auto');" \
| /usr/bin/mysql --host=$MYSQL_HOST --user=$MYSQL_USERNAME \
--password=$MYSQL_USERPWD $MYSQL_DB
Restructuration des données
Afin que votre installation de Scuttle corresponde mieux aux règle de la LSB (Linux Standard Base), nous plaçons les dossiers cache et templates à des emplacements plus appropriés./bin/mv /opt/getboo/cache /var/cache/getboo
/bin/ln -s /var/cache/getboo /opt/getboo/cache
/bin/chown -R www-data:www-data /var/cache/getboo
Mise en place de la configuration
Une fois les tables créées en base de données, configurez Scuttle pour utiliser cette base de données :
/bin/cp /opt/getboo/install/config.example.php /opt/getboo/config.inc.php
/bin/sed -i \
-e "s/^\(\$dbtype[ \t]*=\).*/\1 'mysqli';/" \
-e "s/^\(\$dbhost[ \t]*=\).*/\1 '${MYSQL_HOST}';/" \
-e "s/^\(\$dbport[ \t]*=\).*/\1 '3306';/" \
-e "s/^\(\$dbuname[ \t]*=\).*/\1 '${MYSQL_USERNAME}';/" \
-e "s/^\(\$dbpass[ \t]*=\).*/\1 '${MYSQL_USERPWD}';/" \
-e "s/^\(\$dbname[ \t]*=\).*/\1 '${MYSQL_DB}';/" \
-e "s/%%TABLE_PREFIX%%/${TABLE_PREFIX}_/" \
/opt/getboo/config.inc.php
Votre installation de GetBoo devrait maintenant être disponible depuis l'URL :
Le compte d'administration a les paramètres suivants :
- Identifiant : admin
- Mot de passe : admin
Une fois identifié en tant qu'administrateur, vous pouvez affiner la configuration et notamment changer la langue et le titre du site, ainsi qu'activer les fonctions liées à Curl.
Si votre installation est fonctionnelle, vous pouvez à présent supprimer les dossiers inutiles :
/bin/rm -r /opt/getboo/install
/bin/rm -r /opt/getboo/docs
/bin/rm -r /opt/getboo/includes/sql
Intégration dans Mozilla Firefox
L'intégration de GetBoo dans Mozilla Firefox est relativement complète puisqu'en plus des bookmarklet, une extension est disponible :
Extension GetBoo pour Mozilla Firefox
Remerciements
- Merci aux développeurs de GetBoo (découvrez aussi le Blog de GetBoo, ainsi que le Wiki de GetBoo).