Outils personnels
Vous êtes ici : Accueil GNU / Linux Debian 4.0 Etch Installer la plateforme de favoris collaboratifs Scuttle sur Debian 4.0 Etch et 5.0 Lenny
Navigation
 
Un poste de développeur PHP est à pourvoir dans mon entreprise ! Si vous êtes intéressé, plus de détails sont disponibles sur la page consacrée à l'offre d'emploi de développeur PHP.
Actions sur le document
  • Send this page to somebody
  • Print this page
  • Add Bookmarklet

Installer la plateforme de favoris collaboratifs Scuttle sur Debian 4.0 Etch et 5.0 Lenny

Par Pierre-Yves Landuré Dernière modification 22/03/2009 22:44

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, j'ai décidé d'essayer Scuttle pour gérer mes pages à conserver "au cas où". Ce guide facilite l'installation de Scuttle sur Debian GNU/Linux.

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 unzip 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

Scuttle utilise une base de données MySQL pour stocker les favoris. Créez une base de données SCUTTLE 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=SCUTTLE
MYSQL_USERNAME=scuttle
MYSQL_USERPWD=scuttle_password

Installation

La première étape de l'installation consiste à déterminer la version de Scuttle que vous souhaitez installer. Vous trouverez le numéro de la dernier version de logiciel en visitant la page d'accueil de Scuttle. Une fois la version déterminée, renseignez-la dans une variable d'environnement :

VERSION=0.7.4

Et lancez le téléchargement :

/usr/bin/wget http://downloads.sourceforge.net/scuttle/scuttle.${VERSION}.zip \
--output-document=/tmp/scuttle.${VERSION}.zip

Une fois le téléchargement terminé, décompressez le fichier à l'emplacement adéquat :

/usr/bin/unzip -d /opt /tmp/scuttle.${VERSION}.zip

Et renommez le dossier ainsi créé :

/bin/mv "/opt/scuttle ${VERSION}" /opt/scuttle

Et nous créons un lien symbolique dans le dossier /var/www:

/bin/ln -s /opt/scuttle /var/www/

Une fois ceci fait, vous pouvez supprimer l'archive téléchargée :

/bin/rm /tmp/scuttle.${VERSION}.zip

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 tables 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/sc_/${TABLE_PREFIX}_/g" /opt/scuttle/tables.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/scuttle/tables.sql

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/mkdir --parent /var/lib/scuttle
/bin/mv /opt/scuttle/cache /var/cache/scuttle
/bin/mv /opt/scuttle/templates /var/lib/scuttle
/bin/chown -R www-data:www-data /var/cache/scuttle

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/scuttle/config.inc.php.example /opt/scuttle/config.inc.php
/bin/sed -i \
-e "s/^\(\$dbtype[ \t]*=\).*/\1 'mysql';/" \
-e "s/^\(\$dbhost[ \t]*=\).*/\1 '${MYSQL_HOST}';/" \
-e "s/^\(\$dbuser[ \t]*=\).*/\1 '${MYSQL_USERNAME}';/" \
-e "s/^\(\$dbpass[ \t]*=\).*/\1 '${MYSQL_USERPWD}';/" \
-e "s/^\(\$dbname[ \t]*=\).*/\1 '${MYSQL_DB}';/" \
-e "s/^\(\$tableprefix[ \t]*=\).*/\1 '${TABLE_PREFIX}_';/" \
-e "s|^\(\$TEMPLATES_DIR[ \t]*=\).*|\1 '/var/lib/scuttle/templates/';|" \
-e "s|^\(\$dir_cache[ \t]*=\).*|\1 '/var/cache/scuttle';|" \
-e "s/^\(\$usecache[ \t]*=\).*/\1 true;/" \
/opt/scuttle/config.inc.php

Votre installation de Scuttle devrait maintenant être disponible depuis l'URL :

Il n'y a pas de compte d'administration. Il faut vous enregistrer afin de pouvoir utiliser Scuttle.

Une fois votre installation fonctionnelle, supprimez les fichiers inutiles (et pouvant poser des problèmes de sécurité :

/bin/rm /opt/scuttle/tables.sql
/bin/rm /opt/scuttle/AUTHORS
/bin/rm /opt/scuttle/*.txt

Affinage de la configuration

Francisation de l'application

Utilisez cette ligne de commande pour que Scuttle soit traduit en français :

/bin/sed -i \
-e "s/^\(\$locale[ \t]*=\).*/\1 'fr_FR';/" \
-e "s|^\(\$shortdate[ \t]*=\).*|\1 'd/m/Y';|" \
/opt/scuttle/config.inc.php

Modification du nom du site

Si vous souhaitez que votre installation de Scuttle s'appelle autrement que Scuttle, voici la procédure à suivre. En premier lieu, renseignez le nom du site :

SITE_NAME="Liens en vrac"

Remarque : Ce nom ne doit pas contenir de guillemet simple (').

Et appliquez cette configuration :

/bin/sed -i -e "s/^\(\$sitename[ \t]*=\).*/\1 '${SITE_NAME}';/" \
/opt/scuttle/config.inc.php

Modification de l'adresse électronique de l'administrateur

Afin que l'on puisse vous contacter depuis votre installation de Scuttle, il est nécessaire de paramètrer l'adresse électronique de l'administrateur du site. Pour ce faire, renseignez l'adresse électronique a utiliser :

ADMIN_EMAIL=contact@domaine.com

Et appliquez la configuration :

/bin/sed -i -e "s/^\(\$adminemail[ \t]*=\).*/\1 '${ADMIN_EMAIL}';/" \
/opt/scuttle/config.inc.php

Désactivation du formulaire d'inscription

Si vous souhaitez limiter le nombre d'utilisateurs pouvant utiliser votre installation de Scuttle, il est nécessaire de désactiver manuellement le formulaire d'inscription. Pour ce faire, utilisez ces commandes :

/bin/rm /opt/scuttle/register.php
/bin/sed -i -e '/register/d' /var/lib/scuttle/templates/about.tpl.php
/bin/sed -i -e '/register/d' /var/lib/scuttle/templates/toolbar.inc.php

Intrégration dans Mozilla Firefox

En plus du système de bookmarklets permettant d'ajouter des liens à votre Scuttle avec n'importe quel navigateur, il existe une extension Firefox améliorant l'intégration de Scuttle à Firefox :

Scuttle Firefox 3 Extension

Remerciements

  • Merci aux développeurs de Scuttle.
  • Merci à Flexiden qui m'a involontairement fait découvrir cet outil.

Réalisé avec le CMS Plone, le système de gestion de contenu Open Source

Ce site respecte les normes suivantes :