Firma recursiva con sinadura integrada en Gnome

En el siguiente artículo, exploraremos las capacidades de integración de sinadura en el escritorio Gnome a través de las acciones y scripts de Nautilus, en el caso de uso de firma recursiva de ficheros PDF que se encuentren por debajo de un directorio seleccionado.

Firma recursiva a través de scripts de nautilus:

Un motor de scripting de Gnome es nautilus-scripts

$ sudo aptitude nautilus-scripts

Simplemente alojando un script de shell como el que se muestra más abajo (re-sign.sh) en $HOME/.gnome2/nautilus-scripts/,  podemos ejecutarlo en el menú contextual Scripts, con el botón derecho. El motor es menos potente que las acciones de nautilus, pues no es posible implementar condiciones, pero puede ser útil en muchas ocasiones.

#! /bin/sh
#
# re-sign.sh
#
#   Script de firma recursiva con sinadura 2.0
#
#   Uso: re-sign.sh <directorio a firmar>"
#
SINADURA_HOME=/home/cesar/local/sinadura
PREFERENCES=/home/cesar/local/sinadura/resources/preferences/preferences-sinadura-console.properties
LOGFILE=$HOME/.sinadura.log
RESFILE=$HOME/.sinadura-output.log

if [ -z $2 ]; then
  MYDIR=$PWD/$1
else
  MYDIR=$2/$1
fi

/usr/bin/find $MYDIR -type f -name \*pdf > $LOGFILE

echo "Sinadura 2.0 (by zylk.net & irontec)" 2>&1 >> $RESFILE
echo 2>&1 >> $RESFILE
echo "Firmando documentos:" 2>&1 >> $RESFILE
while read file
  do
    base=`dirname "$file"`/`basename "$file" .pdf`;
    echo $file 2>&1 >> $RESFILE
    (cd $SINADURA_HOME; /bin/sh ./bin/sinadura-console -input $file -output $base-signed.pdf -preferences $PREFERENCES 2>&1 >> $RESFILE)
  done < $LOGFILE
echo 2>&1 >> $RESFILE
echo "Hecho!" 2>&1 >> $RESFILE
echo "http://www.sinadura.net" 2>&1 >> $RESFILE

zenity --text-info --title="Sinadura info:" --filename=$RESFILE --width=600 --height=400

rm -f $RESFILE


Seleccionado un directorio, el script buscará los archivos PDF por debajo de la ruta seleccionada y firmará los diferentes archivos encontrados. A través del comando zenity se mostrará al final del proceso una pequeña ventana de log con los archivos firmados.
 

Firma recursiva a través de acciones de nautilus:


El script de shell anterior puede invocarse desde las acciones de nautilus al seleccionar una carpeta, y ejecutar una firma recursiva de todos los archivos PDF por debajo del directorio seleccionado, de manera análoga al artículo anterior de esta serie. Defino la acción de la misma manera que en el anterior artículo de esta serie, configurando los parámetros y la condición correspondiente, esta vez sobre una carpeta seleccionada y voila.
          
La acción se define en el menu de acciones de nautilus.



La acción se aplica esta vez si se selecciona un directorio:

                                                                                                       
La acción se ejecuta con el script re-sign.sh que es compatible con ambos motores:


Y la ejecución desde el menú contextual, seleccionado el directorio Facturas:

 

 

00

Más entradas de blog

Añadir comentarios