BibleNotify – Fortunes dalla Bibbia CEI 2008

fortune è un comando che consente di mostrare una frase scelta casualmente da un database.

    In questo caso ci si occuperà di creare un database contenente i versetti della Bibbia CEI 2008, e sarà mostrato come visualizzarne uno dopo il login.

    Quella che segue è la proceduraper creare e usare questo database, sviluppata e rilasciata con licenza GPLv3 analogamente allo script bibbia2008 da Paolo Gherpelli e altri, che ringrazio vivamente.

    PARTE1: Creazione fortunes

    Installare lo script e i pacchetti necessari (se non già presenti)

      PROMPT:~$ mkdir TEST
      PROMPT:~$ cd TEST
      PROMPT:~/TEST$ wget -q
    
    http://www.eleutheros.org/wp-content/uploads/bibbia2008-2.7.tar.gz
    
      PROMPT:~/TEST$ tar zxf bibbia2008-2.7.tar.gz
      PROMPT:~/TEST$ cd bibbia2008/
      PROMPT:~/TEST/bibbia2008$ sudo apt-get install patch fortune libnotify-bin

    Eseguiamo lo script

    PROMPT:~/TEST/bibbia2008$ make bibbia.csv

    …e modifichiamone i risultati per ottenere un database fortune:

    • testo del versetto: tutti i fields dal quinto in poi (e non SOLO il quinto, perché il testo potrebbe contenere i due punti ed essere quindi troncato!)
    • a capo, stampo i primi 4 fields (libro,capitolo,versetto numero e lettera) , e a capo di nuovo stampo il % (separatore delle fortunes nel file)

    PROMPT:~/TEST/bibbia2008$ awk -F ":" '{ print substr($0,index($0,$5)) ; print $1" "$2","$3$4 ; print "%"}' bibbia.db > bibbia.output

    FACOLTATIVO: Per togliere tutti i caratteri / e // dal testo sostituiamo ogni occorrenza di “uno spazio seguito da uno o piùslash” con una stringa vuota:

    PROMPT:~/TEST/bibbia2008$ awk '{gsub(/ \/+/,""); print }' bibbia.output > bibbia.noslash

    Oppure, per togliere solo i / e // a fine versetto (rispetto a sopra, la regexp qui significa “uno spazio seguito da uno o piùslash e dalla fine della riga”):

    PROMPT:~/TEST/bibbia2008$ awk '{gsub(/ \/+$/,""); print }' bibbia.output > bibbia-noslash2

    Occorre poi rinominare come “bibbia” il file risultante delle operazioni sopra

    Fatto questo, copiamo il file ottenuto nel path appropriato, eseguiamo strfile (necessario perché fortune funzioni)

      PROMPT:~/TEST/bibbia2008$ sudo mkdir -p /usr/local/share/games/fortunes/
      PROMPT:~/TEST/bibbia2008$ sudo cp bibbia /usr/local/share/games/fortunes/
      PROMPT:~/TEST/bibbia2008$ cd /usr/local/share/games/fortunes/
      PROMPT:/usr/local/share/games/fortunes$ sudo strfile bibbia bibbia.dat
      PROMPT:~$ sudo chmod 0644 /usr/local/share/games/fortunes/bibbia

    A questo punto, in un terminale, verifichiamo che il tutto funzioni con

    PROMPT:~$ fortune bibbia

    Se abbiamo visualizzato un versetto della Bibbia, la procedura è stata eseguita correttamente

    PARTE2: Popup al login

    Per visualizzare un popup all’avvio (testato con Ubuntu 10.10, ma dovrebbe funzionare in generale)

    1) Creiamo e rendiamo eseguibile /usr/local/bin/biblenotify.sh, il cui contenuto deve essere

      #!/bin/sh
      sleep 5
      notify-send -i gtk-about "Bibbia:" "`fortune bibbia`"

    2) Inseriamo biblenotify.sh fra le “startup applications” di Gnome (nel mio caso con nome ZZ-BibleNotify): al login successivo sarà visualizzato un popup contenente un versetto biblico.


    NEL CASO DI FILE FORTUNES GIA’ DISPONIBILE, PASSARE DIRETTAMENTE ALL’ULTIMA FASE (VERIFICANDO I PERMESSI E LE OWNERSHIP)