[SFOGO] I sogni son desideri…

istantanea_2017-02-21_12-52-27

4-gargantuaquisetaitperduE’ qualche sera che a cena mi abbuffo come un animale.

Come se non ci fosse un domani la mia amigdala, il cervello ancestrale, prende il sopravvento e mi fa sbranare tutto quello che c’è in tavola per poi passare direttamente al frigo. Al termine della scorpacciata mi sento poco bene, come uno di quegli uomini che vivono senza mai accontentarsi, pozzi senza fondo. Uno di quelli che non ne hanno mai abbastanza anche quando sanno che per avere di più tolgono il poco agli altri e alla fine stramazzano con la consapevolezza di non potersi portare all’altro mondo nient’altro che la propria coscienza sporca.

I peccati della mia ingordigia serale io li pago quasi subito: un paio d’ore dopo a letto patisco degli orribili incubi.

istantanea_2017-02-21_12-58-51Tipo che l’altra notte ho sognato che ero l’ultimo uomo sulla faccia della Terra. Ho sognato che guardavo fuori dalla finestra. Per la strada si aggiravano degli orribili mostri intenti a distruggere tutto quello che gli capitava a tiro. La mia la mia casa era l’ultimo posto sicuro dell’intero pianeta.

Me ne stavo seduto sulla poltrona senza sapere come affrontare tutta la faccenda senza farmi prendere dal panico, quando ho sentito qualcuno bussare alla mia porta.

Non erano i mostri c’era qualcuno che chiedeva aiuto. Mi sono precipitato ad aprire per far entrare chiunque fosse, felice di non essere più solo… Continua a leggere

[Google – doodle] Il pangolino di San Valentino

istantanea_2017-02-13_00-08-29

Il doodle di quest’anno con il quale Google vuole festeggiare con tutti i suoi utenti la giornata di San Valentino è un evento speciale: questa volta il logo nella pagina principale dei ragazzi di Mountain View è stato trasformato in un portale per accedere a una serie di giochini (preceduti da simpatiche animazioni) in cui si dovrà aiutare un simpatico pangolino a terminare delle missioni a tema.

Se quindi siete ‘single‘ e non sapete come meglio passare questa giornata, Google Vi ha trovato un bel passatempo per evitare che vi facciate prendere come ogni anno dall’autocommiserazione.

istantanea_2017-02-13_00-08-57

[Serie Tv] Powerless

cnqzlpxvuaawidtSe la caterva di supereroi sfornati in questi ultimi tempi per il cinema e la TV (dai vari Avenger agli altri affini del Marvel Cinematic Universe) vi stanno provocando fastidiosi attacchi d’insofferenza, potete decongestionarvi gli occhi dando uno sguardo alla nuova sitcom Powerless che lo sceneggiatore Ben Queen ha realizzato per l’americana NBC.

La serie è prodotta direttamente dalla DC Entertainment insieme alla  Warner Bros. Television ed è girata tra gli studi di Burbank (California, USA) di quest’ultima e, per gli esterni, nel solito Canada.

nbc_2014_ident_stylePer la prima stagione si pensa di realizzare un totale di 13 episodi da 30′ minuti. L’episodio pilota è stato presentato nel luglio del 2016 al San Diego Comic-Con International e la negativa accoglienza dei fan hanno portato a diverse modifiche alla sceneggiatura finale.

La normale trasmissione è iniziata il 2 febbraio 2017.


PLOT: 

istantanea_2017-02-10_21-23-12La serie è incentrata sul personaggio femminile di Emily Locke, neo-assunta alla Wayne Security, una sussidiaria della Wayne Enterprises (quella di Bruce Wayne alias Batman per intenderci) specializzata in prodotti per la sicurezza dei civili che si ritrovano coinvolti nelle battaglie tra supereroi e supercattivi.
In un mondo in cui la gente è ormai indifferente ai superpoteri di quelli che girano mascherati come a carnevale, con la perseveranza e l’innato ottimismo la nostra Emily ha il compito di motivare e mettere in riga il Dipartimento Ricerca e Sviluppo dell’azienda, composto da tecnici incompresi, asociali e, fino al suo arrivo, capaci di sfornare solo porcherie.
Ovviamente il suo capo, nonché cugino sfigato del suddetto Bruce, è uno stronzo.powerless-logo-copertina


