Vous êtes ici : Accueil / Debian GNU/Linux / Applications Web / Divers / Installer le générateur de sprites CSS SpriteMe sur Debian

Installer le générateur de sprites CSS SpriteMe sur Debian

Par Pierre-Yves Landuré Dernière modification 10/12/2015 20:49

SpriteMe est un service de génération automatisée de sprites CSS. Ce guide vous aide à mettre en place une version auto-hébergée de cet outil.

Ce guide est testé sur:

  • Debian 6.0 Squeeze

Prérequis

Ce guide nécessite :

Paramètres

Renseignez le nom de domaine où sera disponible l'application:

DOMAIN="spriteme.domain.com"

Renseignez le nom d'hôte du serveur MySQL:

MYSQL_HOST="localhost"

Si le serveur MySQL n'est pas local, l'outil mysql-tools essaiera de s'y connecter avec le client MySQL, ou, en cas d'échec de connexion, via une connexion SSH.

Installation

Déterminez le chemin d'installation:

INSTALL_PATH="/opt/spriteme/${DOMAIN}"

Déterminez le chemin des données:

DATA_PATH="/var/lib/spriteme/${DOMAIN}"

Assurez-vous que le dossier parent existe:

command mkdir --parent "$(command dirname "${INSTALL_PATH}")"

Préparation de l'environnement

Installez les logiciels nécessaires:

command apt-get install subversion git pngcrush php5-imagick php5-cli

Augmentez la taille maximale des variables de GET:

command php-tools --for="spriteme" --set="suhosin.get.max_value_length" "4096"

Rechargez la configuration de PHP:

test -x /etc/init.d/php5-fpm && /etc/init.d/php5-fpm force-reload
test -x /etc/init.d/apache2 && /etc/init.d/apache2 force-reload
test -x /etc/init.d/lighttpd && /etc/init.d/lighttpd force-reload
test -x /etc/init.d/nginx && /etc/init.d/nginx force-reload

Mise en place de l'application

Obtenez les sources de SpriteMe:

command svn checkout 'http://spriteme.googlecode.com/svn/trunk/' "${INSTALL_PATH}"

Obtenez les sources de CoolRunnings:

command git clone 'http://github.com/6a68/coolrunnings' "${INSTALL_PATH}/coolrunnings"

Mise en conformité avec la LSB

Mettez en place une architecture de dossiers conforme à la LSB:

command mkdir --parent "${DATA_PATH}"
command mv "${INSTALL_PATH}/coolrunnings/public_images" "${DATA_PATH}"
command ln -s "${DATA_PATH}/public_images" "${INSTALL_PATH}/coolrunnings/"
command chown -R www-data:www-data "${DATA_PATH}"

Création de la base de données

Créez la base de données:

MYSQL_PARAMS="$(command mysql-tools --server="${MYSQL_HOST}" --with-ssh \
--auto-hosts --db-prefix="spriteme" --create "${DOMAIN}")"

Récupérez les paramètres de la nouvelle base de données:

MYSQL_DB="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_DB" \
    | cut --delimiter="=" --fields="2-")"
MYSQL_USER="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_USER" \
    | cut --delimiter="=" --fields="2-")"
MYSQL_PASSWORD="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_PASSWORD" \
    | cut --delimiter="=" --fields="2-")"
echo "${MYSQL_PARAMS}"

Configuration

Configurez la connexion à la base de données:

command sed -i \
    -e "s/examples.stevesouders.com/${MYSQL_HOST}/g" \
    -e "s/perfprofile/${MYSQL_DB}/g" \
  "${INSTALL_PATH}/results.php"
command mkdir --parent "${INSTALL_PATH}/private"
command echo "<?php
\$gsAuth1 = '${MYSQL_USER}';
\$gsAuth2 = '${MYSQL_PASSWORD}';" > "${INSTALL_PATH}/private/db.php"

Créez les tables:

command sed -i -e "s|^//createTables();|createTables();|g" "${INSTALL_PATH}/results.php"
command php5 "${INSTALL_PATH}/results.php" > '/dev/null'
command sed -i -e "s|^createTables();|//createTables();|g" "${INSTALL_PATH}/results.php"

Ajustez l'URL du service SpriteMe dans le code de SpriteMe:

command sed -i -e "s|http://spriteme.org|http://${DOMAIN}|g" "${INSTALL_PATH}/spriteme.js"
command sed -i -e "s|http://spriteme.org|http://${DOMAIN}|g" "${INSTALL_PATH}/autospriteme.user.js"

Ajustez l'URL du service coolrunnings dans le code de SpriteMe:

command sed -i -e "s|http://jaredhirsch.com/coolrunnings/index.php|http://${DOMAIN}/coolrunnings/index.php|g" "${INSTALL_PATH}/spriteme.js"

Ajustez les paramètres de CoolRunnings:

command sed -i \
-e "s|'/var/www/html/'|realpath(dirname(__FILE__) . '/../../') . '/'|g" \
-e "s|http://localhost/|http://${DOMAIN}/|g" \
"${INSTALL_PATH}/coolrunnings/library/FrontController.php"

Créez la configuration du serveur HTTP:

if [ -x "/usr/bin/a2tools" ]; then
  command a2tools "${DOMAIN}" "${INSTALL_PATH}"
fi
if [ -x "/usr/bin/lighty-tools" ]; then
  command lighty-tools add-vhost "${DOMAIN}" "${INSTALL_PATH}"
fi

L'outil est maintenant disponible sur le domaine spécifié.

Sauvegardes

Sauvegardez l'installation avec Backup Manager (voir Installer et configurer Backup Manager sur Debian):

command backup-manager-tools add "${INSTALL_PATH}"
command backup-manager-tools add "${DATA_PATH}"

N'oubliez pas de sauvegarder la base de données (voir Installer et configurer MySQL sur Debian).

Remerciements