28 dicembre 2010

Cygwin: poco elegante, ma utile ponte fra GNU/Linux e Windows

In queste "vacanze" ho avuto modo anche di approfondire la conoscenza di Cygwin, uno strumento per interfacciare script ed applicazioni nate per GNU/Linux a Windows. Una volta scaricato l'eseguibile dal sito, lo si lancia su Windows ed in maniera intuitiva si selezionano i "pacchetti" base che ci interessa avere sul nostro fittizio sistema GNU/Linux sotto Windows. Alla fine dell'stallazione, troviamo una cartella che riproduce il classico filesystem pinguino-like (home, etc, bin, ecc.) Lanciamo l'eseguibile e magicamente abbiamo una console in cui riconosciamo bash! La cosa stupefacente è che i singoli programmi (ls, awk, grep, ecc.) possono essere eseguiti anche dal terminale di windows; così nei file .bat si riescono a scrivere splendidi script, essendo gli strumenti sviluppati per GNU/Linux molto più aggiornati e potenti (l'utente medio di Windows non utilizza mai il terminale, mentre quello di GNU/Linux usa e produce continuamente strumenti per la bash: maggiore frequenza=maggiore attenzione ai dettagli)

Una lettura intressante... dive into html5

HTML5 è il futoro del web, come il CSS3 del resto. Quindi vale la pena informarsi :) In realtà da qualche tempo pensavo di aggiornarmi sull'argomento, in particolare per il notevole YouTube/HTML5. Particolare non trascurabile: se lo sviluppo continua, sarà possibile fare a meno di plugins indesiderati (come il flash player di adobe) ed avere a disposizione codice più orientato all'accessibilità. Prima o poi scriverò un blog in HTML5 + CSS3 + MySQL :)

Primo post - Salvare filmati visti su YouTube

In principio non era complesso scaricare filmati da YouTube, poi -evidentemente sotto forti pressioni- gli sviluppatori hanno rafforzato i metodi di sicurezza. Adesso scriversi uno script che cerchi nella rete il file da scaricare è diventato sconveniente: bisogna superare tante trappole (la richiesta del video rimbalza svariate volte) ed i sistemi di sicurezza sono in continua evluzione [per curiosità vi consiglio di leggere QUI]

Osservazione: se riesci a vederlo vuol dire che, ad un certo punto della filiera server-utente, il video è in un formato conveniente, e magari ~se siamo fortunati~ è tutto scritto su un file.

Osservazione: i browser moderni utilizzano una cache, cioè salvano files sulla macchina dell'utente per evitare che questi debba scaricali più volte.

Di seguito un semplice script (tutto da riadattare) per la bash (utilizzo principalmente GNU\Linux) che lavora sulla cache di Firefox:

#!/bin/sh

cd /home/UTENTE/.mozilla/firefox/CODICE.default/Cache


list=`ls -t | xargs file | grep Macromedia\ Flash\ Video | gawk '{ sub(": Macromedia Flash Video", ""); print}'`

#copy only the last fvm file in cache
count=0
for i in $list
do
count=`echo $count + 1 | bc -l`
if [ $count = 1 ]
then
echo $i YES
cp $i /home/UTENTE/VideoYouTube/$i.fvm
else
echo $i NO
fi
done

P.S.

questo script salva l'ultimo video visto, con un nome poco simpatico. Penso che in futuro cercherò di ricostruire il nome originale tramite files di descrizione sempre presenti nella cartella Cache.

Non occorre vedere tutto il video per poterlo scaricare, basta che la barra di caricamento sia piena.