istantanea_2017-02-10_20-22-23CAST:

  • Vanessa Hudgens è Emily Locke, direttrice del reparto R&D della Wayne Security. Sin dalle prime battute l’attrice mi è parsa spigliata e a suo agio con il personaggio: una ragazza dai forti ideali e dall’ottimismo contagioso. Il suo sorriso l’aiuta a sbrogliare la situazione a prescindere dai tailleur che la costumista le fa indossare.
  • Danny Pudiistantanea_2017-02-10_20-24-20 è Teddy, un ricercatore della Wayne Security. Direttamente dal successo della sitcom Community qui l’attore mi è sembrato meno spontaneo e irriverente, ma forse gli occorre solo più tempo per carburare o forse gli mancano le sue camicie a quadri.
  • Alan Tudykistantanea_2017-02-10_20-40-22 è Van Wayne, cugino di Bruce Wayne. Si trova suo malgrado a capo di un’azienda che odia geloso del successo del più famoso consanguineo. Cinico e distaccato, non mostra alcun interesse verso i suoi dipendenti: il suo unico obiettivo è quello di tornare a fare la bella vita a Gotham.
  • Christina Kirk2014_0507_nbcuxd_upfront2014_atoz_christinakirk_1230x1230_ko è Jackie la segretaria di Van Wayne. Durante la prima puntata veniamo a conoscenza che agli inizi della sua carriera aveva lo stesso entusiasmo di Emily, ma con il passare del tempo è diventata più cinica del suo capo.
  • Ron Funchesron_funches-cc_800x600 è Ron, un ingenuo tecnico informatico impiegato alla Wayne Security. A lui pare tocchi da contratto fare le battute più scontate.

TRAILER:


RECENSIONE:

E’ una sitcom e fa ridere, quindi per me funziona.
Ho iniziato a guardarla più per curiosità che per altro: attratto dalla presenza della Hudgens e dal trailer. In una televisione sovraffollata da eroi in calzamaglia e superpoteri ho trovato che il punto di vista di ‘noi’ gente normale potesse essere protagonista finalmente di una serie tutta sua.
La sigla iniziale è tutto un programma focalizzata sulle reazioni dei civili e non più sulle imprese degli eroi. Che poi tutto sia messo alla berlina, fumettoso per far ridere ci sta pure.  Al momento ho visto i primi due episodi e mi sono piaciuti.
E’ una mezz’ora che fa bene allo spirito e se riesce a convincere i più incalliti fan del mondo Marvel  potrebbe pure diventare una serie cult. Vale la pena!

[Tutorial – Linux] Alla scoperta di Conky (Configurazione delle opzioni generali)

Nello scorso post vi ho presentato Conky, spiegato come installarlo, inoltre vi ho fornito copia del mio file .conkyrc e spiegato come iniziare con questo meraviglioso creatore di widget, utile strumento per monitorare le risorse del proprio sistema direttamente sul desktop.istantanea_2017-01-26_17-07-03

Adesso è il momento di fare sul serio.

Nei prossimi post cercherò di spiegarvi in dettaglio i segreti del file di configurazione in modo che possiate sfruttare appieno le potenzialità di Conky che, come ho già precisato, fa della personalizzazione il suo principale punto di forza che lo contraddistingue dalla concorrenza.

Superate le prime difficoltà per comprendere le logiche che stanno dietro al file di configurazione è possibile ‘costruirsi‘ il proprio widget, secondo le proprie esigenze tecniche e artistiche.

