PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

blog-libre : Sigal pour générer une galerie photo statique et minimaliste

samedi 17 mars 2018 à 11:00

Dans l’article Un bref retour sur le Raspberry Pi 3 Modèle B j’avais dit que j’allais me servir du Pi notamment pour une galerie photo.

Mon fils a maintenant plus de deux ans et très régulièrement mes proches demandent des photos. Je n’avais pas de solution satisfaisante. En général soit les gens mettent leurs photos dans Drive/Dropbox/iCloud etc. bref dans le cloud puis partagent le dossier soit ils font une grosse archive compressée de nombreuses photos, l’uploade sur un service comme WeTransfer et font tourner le lien.

D’un côté je n’ai aucun service cloud et ça me gêne de mettre ces photos en ligne, de l’autre l’archive compressée j’ai toujours eu la flemme d’en faire et vous pouvez être sûr que les vieux n’arriveront pas à décompresser l’archive. C’est aussi un des rares besoins que j’estime ne pas pouvoir traiter en dehors de chez moi. Je me vois mal stocker plusieurs Go de photos personnelles et familiales sur un hébergement web chez OVH par exemple, l’idée me dérange.

Cahier des charges et Piwigo

Voici mon cahier des charges :

Après une recherche chez Sebsauvage (gallery, photo gallery, galerie), un lien fort pertinent, j’ai retenu Sigal. Avant d’en parler, je m’arrête sur Piwigo qui pourrait vous intéresser. Piwigo est activement maintenu, GPLv2, relativement simple à installer mais… base de données, interface lourde et je trouve mal pensée avec des icônes petites, peu compréhensibles. Voici la démo Piwigo et une photo. Voici la démo Sigal et une photo.

Piwigo est une application PHP, c’est ce que vous trouverez comme galerie photo 95% du temps. Sigal est un générateur de galerie photo. Sigal va générer une galerie photo avec vos photos/vidéos dedans, c’est vers ce site que devra pointer votre configuration apache ou nginx.

Installation et utilisation

# Je me connecte sur mon Raspberry Pi
apt install libjpeg-dev libopenjp2-7-dev python3-dev python3-pip
pip3 install pillow
pip3 install sigal
sigal --help
mkdir -p /var/www/galerie/bestiole/{2015,2016,2017,2018} # Je crée les dossiers
cd /var/www/galerie
sigal init

Voici les principales modifications que j’ai apporté au fichier de configuration sigal.conf.py qui se trouvera dans /var/www/galerie après le sigal init.

title = "Une belle bestiole" # Le titre de la galerie photo
source = 'bestiole' # Là où sigal va chercher les photos/vidéos
destination = 'site' # Là où sigal génère la galerie photo donc dans le dossier courant, il va créer un dossier 'site'
theme = 'photoswipe' # Le thème utilisé : colorbox (default), galleria, photoswipe
use_orig = True # Use originals in gallery (default: False). If True, this will bypass all processing steps (resize, auto-orient, recompress, and any plugin-specific step)
orig_link = True # Originals will be symlinked if orig_link = True, else they will be copied

Maintenant on va naturellement mettre des photos dans le dossier bestiole. Je le fais avec scp -r 'MAI 2017' pi@192.168.3.10:/var/www/galerie/bestiole/2017/ mais vous faites comme vous voulez : clé USB, FTP (il faut installer un serveur FTP bien-sûr), SSHFS…

sigal build # Pour générer la galerie 
sigal serve # Pour faire tourner un serveur web basique, c'est UNIQUEMENT pour tester le rendu, allez contempler votre œuvre sur http://adresseipdelaraspberrypi:8000/

Voici le rendu (thème photoswipe). Je sais mon fils est magnifique, normal il ressemble à son père hi hi hi.

Le minimalisme c’est bien mais il faut protéger un minimum htpasswd -c /var/www/galerie/site/.htpasswd bestiole. Si vous utilisez apache, la configuration donnera ceci en gros.

DocumentRoot /var/www/galerie/site
	Alias /photos /var/www/galerie/site
	
    	AuthUserFile /var/www/galerie/site/.htpasswd
    	AuthName "Merci de taper les identifiants"
    	AuthType Basic
    	Require valid-user
    	Allowoverride All
	

La prochaine fois que vous voudrez ajouter des photos.

scp -r 'MARS 2018' pi@192.168.3.10:/var/www/galerie/bestiole/2018/
cd /var/www/galerie && sigal build /# Sur votre Raspberry Pi

Pour modifier les informations sur les albums voir Album information (avec markdown), ça va donner /var/www/galerie/bestiole/2017/MAI 2017/index.md par exemple. Pour modifier les informations sur les images voir Image information, ça va donner /var/www/galerie/bestiole/2017/MAI 2017/20170513_085643.md par exemple. Personnellement je ne fais rien.

Avantages et inconvénients

Avantages :

Inconvénients :

Un besoin traité grâce au Libre, au suivant !

Gravatar de blog-libre
Original post of blog-libre.Votez pour ce billet sur Planet Libre.

Articles similaires