mercoledì 3 dicembre 2014

Creiamo codici QR con Python

Salve!

L'esercizio di oggi consiste in un semplice script in Python che crea codici QR.

Lo script ci chiede il testo da inserire nel codice QR e il nome dello stesso.

Anzitutto dobbiamo scaricare un pacchetto:

$ sudo apt-get install python-pygooglechart

Di seguito il corpo dello script

#!/usr/bin/python
# -*- coding: utf-8 -*-

# importiamo QRChart
from pygooglechart import QRChart

# Dimensioni codice QR
Codice = QRChart(140, 140)

#Creiamo una variabile che contenga il testo del nostro codice QR
Contenuto_Codice_QR = raw_input ("Scrivi il contenuto del codice QR: ")

# Aggiungi il testo
Codice.add_data(Contenuto_Codice_QR)

# correzione degli errori con un margine di 0 pixel
Codice.set_ec('H', 0)

#Diamo un nome al nostro codice QR
Nome_Codice_QR = raw_input("Che nome vuoi dare al codice QR? ")

# Il codice viene salvato nella dir in cui si trova lo script
Codice.download(Nome_Codice_QR)

Salviamo lo script in un file di testo e nominiamolo creacodQR.py

Posto che lo avete salvato nella cartella Documenti

$ cd Documenti

Rendiamolo eseguibile

$ chmod +x creacodQR.py

infine eseguiamolo

$ ./creacodQR.py


Il codice che "sforna" è il seguente:


Per leggerlo ho scaricato un app sul mio Nexus, che si chiama QR Code Reader.

Alla prossima!

lunedì 1 dicembre 2014

Come "falsare" la data di modifica di un file di testo [Brevi Esercizi]

L'esercizio di oggi risponde a questa esigenza, non voglio far sapere al mio coinquilino (che tra l'altro non esiste) quando ho modificato un file di testo.

Poniamo che nella mia cartella Documenti abbia un file di testo modificato il primo dicembre 2014, voglio indurre il mio coinquilino (lo so, non è giusto, ma è pur sempre un esercizio) a credere che il file non sia stato modificato da molto tempo.


Esageriamo, lo induciamo a credere che il file non sia stato modificato dal lontano 9 novembre 1989 (data ufficiale della caduta del muro di Berlino)


L'operazione è semplicissima, basta usare il comando touch con qualche sua opzione:

Il file in questione si chiama, nel mio caso, programma_novembre.txt e si trova nella directory Documenti.

$ cd Documenti

$ touch -m -t 198911091525.30 programma_novembre.txt

In pratica, dopo l'opzione -t, ho scritto prima l'anno (1989), poi il mese (11), poi il giorno (09), infine l'ora con minuti e secondi (15.25:30), tutto attaccato.

Alla prossima ;)

Ah, dimenticavo, l'indice della rubrica "Brevi Esercizi" lo trovate qui.

Niente è come appare.... non dimentichiamocelo mai!

domenica 30 novembre 2014

Migliorare l'usabilità di Synaptic su Lubit


 Salve!

Per rendere più veloce la ricerca dei pacchetti da installare, aggiungiamo il search (filtro rapido). 

$ sudo apt-get install apt-xapian-index

$ sudo update-apt-xapian-index -f -v


Per rendere più veloce il download dei pacchetti, scegliamo il server migliore.
  • Apriamo synaptic
  • Da synaptic andiamo nel menu impostazioni e scegliamo repository.
  • Da software per ubuntu apriamo il menu a tendina (scaricare da) e scegliamo Altro;
  • Clicchiamo su "Seleziona server migliore".  Attendiamo un pò (verrà effettuato il test dei server da cui scaricare). Finito il test, verrà evidenziato il server più veloce (tenendo conto della nostra ubicazione)
  • Non ci resta che fare clic su scegli server.
Adesso il nostro synaptic sarà più veloce nello scaricare i pacchetti.

A presto!

domenica 23 novembre 2014

Se usi il mio pc, a me arriva una e-mail [Brevi Esercizi]

Salve!

Dopo molto tempo riprendiamo con la rubrica "Brevi Esercizi".  L'esempio di oggi è un classico: Voglio sapere, in tempo reale, se il mio coinquilino è così onesto da non usare il mio pc durante la mia assenza. Infatti può succedere che abbia salvato le password dei miei account nel browser, la prima cosa che mi viene in mente. Vabbè... chiaro, la password non si condivide, si potrebbe creare un altro utente...e via dicendo.

Comunque... le precauzioni sono sempre poche.

L'esperimento è stato eseguito su Lubit 4, non poteva essere diversamente.

L'idea è quella di essere avvisato in tempo reale mediante una e-mail, qualora qualcuno entri a mia insaputa nel mio pc.

Ho usato, per l'esercizio, l'account di gmail e il programma testuale mutt.

Installiamo mutt

sudo apt-get install mutt

Settiamo il file di configurazione di mutt

nano ~/.muttrc

Incolliamo in nano il seguente testo, magari in sostituzione a quello che troviamo, qualora ci fosse.

# SMTP SETTINGS
set smtp_url = "smtp://NomeEmail@smtp.gmail.com:587/"
set smtp_pass = "password-account-gmail"


Salviamo e chiudiamo il documento. Nell'ordine:

ctrl + o

Invio

ctrl + x

Importante: 
  • Inserire nel file di configurazione il proprio indirizzo email, lasciando inalterata la voce smtp.
  • inserire la password del proprio account gmail

Creiamo un piccolo script nella directory /usr/local/bin/Script

$ sudo su

# nano /usr/local/bin/Script/Avviso

Incolliamoci dentro

#!/bin/bash
avviso="$USER, qualcuno sta usando il tuo pc"
echo $avviso | mutt -s "AVVISO" tuaemail@gmail.com
exit 0


Salviamo e chiudiamo il documento:

ctrl + o

Invio

ctrl + x

Importante: nello script aggiungere l'indirizzo presso cui vuole essere recapitato il messaggio.

Rendiamo lo script eseguibile

# chmod +x /usr/local/bin/Script/Avviso

Non resta che aggiornare il file autostart.sh

# nano /usr/local/bin/autostart.sh

E, prima di "exit 0", aggiungiamo

sleep 20 && /usr/local/bin/Script/Avviso

Salviamo e chiudiamo il documento

ctrl + o

Invio

ctrl + x

# exit

Ora, per fare una prova, usciamo da openbox

$ openbox --exit

Una volta loggatoci, aspettiamo 20 secondi, e dovrebbe arrivare l'email al nostro indirizzo di posta elettronica.

Onde evitare che ad ogni avvio ci arrivi una e-mail, disabilitiamo lo script

$ sudo su
# nano /usr/local/bin/autostart.sh

Non resta che aggiungere un cancelletto davanti alla riga precedentemente aggiunta:

# sleep 20 && /usr/local/bin/Script/Avviso

Salviamo e chiudiamo il file

 ctrl + o

Invio

ctrl + x

# exit

Alla prossima!