Per iniziare la nostra piccola guida do per scontato che abbiate seguito le istruzioni di installazione e avvio del precedente post e che siate quindi pronti per configurare il vostro file .conkyrc
Prenderemo spunto dalla mia configurazione solo per semplificare la spiegazione e non perdere il filo.

Se avete già dato una scorsa oppure no al file completo (che potete scaricare da qui) vi sarete accorti che è possibile suddividerlo in tre blocchi logici:

  1. intestazione ed eventuale licenza (commentato con il carattere # e quindi non interpretato come istruzione);
  2. impostazioni e controlli per la visualizzazione del widget;
  3. istruzioni per la visualizzazione delle informazioni.
I primi due punti sono separati dal terzo dalla riga:
TEXT
In questo post analizzeremo in dettaglio i primi due punti.

Di seguito vi rimetto la parte di configurazione da me realizzata con la spiegazione dei singoli valori utilizzati:

###################################################
#  BY ZIRCONET - 2017                             #
#  Questa configurazione richiede l'installazione #
#  dei font ROBOTO e ANONYMOUS                    #
###################################################

#Conky parte di default in background?
background yes

# Intervallo di aggiornamento (in secondi)
update_interval 1

# Abilitazione double buffering per evitare lo sfarfallio
double_buffer yes

# ------ fonts ------
use_xft yes                  # usa Xft (anti-aliased font)?
xftfont roboto:size=9        # set di font da utilizzare
xftalpha 1                   # controllo trasparenza

# ------ proprietà finestra ------ 
own_window yes               # crea una propria finestra
own_window_type desktop      # tipo della finestra 
own_window_transparent yes   # controllo trasparenza
own_window_argb_visual yes   # trasparenza reale
own_window_argb_value 0      # controllo opacità [0-255]
alignment top_right          # Allineamento widget

#controlli migliorativi della finestra 
own_window_hints undecorated,below,sticky      
own_window_hints skip_taskbar,skip_pager

# ------ dimensioni ------
maximum_width 300            # larghezza massima
minimum_size 5 5             # misura minima della finestra

# ------ colori ------ 
default_color white
default_shade_color white
default_outline_color white 
 
# ------ bordi ------ 
draw_borders 0          # Disegna bordi?
border_margin 0         # margini dei bordi
border_width 0          # larghezza bordi
draw_shades no          # Disegna ombre?
draw_outline no         # Disegna bordi attorno al testo?
draw_graph_borders yes  # Disegna bordi attorno a grafici?

# Distanza tra i bordi e il testo 
gap_x 10                # distanza asse x
gap_y 10                # distanza asse y
  
# ------ altri controlli ------ 
no_buffers yes          # controllo per calcolo uso ram
show_graph_scale yes    # mostra valori nei grafici
show_graph_range no     # mostra i minuti nei grafici
cpu_avg_samples 3       # numero dei samples per calcolo media
net_avg_samples 3       # numero dei samples per calcolo media
max_text_width 0        # controllo linea a capo
out_to_console no       # controllo output in console

I controlli che ho utilizzato sono ovviamente quelli che mi occorrevano per utilizzare il mio progetto: il mio consiglio è quello di smanettare il più possibile per trovare infine ciò che più fa al caso vostro.

Alcuni controlli si spiegano da sé, per tutti ho cercato di mettergli accanto un breve commento esplicativo.

Per chi volesse una spiegazione più specifica oppure vuole una panoramica più esaustiva può fare riferimento alla pagina ufficiale che trovate qui.

La battaglia di GMAIL contro i virus spediti via email

[AVVISO] Dal prossimo 13 febbraio il servizio di posta più utilizzato al mondo bloccherà l’invio di allegati Javascript (.js). Questa è la risposta di Google agli hacker che sempre più spesso utilizzano le mail per  infettare usano file JavaScript per provocare il download e il successivo caricamento di codice malevolo (malware, ransomware, ecc…).except

Le limitazioni negli allegati non sono certo una novità per i ragazzi di Mountain View che come spiegano in questa pagina già bloccano per la loro potenziale pericolosità una pletora di file con determinate estensioni: .ADE, .ADP, .BAT, .CHM, .CMD, .COM, .CPL, .EXE, .HTA, .INS, .ISP, .JAR, .JSE, .LIB, .LNK, .MDE, .MSC, .MSP, .MST, .PIF, .SCR, .SCT, .SHB, .SYS, .VB, .VBE, .VBS, .VXD, .WSC, .WSF, .WSH

gmail-iconGli utenti che cercano di spedire email contenenti allegati di questo tipo sono soliti ricevere il seguente avviso di sicurezza che spiega il motivo per cui non è possibile completare l’operazione: «Questo messaggio è stato bloccato perché il suo contenuto costituisce una potenziale minaccia per la sicurezza“.»

In molti casi è possibile ovviare alla limitazione dell’invio di file eseguibili, script o altre tipologie di file bloccati, inserendoli in un archivio Zip (meglio se cifrato), oppure affidandosi a Google Drive, Microsoft OneDrive, Dropbox ecc…

[Tutorial – Linux] Alla scoperta di Conky

Conky è un programma utile per monitorare le risorse del proprio sistema direttamente sul desktop. Si tratta di un progetto free software, fork di Torsmo che a differenza del suo progenitore sembra ben mantenuto dai suoi creatori. Tutte le informazioni possibili e immaginabili sono disponibili sulla relativa pagina di Github.conkylogosmall

Sebbene non richieda molte risorse è comunque un potente strumento con il quale creare widget per tenere sotto controllo diversi parametri (carico della CPU, utilizzo della ram e della memoria swap, uso dello spazio su disco, monitor temperature, monitor processi in esecuzione, controllo flusso upload/download, controllo messaggi di sistema, ecc…) e molto altro ancora anche attraverso l’utilizzo di script esterni al programma. I creatori di Conky affermano che sono disponibili almeno 300 oggetti nativi con i quali sbizzarrirsi nonché la piena compatibilità con Lua e altri programmi di script.

L’unica difficoltà è compilare secondo le proprie esigenze il file di configurazione, ma va detto pure che è proprio l’alta configurabilità il suo principale pregio. Per i meno smaliziati e pigri sono comunque facilmente reperibili in rete una miriade di configurazioni pre-à-porter che richiedono magari solo piccoli aggiustamenti per girare correttamente sul proprio sistema.

Dopo una lunga sessione di smanettamenti vari ecco come si presenta ora il mio desktop:istantanea_2017-01-25_22-55-27

istantanea_2017-01-25_23-11-34

Sebbene il limite all’aspetto grafico e limitato solo dall’immaginazione, personalmente ho voluto mantenere per il mio widget un profilo piuttosto classico.

Adesso direttamente sul mio desktop posso avere una visione di insieme in real-time di tutto quello che sta facendo il mio computer e in dettaglio:

– la versione del sistema e l’uptime;
– il carico della CPU con relativi grafici;
– l’utilizzo della RAM con relativi grafici;
– l’utilizzo della memoria SWAP;
– i carichi di sistema;
– i processi caricati e in esecuzione;
– il monitor temperature sistema;
– il controllo della connettività Wireless;
– il controllo del download/upload rete;
– il monitor del File system;
– il monitor utilizzo disco con grafici;
– l’elenco dei principali processi in esecuzione;
– l’elenco dei file presenti nel device di storage.

Avrei potuto continuare, ma alla fine mi sono accontentato… (qui il link per scaricare la mia configurazione).


Installazione & Configurazione base

  • Innanzitutto installiamo Conky:
    Per sistemi Ubuntu/Debian procediamo con il seguente comando:

    $ sudo apt-get install conky-all 
  • Creiamo il file di configurazione nella cartella home/utente con il seguente comando:
    $ nano ~/.conkyrc 
  • Adesso è il momento di editare il file di configurazione:
    • prendendo spunto dagli esempi reperibili sul sito homeproject-screenshot;
    • oppure utilizzando come base la configurazione di default presente in /etc/conky/conky.conf dando il seguente comando:
      $ cp /etc/conky/conky.conf ~/.conkyrc

    Avvio automatico di Conky

  • Creiamo lo script per l’avvio allo startup:
    • digitiamo il seguente comando:
      $ sudo gedit /opt/conky-start 
    • lo script sarà composto dalle seguenti tre righe, quindi salviamo:
      #!/bin/sh
      sleep 20 && conky -c ~/.conky/conkyrc
      exit 
  • Rendiamo eseguibile lo script appena creato con il seguente comando:
    $ sudo chmod +x /opt/conky-start
  • istantanea_2017-01-26_00-41-14Per dire al nostro sistema di avviare l’eseguibile all’avvio per farlo basta andare in Sistema ->Preferenze ->Applicazioni d’Avvio ->Aggiungi e qui inseriamo:
    • su Nome:
                conky-start
    • su Commento:
               avvio di conky
    • su Comando:
              /opt/conky-start

    Infine clicchiamo su OK e al riavvio avremo (dopo 20 secondi circa) il nostro Conky avviato.



Magari nel prossimo post analizzeremo in dettaglio come procedere con la customizzazione della configurazione di Conky.

Il mio script python per scaricare automaticamente via Raspberry i sottotitoli che mi interessano da Subspedia

Da grande estimatore delle serie tv made USA mi trovo spesso a reperire le puntate dei miei telefilm preferiti via .torrent (della cosa si occupa egregiamente il mio Raspberry Pi B+ via Transmission, il tutto automaticamente grazie ai feed RSS di Karmorra che vengono macinati da Flexget), e per quanto riguarda i sottotitoli faccio riferimento alle diverse piattaforme (ItaSA, Subspedia, Subfactory, The Legion Sub e Traduttori Anonimi) che fanno tutte più che egregiamente e gratuitamente il lavoro di fornire agli appassionato dei sottotitoli di qualità.telefilm-awards

Volendo automatizzare anche la ricerca dei sottotitoli in maniera tale da ritrovarmi la mia puntata bell’è pronta mi sono armato di pazienza e ho creato uno script in python con il quale sfruttando principalmente la libreria Beautifulsoup per il parsing della home page di Subspedia, il mio Raspberry Pi va a scaricare il sottotitolo che mi occorre non appena viene messo a disposizione dalla crew di traduttori. Non contento il valente tuttofare Raspberry Pi mi comunica via Telegram dell’avvenuto ritrovamento. Lo script ‘gira’ automaticamente ogni 30 minuti ed è in grado di evitare di riprocessare le puntate già trattate.

Ecco come ho realizzato lo script…

senzanomeInnanzitutto scorrendo il codice sorgente della home page di Subspedia, mi sono accorto della facilità con cui potevo realizzare la ‘chiamata’ al download del sottotitolo della puntata di mio interesse. Ovviamente chiedo scusa al webmaster di Subspedia se la mia curiosità non era cosa gradita. Dal canto mio lo ringrazio dal profondo del cuore per come ha realizzato l’intera piattaforma che è all’altezza dell’ottimo servizio di tutti coloro che dedicano tempo e fatica per fare felici tutti noi.senzanome

Comunque procedendo nell’analisi del sito ho visto che riguardo ad ogni sottotitolo pubblicato nella home page è presente una chiamata a uno script che si occupa dell’operazione di download:

istantanea_2017-01-15_23-14-07

istantanea_2017-01-15_23-14-27

La prima operazione è identificare le puntate presenti sul mio dispositivo in maniera tale da fornire allo script ciò che stiamo cercando… In pratica visto che Transmission salva le puntate in una directory con il nome della serie mi basta creare leggere il contenuto del dispositivo di archiviazione per dare a python ciò che deve cercare.

In realtà a questo punto c’è una precisazione che devo fare: mi sono accorto che alcune serie tv vengono salvate con un nome da Transmission e indicate da Subspedia con un altro ( si tratta di piccole differenze, ma per noi sostanziali), quindi ho risolto il problema con un file esterno (che ho chiamato except) in cui elenco queste eccezioni e faccio agire lo script di conseguenza.

Ad esempio la serie che si trova nella directory “The Librarians Us” sarà cercata nel sito di Subspedia come “The Librarians”:istantanea_2017-01-15_23-29-04

opengraph-icon-200x200Per leggere adeguatamente la pagina di Subspedia mi sono affidato alla potente libreria BeautifulSoup. Si è trattato di isolare l’oggetto che ci interessa e quindi ricavare i parametri che occorrono (link, nome della serie, stagione e numero della puntata) per costruire l’url a cui il sito di Sbspedia risponde facendo partire il download dei sottotitolo che ci occorre.

Una volta scaricato il sottotitolo, provvedo a rinominare la directory che contiene la puntata (in maniera da rendere più visibile il fatto che è disponibile il sottotitolo ed evitare che lo script la rilavori successivamente), prendo nota dell’operazione effettuata in un file di log per un successivo controllo e invio un avviso via Telegram.

Ed ecco il risultato:istantanea_2017-01-15_23-40-51

senzanome

#!/usr/bin/python
'''
Programma per scarico sottotitoli da Subspedia
ver. 1.2 (13/01/17)
By Zirconet - 07-01-2017
'''

import subprocess
import time
import os, sys
import urllib
import requests
from bs4 import BeautifulSoup

url = "http://www.subspedia.tv/index.php"
r = requests.get(url)
soup = BeautifulSoup(r.content, "lxml")
g_data = soup.find_all("table", {"class": "subHomeContainer"})

path = '/mnt/usb/0tv/'
subdirectories =  os.listdir(path)

for item in subdirectories:
    seriedacercare = item
    dirname = seriedacercare

    f = open('/mnt/usb/except','r')
    xxx = [x for x in f.readlines()]  
    f.close()
    for x in xxx:
     eccept = x.split(";")
     if eccept[0] == seriedacercare:
        seriedacercare = eccept[1]
   
    print seriedacercare+" --> X" 
    aList = []

    for item in g_data:
        links = item.contents[1].find_all("a", text=seriedacercare)
	
        for link in links:
                xxx = item.contents[3].find_all("a", href=True)
                for link in xxx:
                        trovo = link["href"]
                        aList.append(trovo);
	        
                str0 = aList [0]
                str1 = str0.replace('javascript:downloadSub("', '')
                str2 = str1.replace(');','')
                str = str2.replace('"','')
                data = str.split(',')

		filename = data[0].split('/')
                nomefile = path+dirname+'/'+filename[1]
		print nomefile
                
                sito = "http://www.subspedia.tv/scaricaSub.php?path="
                url = sito+data[0]+'&serie='+data[1]+'&stagione='+data[2]+'&numero='+data[3]

                myfile = urllib.URLopener()
                myfile.retrieve(url, nomefile)
		
		os.rename((path+dirname),(path+"0subbed "+seriedacercare))

		t = time.localtime()
                timestamp = time.strftime('%d-%b-%Y %H:%M', t)
                log = timestamp+' --> '+seriedacercare+'\n'
                out_file=open("/var/log/mySub.log", "a")
                out_file.write(log)
                out_file.close()  

		messaggio = "Trovato nuovo sottotitolo per "+seriedacercare
		subprocess.Popen(["/mnt/usb/telegram.sh", messaggio]) 
%d blogger hanno fatto clic su Mi Piace per questo: