Album Photo pour SPIP
Ce petit projet est basé sur le code source de l’album photo de François CREVOLA que l’on peut trouver à cette adresse.
J’ai fait quelques modifications afin de pouvoir l’utiliser directement sous SPIP.
Voici un petit tarball contenant quelques scripts ainsi que quelques explications permettant de faire facilement un album photo sous SPIP.
Voici une nouvelle version
et pour ceux qui ont installé SPIP 1.7 et SPIP 1.8 (qui gère les albums normalement nativement)
Quelques corrections de bugs plus tard, voici la version 0.5, et un fichier INSTALL mis à jour.
Attention, suivant les versions de la librairie GD, les fonctions à utiliser sont différentes. Lire le fichier INSTALL pour plus de détails.
Un exemple se trouve ici.
Très petits utilitaires pour gérer les images
Rotation
#!/bin/bash
for i in $*
do
echo rotation 270 \(-90\) de $i
jpegtran -rotate 270 -outfile $i $i
doneTransplantation des données exif des originaux ($1) vers les modifiés ($2)
#!/bin/bash
for i in <span class="base64" title="PGNvZGUgY2xhc3M9J3NwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lJyBkaXI9J2x0cic+bHMgJDEvKi5qcGc8L2NvZGU+"></span>
do
echo "jhead -te $1/<span class="base64" title="PGNvZGUgY2xhc3M9J3NwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lJyBkaXI9J2x0cic+YmFzZW5hbWUgJGk8L2NvZGU+"></span> $2/<span class="base64" title="PGNvZGUgY2xhc3M9J3NwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lJyBkaXI9J2x0cic+YmFzZW5hbWUgJGk8L2NvZGU+"></span>"
jhead -te $1/<span class="base64" title="PGNvZGUgY2xhc3M9J3NwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lJyBkaXI9J2x0cic+YmFzZW5hbWUgJGk8L2NvZGU+"></span> $2/<span class="base64" title="PGNvZGUgY2xhc3M9J3NwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lJyBkaXI9J2x0cic+YmFzZW5hbWUgJGk8L2NvZGU+"></span>
doneRedimensionnement des images
#!/bin/bash
# mkdir 25pcent 50pcent 75pcent full
mkdir 37pcent
for i in <span class="base64" title="PGNvZGUgY2xhc3M9J3NwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lJyBkaXI9J2x0cic+bHMgKi5qcGc8L2NvZGU+"></span>
do
echo "convert -resize 37%x37% $i 37-<span class="base64" title="PGNvZGUgY2xhc3M9J3NwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lJyBkaXI9J2x0cic+YmFzZW5hbWUgJGkgLmpwZzwvY29kZT4="></span>.jpg"
convert -resize 37%x37% $i 37pcent/<span class="base64" title="PGNvZGUgY2xhc3M9J3NwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lJyBkaXI9J2x0cic+YmFzZW5hbWUgJGkgLmpwZzwvY29kZT4="></span>.jpg
doneCréation des vignettes
#!/bin/bash
mkdir thumb
for i in <span class="base64" title="PGNvZGUgY2xhc3M9J3NwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lJyBkaXI9J2x0cic+bHMgKi5qcGc8L2NvZGU+"></span>
do
echo "convert -resize 4%x4% % $i thumb/$i"
convert -resize 4%x4% $i thumb/$i
doneLecteur USB Multicarte
Si comme moi vous avez un lecteur multicarte, vous avez sans doute remarqué que la plupart des distributions linux ne reconnaissent que la première baie de ce type de lecteur. Une petite astuce permet d’utiliser toutes les baies.
L’article initial est ici.
il suffit de passer l’option max_scsi_luns=6 au noyau.
Avec lilo il faut ajouter dans votre lilo.conf la ligne
append="max_scsi_luns=6"et ne pas oublier de relancer votre lilo pour prendre en compte les modifications.
Avec grub il faut ajouter dans menu.lst, sur la ligne kernel max_scsi_luns=6
kernel /boot/vmlinuz-2.6.8-2-686 root=/dev/hdb1 ro max_scsi_luns=6Puis rebooter. Ensuite il est possible de voir si votre modifiacation a fonctionné. Un petit dmesg | less permet de voir les parties qui nous intéressent.
usb 1-1: new full speed USB device using address 3
Initializing USB Mass Storage driver...
scsi2 : SCSI emulation for USB Mass Storage devices
Vendor: Model: Rev:
Type: Direct-Access ANSI SCSI revision: 02
Attached scsi generic sg2 at scsi2, channel 0, id 0, lun 0, type 0
Vendor: Model: Rev:
Type: Direct-Access ANSI SCSI revision: 02
Attached scsi generic sg3 at scsi2, channel 0, id 0, lun 1, type 0
sda: Spinning up disk...<7>USB Mass Storage device found at 3
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
[snip....]
sda : READ CAPACITY failed.
sda : status=1, message=00, host=0, driver=08
Current sd: sense key Not Ready
sda: assuming Write Enabled
sda: assuming drive cache: write through
[snip ... après avoir mis la CF de 128 Mo]
Current : sense key No Sense
SCSI device sdb: 250369 512-byte hdwr sectors (128 MB)
sdb: assuming Write Enabled
sdb: assuming drive cache: write through
sda: Spinning up disk...<6> /dev/scsi/host2/bus0/target0/lun1: p1
Attached scsi removable disk sdb at scsi2, channel 0, id 0, lun 1La CF de 128 Mo se trouve donc sur le /dev/sdb et la première partition est sdb1.
Il est alors possible de monter la CF dans un répertoire par la commande :
mount -t vfat /dev/sdb1 /apn
