tag:blogger.com,1999:blog-68408787201815194582024-03-05T07:36:08.251-08:00Gli artigli della LinceIncontri e scontri usando Ubuntu 10.04 Lucid Lynx ed esplorando le distro LinuxAldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.comBlogger82125tag:blogger.com,1999:blog-6840878720181519458.post-46814838389841583502015-01-19T06:18:00.000-08:002015-01-19T06:21:26.668-08:00Script cpMvBarDa tempo ...<br />
mi ritrovo ...<br />
MALEDUCATO!!!<br />
Ops ... ciao a tuttiii!!! :)<br />
<br />
Di nuovo alle prese con una soluzione che ho voluto trovare, ad un problema ... pressoché inutile,<br />
ma insomma che può almeno risparmiare un po' di stress quando si copiano file di notevoli dimensioni da terminale.<br />
<br />
Non capita tutti i giorni sì (forse) ... ma proprio la scorsa settimana il mio capo e mi dice ...<br />
<br />
Aldo non è possibile che non fai aggiornamenti del OS (windows) nella tua macchina virtuale!!!!<br />
:OOOOO :( ...<br />
<br />
Ehm ... sì li faccio ... ....<br />
Mi tocca fare il backup de 59 gb de macchina virtuale?!!<br />
Direi proprio che non ci sia altra scelta :/ ...<br />
Chiaramente nautilus, bello figo ecc ... ma in termini di prestazioni e task aperti (almeno per la mia routine) non è che sia il massimo.<br />
Come sempre c'è il nostro fido terminale, ma lo sappiamo che fare un cp/mv (copia / muovi .. :P ) da terminale di file grandi significa che bisogna ipotizzare quale sia la percentuale di progresso dell'operazione copia/spostamento ... :/ .<br />
<br />
Qui ci vuole una barra di scorrimento per capire a che punto sta :) ! ...<br />
Invece di affidarmi all'utility zenity come feci in passato che utilizza una gui grafica,<br />
ho optato per uno script, chiaramente open source che permette di mostrare l'avanzamento della copia tramite una barra in caratteri ASCII ... il progetto, nello specifico lo potete trovare a questo indirizzo : <a href="http://www.theiling.de/projects/bar.html" target="_blank">http://www.theiling.de/projects/bar.html</a> .<br />
<br />
Non mi soffermo sul codice dello script, anche perché non è in bash e non essendo un mostro non ho le competenze per farlo, piuttosto mi soffermerò sulla sintassi della funzionalità principale.<br />
Tale funzionalità si discosta un po' dal cp in bash, e quindi ho preferito, realizzare uno script apposito per richiamarla.<br />
<br />
Lo script non ha veramente niente di sofisticato, si tratta di gestire ... tramite un Case sul primo parametro passato (l'opzioni -f, -F, -m e -M ) il tipo di operazione deve essere svolta.<br />
<br />
Allo stato attuale, non utilizzo il richiamo alla funzione di copia directory, perché poco pratica (accennerò in breve il perché).<br />
<br />
Comunque la barra che verrà mostrata in fase di copia sarà questa<br />
<div class="separator" style="clear: both; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQlZvY45LkNpHAKpbliOb9EuP1rTG1VYwSyx0PmeoBtGV5X2ACcXk3NWIFSaBcPuVDfLFxB263m55PlM9yxttdy13Rjxmnb0UbAGVAYCyutuMxfeQABuJIwpLkPdR3jpttlNN1rpKycJU/s1600/Blog_copiaBar.png" height="54" width="320" /></div><br />
<br />
Allora vediamo come copiare un file...<br />
ah dimenticavo ... premetto che effettuo richiamo in modo diretto lo script "bar" ... perché spostato in /usr/bin<br />
(ormai abitudine presa per tutti gli script fatti in casa e non che uso frequentemente).<br />
<br />
sintassi :<br />
<br />
<code><span style="color: orange;">bar -o $fileDestinazione $fileOrigine</span></code><br />
<br />
Già si nota la prima differenza, la destinazione viene prima e il file di origine dopo.<br />
Fin qui non sarebbe male, se non fossse che ... si deve specificare il file di destinazione e non la cartella, pertanto se si vuole spostare il file "lista.txt" nella cartella "liste" si dovrà eseguire così il comando:<br />
<br />
<code><span style="color: orange;">bar -o liste/lista.txt lista.txt</span></code><br />
<br />
<br />
Già questo, almeno per me, risulta un pò antipatico ...<br />
<br />
Come dicevo, esiste anche l'opzione per la copia di una directory,<br />
la sintassi<br />
<br />
<code><span style="color: orange;">bar -c 'cat > cartella/${bar_file}' file1 file2 file3</span></code><br />
<br />
<br />
(deduco che si sia capito, che lo script non fa altro che effettuare il cat delle operazioni)<br />
<br />
Proprio per la copia di una directory devo lavorarci (tempo permettendo ... e solita poca pratica) ancora di più, per ora mi sono limitato a ciclare i soli files di una directory e copiarli uno per uno,<br />
ma proprio perché sono cosciente essere una soluzione poco agevole e sicuramente da cambiare/migliorare, neanche la descrivo.<br />
<br />
Allora iniziamo con la copia di un file, rendendo la copia più simile al cp classico.<br />
<br />
Nel nostro script che come da titolo nominerò cpMvBar, gestirò diverse opzioni,<br />
per la copia appunto sono due : "-f" e "-F" .<br />
<br />
la sintassi nel primo caso sarà<br />
<br />
<code><span style="color: orange;">cpMvBar -f $fileOrigine $fileDestinazione </span></code><br />
<br />
come si evince ... in realtà in questo caso non faccio assolutamente niente se non invertire l'ordine dei parametri, pertanto, il nome del file deve essere scritto anche nel secondo<br />
Esempio:<br />
<br />
<code><span style="color: orange;">cpMvBar -f lista.txt liste/lista.txt</span></code><br />
<br />
<br />
la sintassi nel caso di parametro -F invece, sarà la seguente<br />
<br />
<code><span style="color: orange;">cpMvBar -F $fileOrigine $cartellaDestinazione</span></code><br />
<br />
questo è chiaramente come il comando cp (con in aggiunta l'opzione -F).<br />
<br />
pertanto<br />
<br />
<code><span style="color: orange;">cpMvBar -F lista.txt liste</span></code> (nome directory senza il carattere slash finale "/")<br />
<br />
per la copia ok.<br />
<br />
Il comando bar, aimè non prevede lo spostamento, ma chiaramente ... se fossero questi i problemi :D ;) .<br />
<br />
Come per la copia gestisco due casi con le opzioni -m e -M, anche in questo caso, nella prima opzione si deve specificare anche il nome del<br />
file nella destinazione, mentre nel secondo no<br />
<br />
<br />
<code><span style="color: orange;">cpMvBar -m lista.txt liste/lista.txt</span></code><br />
<span style="color: orange;"><br />
</span> <code><span style="color: orange;">cpMvBar -M lista.txt liste</span></code><br />
<br />
<br />
<br />
in questi due ultimi casi non ho fatto altro che richiamare lo script bar, al solito modo, e aggiungere il classico rm successivamente.<br />
<br />
Vi riporto di seguito l'intero script :<br />
<br />
<code><span style="font-size: x-small;"><br />
<span style="color: #cccccc;"> #! /bin/bash<br />
#cpMvBar Script </span><br />
<br />
<span style="color: white;"> while test</span><span style="color: orange;"> </span><span style="color: #cccccc;">-n</span><span style="color: orange;"> "</span><span style="color: #6aa84f;">$1</span><span style="color: orange;">"</span><br />
<span style="color: white;"> do</span><br />
<span style="color: orange;"> </span><span style="color: white;">case</span><span style="color: orange;"> "</span><span style="color: #6aa84f;">$1</span><span style="color: orange;">" </span><span style="color: white;">in</span><br />
<span style="color: orange;"> </span><span style="color: white;">-m)</span><br />
<span style="color: orange;"> </span><span style="color: white;">bar</span><span style="color: orange;"> </span><span style="color: #cccccc;">-o</span><span style="color: orange;"> "</span><span style="color: #6aa84f;">$3</span><span style="color: orange;">" "</span><span style="color: #6aa84f;">$2</span><span style="color: orange;">"<br />
</span><span style="color: white;">rm</span><span style="color: orange;"> "</span><span style="color: #6aa84f;">$2</span><span style="color: orange;">"<br />
</span><span style="color: white;">break</span><br />
<span style="color: orange;"> </span><span style="color: white;">;;<br />
-M)</span><br />
<span style="color: orange;"> </span><span style="color: white;">bar</span><span style="color: orange;"> </span><span style="color: #cccccc;">-o</span><span style="color: orange;"> "</span><span style="color: #6aa84f;">$3/$2</span><span style="color: orange;">" "</span><span style="color: #6aa84f;">$2</span><span style="color: orange;">"<br />
</span><span style="color: white;">rm</span><span style="color: orange;"> "</span><span style="color: #6aa84f;">$2</span><span style="color: orange;">"<br />
</span><span style="color: white;">break</span><br />
<span style="color: orange;"> </span><span style="color: white;">;;<br />
-f)<br />
bar</span><span style="color: orange;"> </span><span style="color: #cccccc;">-o</span><span style="color: orange;"> "</span><span style="color: #6aa84f;">$3</span><span style="color: orange;">" "</span><span style="color: #6aa84f;">$2</span><span style="color: orange;">"<br />
</span><span style="color: white;"> break<br />
;;<br />
-F)<br />
bar </span><span style="color: #cccccc;">-o</span><span style="color: orange;"> "</span><span style="color: #6aa84f;">$3/$2</span><span style="color: orange;">" "</span><span style="color: #6aa84f;">$2</span><span style="color: orange;">"<br />
</span><span style="color: white;">break<br />
;;<br />
-h) </span></span></code><br />
<code><span style="color: orange; font-size: x-small;"> </span><span style="color: white; font-size: x-small;">echo</span><span style="color: orange; font-size: x-small;"> </span><span style="font-size: x-small;"><span style="color: yellow;">'Uso: copia [-f] [-d] [-h]'</span><br />
<span style="color: orange;"> </span></span><span style="color: white; font-size: x-small;">echo</span><span style="color: orange; font-size: x-small;"> </span><span style="font-size: x-small;"><span style="color: yellow;">'Options:'</span><br />
<span style="color: orange;"> </span></span><span style="color: white; font-size: x-small;">echo</span><span style="color: orange; font-size: x-small;"> </span><span style="font-size: x-small;"><span style="color: yellow;">' -h mostra questo help'</span><br />
<span style="color: orange;"> </span><span style="color: white;">echo</span><span style="color: orange;"> </span><span style="color: yellow;">' -f copia il file'</span><br />
<span style="color: orange;"> </span><span style="color: white;">echo</span><span style="color: orange;"> </span><span style="color: yellow;">' esempio copia -f fileOrigine fileDestinazione'</span><br />
<span style="color: orange;"> </span><span style="color: white;">echo</span><span style="color: orange;"> </span><span style="color: yellow;">' -F copia il file'</span><br />
<span style="color: orange;"> </span><span style="color: white;">echo</span><span style="color: orange;"> </span><span style="color: yellow;">' esempio copia -f fileOrigine cartellaDestinazione'</span><br />
<span style="color: orange;"> </span><span style="color: white;">echo</span><span style="color: orange;"> </span><span style="color: yellow;">' -m sposta il file'</span><br />
<span style="color: orange;"> </span><span style="color: white;">echo</span><span style="color: orange;"> </span><span style="color: yellow;">' esempio copia -m fileOrigine fileDestinazione'</span><br />
<span style="color: orange;"> </span><span style="color: white;">echo</span><span style="color: orange;"> </span><span style="color: yellow;">' -M sposta il file'</span><br />
<span style="color: orange;"> </span><span style="color: white;">echo</span><span style="color: orange;"> </span><span style="color: yellow;">' esempio copia -m fileOrigine cartellaDestinazione'</span><br />
<span style="color: orange;"> </span><span style="color: white;">break</span><br />
<span style="color: orange;"> </span><span style="color: white;">;;<br />
*)<br />
echo</span><span style="color: orange;"> "</span><span style="color: yellow;">opzione non gestita</span><span style="color: orange;">"</span><br />
<span style="color: orange;"> </span><span style="color: white;"> break<br />
;;<br />
esac<br />
<br />
done</span></span><br />
</code><br />
<br />
Una volta salvato come cpMvBar (o il nome che volete ... potete anche non omettere l'estensione .sh, ma in tal caso dovrete richiamarlo includendola)<br />
<br />
una volta salvato in una directory a piacimento rendiamolo eseguibile con<br />
<br />
<code><span style="color: orange;">chmod +x cpMvBar</span></code><br />
<br />
se lo vogliamo lasciare in questa directory per eseguirlo occorre digitare<br />
./cpMvBar ....<br />
<br />
altrimenti possiamo, come nel mio caso aggiungerlo agli script eseguibili di ubuntu su /usr/bin<br />
<br />
<code><span style="color: orange;">sudo cp cpMvBar /usr/bin</span></code><br />
<br />
Chiaro? No? ...<br />
Ah no ... se avrete già curiosato nel link dello script, noterete in realtà che bar non è un semplice script copia incolla, ma contiene, diverse funzionalità tutte da scoprire tra cui per esempio, menziono la barra di scorrimento in fase di compressione/decompressione file...<br />
<br />
Questo è quanto ... (appunto il capo me chiama :/)<br />
c.you soon<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjnwuoggmnmMEcVavNwlUmMeWd-1c6WVSgd0rRwkgK1pPwTjB-vXtoRz0dKuRRITchKK_ViJDcfXXjs84hngwfjCxW18UyBZAojnVCHjI0jS2Df_FkRLNu30Yv4sRpSJFeX2xEmO0kdsvI/s1600/bar_ani.gif" height="10" width="320" /></div><br />
Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-9087010167276182702014-01-16T02:01:00.001-08:002014-01-16T03:25:54.966-08:00Script MangaPdfConverterCiao a tutti!<br />
Eh sì ... sto un po' trascurando il blog (alla faccia di un po' :P), logicamente gli impegni lavorativi, sentimentali e hobbistici ( :) ) annullano il tempo libero a disposizione.<br />
Mi ritrovo a voler scrivere un nuovo post grazie ad una delle mie fonti di ispirazione preferite in ambito linux ... @bit3lux ed in particolare da un suo post sul suo blog che vi consiglio sentitamente (<a href="http://parliamodi-ubuntu.blogspot.it/2014/01/lo-script-radiosh-si-aggiorna.html" target="_blank">http://parliamodi-ubuntu.blogspot.it/2014/01/lo-script-radiosh-si-aggiorna.html</a>).<br />
<br />
Proprio nello script di cui parla l'articolo, mi si è aperto un piccolo mondo che per la mia limitata esperienza non avevo ancora esplorato, parlo dell'utility Zenity di cui senza super approfondire vi rimando al sito <a href="https://help.gnome.org/users/zenity/stable/index.html.en" target="_blank">https://help.gnome.org/users/zenity/stable/index.html.en</a>.<br />
<br />
Per farla breve si tratta di un'applicazione che, da riga di comando, permette di utilizzare dialog in gtk, piuttosto utili.<br />
<br />
La curiosità e la voglia di utilizzarla mi ha spinto a modificare un mio script di qualche settimana fa così da poter dar modo di impostare con un'interfaccia grafica, i parametri principali.<br />
<br />
Come da titolo, lo script in questione, l'ho scritto per ottimizzare la mia collezione di manga giapponesi facendo sì che, grazie all'integrazione con un'altra applicazione, ogni volume, composto da tanti file .jpg/.png quante sono le pagine che lo compongono, venga convertito in pdf.<br />
Questo può essere inoltre utile, anche quando si hanno a disposizione le scansioni di pagine di libri suddivisi in capitoli e le si vogliono unire in pdf...<br />
<br />
<h4>
Requisiti collezione (file system)</h4>
La struttura su file system della mia collezione è così disposta<br />
<br />
<br />
<ul>
<li>Directory Manga1</li>
<ul>
<li>Directory 001 (Cap 1)</li>
<li>Directory 002 (Cap 2)</li>
<li>...</li>
</ul>
<li>Directory Manga2</li>
<ul>
<li>Directory 001 (Cap 1)</li>
<li>...</li>
</ul>
<li>Directory Manga3</li>
<ul>
<li>...</li>
</ul>
<li>...</li>
</ul>
<div>
In pratica ci sono tante directory quanti sono i manga che possiedo, ogni directory è composta da tante sottodirectory quanti sono i capitoli (ma volendo anche i volumi) del manga, ogni sottodirectory contiene tanti file .jpg/.png quante sono le pagine che compongono i capitoli.</div>
<div>
<br /></div>
<div>
Come test faccio l'esempio dell'ipotetico manga ArtigliDellaLince il manga è composto da 65 capitoli con un numero diverso di pagine.</div>
<div>
<u>Importante è precisare che, anche se, poi vedremo nello script, è parametrizzabile, in questa versione è necessario che all'interno di ogni directory-capitolo sia presente una pagina denominata 000 (che sia .jpg o .png è indifferente) che poi può fungere anche la cover del capitolo.</u></div>
<div>
Di seguito grosso un idea della struttura</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div>
<br />
Lista directory contenute nel manga</div>
<div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0ZGzRybf_0EnW6Xt7WOi7uCOzqB-r2U5spiwi-ULVo2U61K0HVifPtwqdRJtGI74OhwPlOKF8560YyOzYk6gtj2bOt8_f44y0GXC23UTH0T7xHJIcvghelkKq_r2Asx0Kxp3PYelkGzc/s1600/listaVolumi.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0ZGzRybf_0EnW6Xt7WOi7uCOzqB-r2U5spiwi-ULVo2U61K0HVifPtwqdRJtGI74OhwPlOKF8560YyOzYk6gtj2bOt8_f44y0GXC23UTH0T7xHJIcvghelkKq_r2Asx0Kxp3PYelkGzc/s1600/listaVolumi.png" height="38" width="400" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
Lista pagine<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYNBFYRO5DlRDd2RiyX0hIXaZbHyr5Jg9CpzLXZDf8KMpsVVG9n3gr2cI-iRCPN4kHzQSFyBsFE-PzVY_KTZ1vCDUPMkBZYsb0iKsvJbN7diru_s8EerZIidpO69KisdUY8H3h534AMRA/s1600/listaPagine.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYNBFYRO5DlRDd2RiyX0hIXaZbHyr5Jg9CpzLXZDf8KMpsVVG9n3gr2cI-iRCPN4kHzQSFyBsFE-PzVY_KTZ1vCDUPMkBZYsb0iKsvJbN7diru_s8EerZIidpO69KisdUY8H3h534AMRA/s1600/listaPagine.png" height="37" width="400" /></a></div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div>
Il risultato della conversione saranno 65 file .pdf composti da tante pagine quanti sono i file all'interno delle directory "volumi".<br />
I file saranno denominati<br />
[NumeroVolume] [NomeManga].pdf</div>
nel mio caso "001 ArtigliDellaLince.pdf", "002 ArtigliDellaLince.pdf" ecc...<br />
<br />
<h4>
Requisiti software </h4>
Cosa occorre per poter eseguire lo script ?<br />
Innanzitutto, l'applicazione che fa il vero lavoro, ovvero <b>ImageMagick</b> ( <a href="http://www.imagemagick.org/)" target="_blank">http://www.imagemagick.org/)</a>.<br />
E poi come detto prima <b>zenity</b>, ma questa dovrebbe essere già presente su Ubuntu (almeno nel mio caso ... acc... dimenticavo ... ora sto col pangolino ... Ubuntu 13.04 :P ).<br />
<br />
<h4>
Modus operandi</h4>
Come detto ImageMagick è il cuore dello script.<br />
In pratica lo script, una volta impostata la cartella del manga, il nome ed il numero di capitoli, non farà altro che eseguire la riga di comando (per ogni directory) :<br />
<br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;">convert *.* "../$dir $manga.pdf" </span><br />
<span style="font-family: Courier New, Courier, monospace;"><br /></span>
<span style="font-family: inherit;">in parole spicce.. il comando <b>convert</b>, converte tutte le immagini contenute nella directory impostata su <b>$dir</b> nel pdf <b>$dir</b> <b>$manga</b>.pdf (dove <b>$manga</b> è appunto il nome del manga).</span><br />
<span style="font-family: inherit;"><br /></span>
<br />
<h4>
<span style="font-family: inherit;">Piccola parentesi</span></h4>
<span style="font-family: inherit;">Come detto precedentemente lo script è di qualche settimana fa, all'inizio non vi era implementazione con zenity pertanto i parametri [Manga], [Volumi] e [PercorsoDirectory] venivano impostati direttamente passandoli allo script da shell.</span><br />
<span style="font-family: inherit;"><br /></span>
<br />
<h3>
<span style="font-family: inherit;">Richiamo script</span></h3>
<span style="font-family: inherit;">Prima di descrivere il codice, vi stuzzico (:P) mostrandovi come lavora.</span><br />
<span style="font-family: inherit;">In ordine </span><br />
<br />
<ul>
<li><span style="font-family: inherit;">Salviamo lo script in una directory (io metto tutti gli script nella directory scripts nella mia home)</span></li>
<li><span style="font-family: inherit;">Rendiamolo eseguibile con il solito </span><span style="color: #e69138; font-family: Courier New, Courier, monospace;">chmod +x MangaPdfConverter.sh</span></li>
<li><span style="font-family: inherit;">Eseguiamolo con </span><span style="color: #e69138;"><span style="font-family: Courier New, Courier, monospace;">./MangaPdfConverter.sh</span><span style="font-family: inherit;"> </span></span></li>
</ul>
<br />
<span style="font-family: inherit;"> Per prima cosa ci verrà chiesto di impostare il nome del manga ed il numero di capitoli da cui è composto (trucco.. non è necessario che siano presenti tutte le directory da 1 a <i>n</i> l'importante è che <i>n</i> corrisponda al numero che impostiamo, verranno convertite solo le directory presenti).</span><br />
Il dialog sarà il seguente :<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmAdYDXeqlzO6A_KSMpnZH3zFG3yS0pTgzb1hchsvmml9yRJ6GIGWOePdhRlR2_00pf0tWlJJgHRx7HxNv3-1dl0v16P27mlAWlJkMLLSki6z2m2ilzTWJ35JaFG_gRo8EUdLN96l8YQM/s1600/dialog1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmAdYDXeqlzO6A_KSMpnZH3zFG3yS0pTgzb1hchsvmml9yRJ6GIGWOePdhRlR2_00pf0tWlJJgHRx7HxNv3-1dl0v16P27mlAWlJkMLLSki6z2m2ilzTWJ35JaFG_gRo8EUdLN96l8YQM/s1600/dialog1.png" height="207" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
Subito dopo aver premuto <b>Ok</b>, si aprirà il dialog che permetterà di selezionare, sfogliando il proprio file system, la directory del manga (quella appunto contenente le <i>n</i> directory dei capitoli)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYx9Iwa01mA5qaaKHDwNTWPSefGDRkEw5yu38yYZ7pdHCYqEX5SbCZKAagCEjyC79wiwhxXZWBNwBUBWK-t9pKam7Shm5fItzgkmoaws3WhJalYYx8A1T9GzpCATwarmwYVD3JzgyG4Wk/s1600/dialog2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYx9Iwa01mA5qaaKHDwNTWPSefGDRkEw5yu38yYZ7pdHCYqEX5SbCZKAagCEjyC79wiwhxXZWBNwBUBWK-t9pKam7Shm5fItzgkmoaws3WhJalYYx8A1T9GzpCATwarmwYVD3JzgyG4Wk/s1600/dialog2.png" height="255" width="320" /></a></div>
<br />
Appena si conferma, avrà inizio la conversione<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitBXZxCulP5bnKbpq-XRVgDS6JaIcQkAZ48-ikUt2fGe5bXyt1Ui3LRvDsfq9q8q1EbnVjHrc_zcn0bps9ODzj8Uoo26xuREw-x6nxy4fml9GZlVQA43npLbmNC017RZJIqFMW3uzyrG4/s1600/dialog3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitBXZxCulP5bnKbpq-XRVgDS6JaIcQkAZ48-ikUt2fGe5bXyt1Ui3LRvDsfq9q8q1EbnVjHrc_zcn0bps9ODzj8Uoo26xuREw-x6nxy4fml9GZlVQA43npLbmNC017RZJIqFMW3uzyrG4/s1600/dialog3.png" height="78" width="320" /></a></div>
<br />
Al termine verrà mostrato (se tutto è andato ok) il seguente messaggio<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhg-vDMW4Bhw_fPjpzVJXQu5LYHeWSS-6Jcs4Ujf1cQf-fgTO8emBhwpT57xjw6-JRYQ0UyqR7JVwXLf6DKv2M_79ehn7tDxDL0LiCc2KQIenfxKrIFyPeUkFea1cNyzYB5xDiZOUdupoM/s1600/dialog4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhg-vDMW4Bhw_fPjpzVJXQu5LYHeWSS-6Jcs4Ujf1cQf-fgTO8emBhwpT57xjw6-JRYQ0UyqR7JVwXLf6DKv2M_79ehn7tDxDL0LiCc2KQIenfxKrIFyPeUkFea1cNyzYB5xDiZOUdupoM/s1600/dialog4.png" /></a></div>
<br />
Il risultato della conversione è la generazione di 65 file .pdf :<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsiCxVMXarIh3kMNNy_5lL3BZWWyIwBeAnKwxt95aHg__VJQN0A_Ze7Abso6Sv2V_rZlvAqlqhU851hN-IxxPC_1XEO2ApuAcHrs-j-nm68SQciRNThuJlfF1j4YfkcL8Bkf1evs175Ac/s1600/listaPdf.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsiCxVMXarIh3kMNNy_5lL3BZWWyIwBeAnKwxt95aHg__VJQN0A_Ze7Abso6Sv2V_rZlvAqlqhU851hN-IxxPC_1XEO2ApuAcHrs-j-nm68SQciRNThuJlfF1j4YfkcL8Bkf1evs175Ac/s1600/listaPdf.png" height="215" width="400" /></a></div>
<br />
<h3>
Code </h3>
Descriviamo ora il codice.<br />
La prima operazione svolta all'interno dello script è il settaggio di titolo e numero capitoli con il dialog mostrato sopra, questo è possibile tramite questo codice<br />
<br />
<b><span style="color: #6fa8dc; font-family: Courier New, Courier, monospace;">datiManga</span><span style="color: #e69138; font-family: Courier New, Courier, monospace;">=$(zenity --forms --title=</span><span style="color: #6aa84f; font-family: Courier New, Courier, monospace;">"Dati Manga"</span><span style="color: #e69138; font-family: Courier New, Courier, monospace;"> \</span></b><br />
<b><span style="color: #e69138; font-family: Courier New, Courier, monospace;"><span class="Apple-tab-span" style="white-space: pre;"> </span>--text=</span><span style="color: #6aa84f; font-family: Courier New, Courier, monospace;">"Inserisci dettagli."</span><span style="color: #e69138; font-family: Courier New, Courier, monospace;"> \</span></b><br />
<b><span style="color: #e69138; font-family: Courier New, Courier, monospace;"><span class="Apple-tab-span" style="white-space: pre;"> </span>--separator=</span><span style="color: #6aa84f; font-family: Courier New, Courier, monospace;">"|"</span><span style="color: #e69138; font-family: Courier New, Courier, monospace;"> \</span></b><br />
<b><span style="color: #e69138; font-family: Courier New, Courier, monospace;"><span class="Apple-tab-span" style="white-space: pre;"> </span>--add-entry=</span><span style="color: #6aa84f; font-family: Courier New, Courier, monospace;">"Titolo"</span><span style="color: #e69138; font-family: Courier New, Courier, monospace;"> \</span></b><br />
<b><span style="color: #e69138; font-family: Courier New, Courier, monospace;"><span class="Apple-tab-span" style="white-space: pre;"> </span>--add-entry=</span><span style="color: #6aa84f; font-family: Courier New, Courier, monospace;">"Numero Capitoli"</span><span style="color: #e69138; font-family: Courier New, Courier, monospace;">)</span></b><br />
<br />
Nella variabile <span style="color: #6fa8dc;">$datiManga</span> verrà memorizzata una stringa tipo <i>Titolo</i>|<i>NumeroCapitoli</i><br />
che come si può capire sarà necessario splittare in due variabili ...<br />
<br />
Ammetto, questa operazione che in Java risulta piuttosto semplice, su shell mi ci sono volute un pochino di ricerche soprattutto per capire cosa fosse la variabile IFS (rimando <a href="http://en.wikipedia.org/wiki/Internal_field_separator" target="_blank">http://en.wikipedia.org/wiki/Internal_field_separator</a>) e cosa servisse, pertanto dopo aver impostato il carattere pipe "|" come delimitatore scorro l'array generato dalla stringa e imposto la variabile <span style="color: #6fa8dc;">$manga</span> con <i>Titolo</i> e la variabile <span style="color: #6fa8dc;">$numeri</span> con i <i>numeri dei capitoli</i>.<br />
<br />
<b><br /></b>
<span style="color: cyan; font-family: Courier New, Courier, monospace;"><i><b>#variabili iniziali</b></i></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #6fa8dc;">ix</span>=0</b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #6fa8dc;">OIFS</span>=<span style="color: #6fa8dc;">$IFS</span></b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #6fa8dc;">IFS</span>='|'</b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #6fa8dc;">arr</span>=<span style="color: #6fa8dc;">$datiManga</span></b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #6fa8dc;">numeri</span>=0</b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #6fa8dc;">manga</span>=<span style="color: #6aa84f;">""</span></b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><br /></b></span>
<span style="color: cyan; font-family: Courier New, Courier, monospace;"><b><i>#imposto il titolo del manga e il numero dei capitoli ricavati</i> </b></span><br />
<span style="color: cyan; font-family: Courier New, Courier, monospace;"><i><b>#dal form (variabile $datiManga>$arr)</b></i></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: orange;">for</span> <span style="color: #6fa8dc;">cnt</span> <span style="color: orange;">in</span> <span style="color: #6fa8dc;">$arr</span></b></span><br />
<span style="color: orange; font-family: Courier New, Courier, monospace;"><b>do</b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: orange;">case</span> $ix <span style="color: orange;">in</span></b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: orange;">0)</span> <span style="color: #6fa8dc;">manga</span>=<span style="color: #6aa84f;">"</span><span style="color: #6fa8dc;">$cnt</span><span style="color: #6aa84f;">"</span> <span style="color: orange;">;;</span></b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: orange;">1)</span> <span style="color: #6fa8dc;">numeri</span>=<span style="color: #6fa8dc;">$cnt</span> <span style="color: orange;">;;</span></b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: orange;">esac</span></b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #6fa8dc;">ix</span>=$(( <span style="color: #6fa8dc;">$ix</span> + 1 ))</b></span><br />
<span style="color: orange; font-family: Courier New, Courier, monospace;"><b>done</b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><br /></b></span>
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #6fa8dc;">IFS</span>=<span style="color: #6fa8dc;">$OIFS</span></b></span><br />
<br />
Dopo aver verificato con due banali if che la variabile <span style="color: #6fa8dc;">$manga </span>non è vuota e la variabile <span style="color: #6fa8dc;">$numeri</span> è diversa da zero imposto la variabile <span style="color: #6fa8dc;">$path</span> sempre grazie a zenity:<br />
<br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #6fa8dc;">path</span>=<span style="color: #e69138;">$(zenity --file-selection --directory)</span></b></span><br />
<br />
Questo permetterà appunto l'apertura del dialog per sfogliare il file system e quindi selezionare la directory.<br />
<br />
A questo punto non rimane altro che gestire il ciclo che per ogni directory eseguirà la conversione ...<br />
se ... te pare facile :D ;)<br />
Scherzo è facile ma proprio per interagire con zenity (per capirci con il dialog che mostra la progressbar con lo stato della conversione) ritengo necessario iniziare a descrivere il codice per gradi ...<br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b>(<i> ... Codice ...</i>) | zenity --progress \</b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #e69138;"><span class="Apple-tab-span" style="white-space: pre;"> </span> --title=</span><span style="color: #6aa84f;">"Conversione Manga $manga"</span><span style="color: #e69138;"> \</span></b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #e69138;"><span class="Apple-tab-span" style="white-space: pre;"> </span> --text=</span><span style="color: #6aa84f;">"Cerco"</span><span style="color: #e69138;"> \</span></b></span><br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b><span class="Apple-tab-span" style="white-space: pre;"> </span> --percentage=0 \</b></span><br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b><span class="Apple-tab-span" style="white-space: pre;"> </span> --width=500 \</b></span><br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b><span class="Apple-tab-span" style="white-space: pre;"> </span> --auto-close</b></span><br />
Per richiamare la progressbar di zenity, bisgogna seguire questa sintassi, ovvero,<br />
mettere prima del suo richiamo, il codice che deve man mano impostare l'avanzamento di stato.<br />
<br />
Chiaramente, il nostro codice imposterà di volta in volta il numero di capitolo e verificherà la presenza dei file 000.[estensione] (si lo so ... ma na verifica sulla presenza della directory non era meglio...? :/ :D )<br />
<br />
Per aggiornare l'avanzamento utilizzo una variabile <span style="color: #6fa8dc;">$perc</span> che per ogni item (inteso come numero capitolo) imposto, appunto la percentuale con un banale:<br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #6fa8dc;">perc</span><span style="color: #e69138;">=`expr </span><span style="color: #6fa8dc;">$x</span><span style="color: #e69138;"> \* 100 / $numeri`</span></b></span><br />
<br />
Praticamente richiamando<br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #e69138;">echo </span><span style="color: #6aa84f;">"$perc"</span> </b></span><br />
si dirà a zenity quale la percentuale di avanzamento deve impostare sulla barra,<br />
mentre richiamando<br />
<b><span style="color: #e69138; font-family: Courier New, Courier, monospace;">echo </span><span style="color: #6aa84f;"><span style="font-family: Courier New, Courier, monospace;">"# testo informativo"</span> </span></b><br />
si dirà a zenity di mostrare il testo scelto come "stato" (la differenza è propio <span style="color: #6aa84f;">"#"</span> all'inizio).<br />
<br />
Il ciclo while che viene eseguito, parte dal valore iniziale 1 (valore di <span style="color: #6fa8dc;">$x</span>) al valore di <span style="color: #6fa8dc;">$numeri</span> e svolge le seguenti operazioni :<br />
Imposta il valore della variabile <span style="color: #6fa8dc;">$dir</span> impostando qualora <span style="color: #6fa8dc;">$x</span> sia minore di 10 in <span style="color: #6aa84f;">"00</span><span style="color: #6fa8dc;">$x</span><span style="color: #6aa84f;">"</span> e qualora minore di 100 in <span style="color: #6aa84f;">"0</span><span style="color: #6fa8dc;">$x</span><span style="color: #6aa84f;">"</span><br />
<b><span style="color: #e69138; font-family: Courier New, Courier, monospace;">if [ </span><span style="color: #6fa8dc; font-family: Courier New, Courier, monospace;">$x</span><span style="color: #e69138; font-family: Courier New, Courier, monospace;"> -lt 10 ]</span></b><br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b>then</b></span><br />
<b><span style="color: #e69138; font-family: Courier New, Courier, monospace;"> </span><span style="color: #6fa8dc; font-family: Courier New, Courier, monospace;">dir</span><span style="color: #e69138; font-family: Courier New, Courier, monospace;">=</span><span style="color: #6aa84f; font-family: Courier New, Courier, monospace;">"00</span><span style="color: #6fa8dc; font-family: Courier New, Courier, monospace;">$x</span><span style="color: #6aa84f; font-family: Courier New, Courier, monospace;">"</span></b><br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b>else</b></span><br />
<b><span style="color: #e69138; font-family: Courier New, Courier, monospace;"> if [ </span><span style="color: #6fa8dc; font-family: Courier New, Courier, monospace;">$x</span><span style="color: #e69138; font-family: Courier New, Courier, monospace;"> -lt 100 ]</span></b><br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b> then</b></span><br />
<b><span style="color: #e69138; font-family: Courier New, Courier, monospace;"> </span><span style="color: #6fa8dc; font-family: Courier New, Courier, monospace;">dir</span><span style="color: #e69138; font-family: Courier New, Courier, monospace;">=</span><span style="font-family: Courier New, Courier, monospace;"><span style="color: #6aa84f;">"0</span><span style="color: #6fa8dc;">$x</span><span style="color: #6aa84f;">"</span><span class="Apple-tab-span" style="color: #e69138; white-space: pre;"> </span></span></b><br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b> else</b></span><br />
<b><span style="color: #e69138; font-family: Courier New, Courier, monospace;"> </span><span style="color: #6fa8dc; font-family: Courier New, Courier, monospace;">dir</span><span style="color: #e69138; font-family: Courier New, Courier, monospace;">=</span><span style="font-family: Courier New, Courier, monospace;"><span style="color: #6aa84f;">"</span><span style="color: #6fa8dc;">$x</span><span style="color: #6aa84f;">"</span><span class="Apple-tab-span" style="color: #e69138; white-space: pre;"> </span></span></b><br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b> fi</b></span><br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b>fi</b></span><br />
<br />
In seguito, essendo ora a conoscenza del path e del nome della directory, verifico la presenza del file 000.[estensione].<br />
Nel mio caso mi sono limitato a file con estensione .jpg, .png e .JPG, volendo se ne possono gestire anche altri tipo .gif ecc... l'unica cosa che ho verificato è che ImageMagick con alcuni tipi di .gif va in errore (immagino per codifiche diverse dal classico RGB, 8bit ecc), pertanto se possibile è bene verificare presenza di tali tipi di file.<br />
<br />
Se la verifica ha effetto positivo imposto<br />
la directory in cui mi devo spostare<br />
<b><span style="color: #6fa8dc;">t<span style="font-family: Courier New, Courier, monospace;">oElab</span></span><span style="font-family: Courier New, Courier, monospace;">=<span style="color: #6aa84f;">"</span><span style="color: #6fa8dc;">$path</span><span style="color: #6aa84f;">/</span><span style="color: #6fa8dc;">$dir</span><span style="color: #6aa84f;">"</span></span></b><br />
e la variabile flag che mi consentirà di saltare la conversione se = 1<br />
<b><span style="color: #6fa8dc;">f<span style="font-family: Courier New, Courier, monospace;">lg</span></span><span style="font-family: Courier New, Courier, monospace;">=0</span></b><br />
<br />
Infine se <span style="color: #6fa8dc;">$flg</span> = 0<br />
mi sposto nella directory<br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #e69138;">cd</span> <span style="color: #6aa84f;">"</span><span style="color: #6fa8dc;">$toElab</span><span style="color: #6aa84f;">"</span></b></span><br />
aggiorno lo stato del dialog della progress di zenity<span class="Apple-tab-span" style="white-space: pre;"> </span><br />
<b><span style="font-family: Courier New, Courier, monospace;"><span style="color: #e69138;">echo</span><span style="color: #6aa84f;"> "# converto capitolo </span><span style="color: #6fa8dc;">$dir</span><span style="color: #6aa84f;">"</span></span><span class="Apple-tab-span" style="white-space: pre;"> </span></b><br />
unisco e converto tutte le immagini nel pdf<br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #e69138;"><span class="Apple-tab-span" style="white-space: pre;"></span>convert *.* </span><span style="color: #6aa84f;">"../</span><span style="color: #6fa8dc;">$dir $manga</span><span style="color: #6aa84f;">.pdf"</span></b></span><br />
<br />
Dall'istruzione<br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b>(.. codice ..) | zenity --progress ....</b></span><br />
si ottiene un parametro di ritorno, che se uguale -1 identifica la presenza di un errore durante l'esecuzione, se uguale a 0 significa che il codice è stato eseguito completamente e se uguale a 1 significa che il codice è stato interrotto anticipatamente (magari stoppato dall'utente)<br />
pertanto il nostro dialog di conferma riporterà messaggi differenti in tutti e tre i casi :<br />
<b><span style="color: #e69138;"><br /></span></b>
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #e69138;">if [ </span><span style="color: #6aa84f;">"</span><span style="color: #6fa8dc;">$?</span><span style="color: #6aa84f;">"</span><span style="color: #e69138;"> = -1 ] ; then</span></b></span><br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b> zenity --error \</b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #e69138;"> --text=</span><span style="color: #6aa84f;">"Conversione Fallita."</span></b></span><br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b>else</b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #e69138;"> if [ </span><span style="color: #6aa84f;">"</span><span style="color: #6fa8dc;">$?</span><span style="color: #6aa84f;">"</span><span style="color: #e69138;"> = 0 ] </span></b></span><br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b> then<span class="Apple-tab-span" style="white-space: pre;"> </span></b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #e69138;"> zenity --info --title=</span><span style="color: #6aa84f;">"Success"</span><span style="color: #e69138;"> \</span></b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #e69138;"> --text=</span><span style="color: #6aa84f;">"Manga convertito correttamente!"</span></b></span><br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b> else</b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #e69138;"> zenity --info --title=</span><span style="color: #6aa84f;">"Success"</span><span style="color: #e69138;"> \</span></b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b><span style="color: #e69138;"> --text=</span><span style="color: #6aa84f;">"Operazione terminata ! \n Non tutti i capitoli sono stati convertiti"</span></b></span><br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b> fi</b></span><br />
<span style="color: #e69138; font-family: Courier New, Courier, monospace;"><b>fi</b></span><br />
<br />
Bè direi che con questo siamo arrivati alla fine... (e che ve pensavate fosse un poema?! :D) ...<br />
<br />
Link Script completo (aimè dall'ufficio pastebin è bloccato :P ) : <a href="http://notepad.cc/share/w6GfeZvPjs" target="_blank">http://notepad.cc/share/w6GfeZvPjs</a><br />
<br />
<h4>
Critiche e autocritiche</h4>
Chi mi conosce sa che sviluppo in .net ma adoro il mondo linux, pertanto ammetto di aver scritto lo script utilizzando sintassi meno avanzata e non gestendo le 10.000 casistiche possibili nell'esecuzione,<br />
ma spero da qui al prossimo futuro di implementare migliorie e nuove feature man mano che la mia conoscenza si consolida :) ... per ora posso solo dire che in casi come questo lo script da un bella mano, soprattutto se si è soliti leggere manga su dispositivi android come me, e quindi si preferisce invece di incasinare la propria galleria con migliaia di immagini, poter organizzarla in modo più ordinato utilizzando invece i pdf :) ...<br />
Chiaramente le migliorie sono pronto ad implementarle grazie anche ai vostri consigli, sempre ben accetti ;)<br />
ciao a tutti Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-7311597734080123262012-10-09T05:18:00.000-07:002012-10-10T02:53:38.693-07:00Mai più senza la Lince remixata!<br />
In termini calcistici si direbbe proprio che mi sono salvato in calcio d'angolo... ^^ ...<br />
<br />
Vi riporto l'avventura / disavventura capitata questo week-end sul mio pc, magari possa esser d'aiuto a qualcuno...<br />
<br />
Prima di incominciare devo però obbligatoriamente ringraziare il professore Antonio Cantaro dell'<a href="http://www.istitutomajorana.it/" target="_blank">Istituto Majorana</a> .<br />
<br />
Ed è proprio grazie alla sua versione remix di Ubuntu 10.04 che sono uscito da quello che poteva sembrare un bel pasticcio.<br />
<br />
Sto parlando del mio notebook che utilizzo tanto nel tempo libero quanto per lavoro, lo scorso marzo (se non ricordo male :P ) ho partizionato l'HD (sempre grazie alle videoguide del professore)<br />
nel modo seguente :<br />
<br />
<b>Partizioni primarie</b><br />
1 60 gb Kubuntu 12.04<br />
<i>per usi "casalinghi" (masterizzazione, videoediting, torrent ecc)</i><br />
2 85 gb Windows 7 <br />
<i>Per usi musicali (il software che uso aimè non ha versioni linux)</i><br />
3 85 gb Windows 7<br />
<i>lavoro </i><br />
<b>Partizione estese</b><br />
1 260 gb (circa) Partizione dati<br />
2 il restante spazio per lo swap<br />
<br />
In questo stato ho usato il pc abbastanza tranquillamente ma qualche giorno fa la partizione Windows che uso per lavoro ha incominciato a dare i numeri (cose fantascientifiche come la cpu fissa al 100% senza alcun virus ... Vabbè :/) e così dopo il dovuto backup, ho deciso di "terminarla" :)<br />
<br />
Lo sbaglio.. l'<b>enorme sbaglio</b> è stato quello di eliminare la partizione senza formattarla subito in NTFS, fidandomi un po' troppo dell'editor di partizioni che si può usare durante l'installazione di Windows 7.<br />
<br />
A questo punto il disastro è servito!<br />
Inserito il DVD di Windows 7, avvio l'installazione, al momento della scelta della partizione scelgo quella appena liberata quindi "non allocata" che devo obbligatoriamente formattare in NTFS....<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwE7cZsR3wtXAXeTCJMpgRadhuJ3RSv6kQ7eUv7eWUuCue4MA4icwMLxdnu3oXZ9A__XJpJUs3Oeax8hBXnCB3VXZRkyFvAPFRFD1S4XNc26oq9xJbFXQnMpLQtupgxMRgs1BC-DxbgzU/s1600/urlo_schermata300.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="150" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwE7cZsR3wtXAXeTCJMpgRadhuJ3RSv6kQ7eUv7eWUuCue4MA4icwMLxdnu3oXZ9A__XJpJUs3Oeax8hBXnCB3VXZRkyFvAPFRFD1S4XNc26oq9xJbFXQnMpLQtupgxMRgs1BC-DxbgzU/s1600/urlo_schermata300.jpg" width="200" /></a></div>
Panico!!<br />
<br />
<br />
Dopo qualche minuto mi si presenta nonostante i miei 8gb di RAM ...<br />
La fatidica e ... Orrenda schermata blu che gli utilizzatori di xp ai tempi in cui la RAM si misurava solo in MB, conoscono bene.<br />
<br />
<br />
<br />
<br />
Evvabbè a parte qualche parolaccia non me ne sono inizialmente preoccupato (ancora fidandomi troppo :( ).<br />
Ritento l'installazione ... E toh!<br />
<br />
Rimane sullo "Starting Windows" con quella maledetta barra a scorrere a vuoto senza sentir girare minimamente il lettore, da cui ho dedotto che non stava facendo alcunché :( , riprovato un paio di volte ma niente ... Linux aiuto !! ...<br />
<br />
Ed è arrivato il momento di preoccuparmi seriamente tiro fuori la mia collezione di cd live che provo in carrellata :<br />
1 Ubuntu 12.04<br />
2 Mint 12<br />
3 Kubuntu 12.04<br />
<br />
Tutti, al momento dell'avvio con lo stesso risultato :<br />
Schermata nera con la scritta : <b>Killed </b><br />
:OOOOOOO<br />
<br />
Grazie ai miei che mi hanno concepito o più semplicemente al destino mi ritrovo con un cuore forte ... Perché avrei potuto fare na bella fine :/ :D :D<br />
<br />
Calma ... Riflettere<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8jqU0W9eDv-m_MWfvkEHDBz4GbNA5AZAOBaUtUxoH_2AniIcfhUEXxSDWSftgLuOkJdoBbRD6oHSVIEcJKQ9VDQpYJpWjh7WwXPhSQ8l_7eSKgJgfdLdVNENjp3-fh5P1_MzVXIpX8og/s1600/meditazione_zen.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8jqU0W9eDv-m_MWfvkEHDBz4GbNA5AZAOBaUtUxoH_2AniIcfhUEXxSDWSftgLuOkJdoBbRD6oHSVIEcJKQ9VDQpYJpWjh7WwXPhSQ8l_7eSKgJgfdLdVNENjp3-fh5P1_MzVXIpX8og/s1600/meditazione_zen.jpg" width="180" /></a></div>
<br />
<br />
Anche per i geroglifici subito dopo la scritta Killed ... Ok<br />
<br />
<br />
Proviamo prima ad usare uno dei strumenti che la schermata iniziale di Kubuntu mette a disposizione ...<br />
Naaa non cambia niente :(<br />
Vabbè so che è inutile avviamo senza cd ...<br />
<br />
<br />
<br />
Come immaginavo l'MBR è passato a miglior vita ed infatti :<br />
<br />
<span style="background-color: black;"><span style="color: white; font-size: large;">GRUB RESCUE ></span></span><br />
<br />
:/ :(<br />
Tempo addietro, per l'esattezza quando ho scoperto il sito dell'Istituto Majorana e quando ho fatto il partizionamento di cui sopra, mi scaricai e masterizzai anche la versione remix di Ubuntu 10.04 ... La mia salvezza!!!<br />
<br />
(Ancora grazie prof. Cantaro )<br />
<br />
<b>Ubuntu 10.04 remix</b><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhb7uMtxACZwJP-mce-waaCqDkWyF1f9e0e1R_IWVbpkWZb0QSTljzECFSDLN2jYuzo7wl0M24OQC9L7ghpH9sT2f4-QWqx1oiFwBd4TSGfoc2EgSN6iifHCZ93pdNylBayxRX3ckhP6LQ/s1600/schermata2-remastersys.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="197" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhb7uMtxACZwJP-mce-waaCqDkWyF1f9e0e1R_IWVbpkWZb0QSTljzECFSDLN2jYuzo7wl0M24OQC9L7ghpH9sT2f4-QWqx1oiFwBd4TSGfoc2EgSN6iifHCZ93pdNylBayxRX3ckhP6LQ/s1600/schermata2-remastersys.jpg" width="320" /></a></div>
<br />
All'avvio come anche kubuntu provato precedentemente, presenta una schermata di boot che consente di scegliere che modalità avviare.<br />
<br />
Ho tentato la modalità "live" ... Aimè niente (schermata nera)<br />
Secondo tentativo ... Textonly mmm in realtà la modalità consiste nel launch di alcuni script (da GUI)<br />
Qualcosa è andato soprattutto nel "prova a correggere errori" anche se ammetto la mia ignoranza leggendo i log non ho realmente compreso l'operato degli script.<br />
Ok è ora di riprovare ...<br />
Scelgo la modalità live ... Ancora niente ... Sigh Sigh :(<br />
<br />
E' ora di affidarci a xfce e quindi avviare la modalità xforcevesa che avvia il tutto co GUI grafica ma senza esagerare... insomma in safe mode....<br />
Oooollllleeeeeeee!!!<br />
<br />
È andata finalmente !!!!<br />
Ok un OS siamo riusciti a farlo partire, iniziamo un po' per volta a vedere cosa si può fare ...<br />
Inizio con un quanto scontato ma senza l'MBR letteralmente inutile :<br />
sudo update-grub<br />
Altri geroglifici :/<br />
<br />
Vado su synaptic e provo a mettere il grub più vecchio (altra cosa inutilissima ma ammetto non riflettevo molto :P ) non trova MBR quindi nada.<br />
<br />
Vada per la cosa più stupida e ovvia :D ... Nautilus (pure subito mi sono deciso) ....<br />
Hiiiiiii :OOOOO<br />
Niente MBR ok, ma anche niente kubuntu .... doppio :OOOOOO e chiaramente niente partizione NTFS ...<br />
Ok ri-calma e sangue freddo (insomma :D ) ...<br />
<br />
Apro Gparted Et voilà la situazione era la seguente :<br />
Partizione dati e partizione win (diciamo musicale) intatte<br />
per il resto :<br />
30 gb circa non allocato nel gruppo partizioni estese<br />
qualche MB non allocato tra le partizioni primarie (il buon vecchio e caro MBR)<br />
60 gb tra le primarie (quella su cui precedentemente c'era Kubuntu) come <b>SCONOSCIUTO</b>!!!<br />
co tanto di punto esclamativo.... !<br />
<br />
Quindi la vecchia intenzione di pulire una sola partizione, si trasforma in un totale reset della tabella delle partizioni... :/ riporto di seguito, anche se per le spiegazioni dettagliate vi rimando a chi le guide le sa fare :P ... pertanto consiglio queste tre guide presenti sul sito dell'Istitituto Majorana :<br />
<br />
<br />
<ul>
<li><a href="http://www.istitutomajorana.it/index.php?option=com_content&task=view&id=377&Itemid=214" target="_blank">Partizioni Disco Rigido come Partizionare</a></li>
<li><a href="http://www.istitutomajorana.it/index.php?option=com_content&task=view&id=1192&Itemid=214" target="_blank">Disinstallare Windows o Ubuntu o Linux</a></li>
<li><a href="http://www.istitutomajorana.it/index.php?option=com_content&task=view&id=1220&Itemid=69" target="_blank">MBR Disinstallare un Sistema Operativo</a></li>
<li><a href="http://www.istitutomajorana.it/index.php?option=com_content&task=view&id=380&Itemid=33" target="_blank">Ubuntu e Windows autonomi in dual-boot</a></li>
</ul>
<br />
I passi che ripropongo di seguito li ho fatti grazie a quello appreso dalle guide del professor Cantaro:<br />
<br />
<br />
Partizionare con Gparted l'hard disk come segue<br />
<br />
<ul>
<li>60 gb File system ext4 (per ubuntu)</li>
<li>85 gb File system NTFS (Per win 7 - OS per musica)</li>
<li>85 gb File system NTFS (per win 7 - OS per lavoro)</li>
<li>250 gb Partizione estesa DATI NTFS (cosicché possa essere letta tanto da windows che da linux)</li>
<li>10 gb di Linux-SWAP (ma solo nel mio caso che sono un'esagerato avendone già 8 mi tengo inutilmente largo... :P )</li>
</ul>
<div>
Chiaramente mi riferisco all'uso che ne faccio io (come descritto sopra), ognuno è libero di scegliere la dimensione che più preferisce anche se vi consiglio vivamente di leggere la guida sopra menzionata : "ubuntu e windows autonomi in dual-boot" che spiega le dimensioni minime che dovrebbero avere le partizioni.</div>
<div>
</div>
<div>
Una volta confermato ed aver atteso che Gparted faccia il suo dovere si procede all'installazione dei OS...</div>
<div>
ed anche se più semplice l'ordine in cui deve essere fatta è <b>fondamentale</b>!!!</div>
<div>
<br /></div>
<div>
Installare prima Windows 7 sulla prima partizione NTFS,</div>
<div>
al termine (ripeto nel caso voleste ripartire l'hd come me ad esempio) installare Windows 7 sulla seconda partizione NTFS</div>
<div>
<b>RIPETO : è essenziale che Ubuntu (o altro OS linux ) siano installati per ultimo.</b></div>
<div>
Questo perché Windows fa suo il menu di Boot pertanto, nel mio caso potrei far partire solo i due Windows 7 e non vedrei assolutamente Ubuntu.</div>
<div>
<br /></div>
<div>
Quindi, infine si può installare Ubuntu.</div>
<div>
Al termine, all'avvio del pc, ci si presenterà il mitico Grub (decisamente più bello del multiboot di Windows :P) che da questo momento in poi ci consentirà di avviare uno dei tre sistemi operativi installati, ubuntu in modalità recovery e il memory test per verificare difetti sulla RAM montata sul pc.... </div>
<div>
<br /></div>
<div>
Questo è quanto.</div>
<div>
Anche se questo post non contiene niente di fantascientifico, spero che chi come il sottoscritto, si ritrovi ad affrontare lo stesso problema possa trovare questo post, grazie ai vari search engine, e quindi la risposta che cercava ^^.</div>
<div>
<br /></div>
<div>
Ciao a tutti</div>
<div>
Aldo</div>
Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com2tag:blogger.com,1999:blog-6840878720181519458.post-52695868047683404862012-04-24T00:47:00.001-07:002012-04-24T00:54:49.342-07:00A Linus il Millennium Technology Prize<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZ-D1ctj1wf9AcHWV9UW0tC-L9FzQt2QLZjOjv_jE2kIAwfwQSJ_3jif3W410XprpTF5irP6VAolD-qtgsxl96xe9I21z1mzcGgKYfDc3f6Rp17DA1uof6zTd13J-Z_qW4oI4Y3iaDFuc/s1600/linux.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZ-D1ctj1wf9AcHWV9UW0tC-L9FzQt2QLZjOjv_jE2kIAwfwQSJ_3jif3W410XprpTF5irP6VAolD-qtgsxl96xe9I21z1mzcGgKYfDc3f6Rp17DA1uof6zTd13J-Z_qW4oI4Y3iaDFuc/s200/linux.jpg" width="132" /></a></div>
<br />
Non potevo non commentare questa grande notizia...<br />
Grande perché si è di fronte all'ennesima prova per cui la direzione che la tecnologia dovrebbe prendere è proprio quella prospettata dai vincitori del Millennium Technology Prize...<br />
E quest'anno il premio va proprio a Linus Torvalds per il suo contributo (non indifferente) al mondo Open Source.<br />
Ma vediamo che cos'è il Millennium Technology Prize (da Wikipedia) :<br />
<blockquote class="tr_bq">
Il Premio Millenium Technology è un premio per la tecnologia che viene riservato a quelle conquiste tecnologiche che migliorano in maniera diretta la qualità della vita delle persone, basandosi sui valori umani e incoraggiando il progresso economico sostenibile.</blockquote>
E' nato nel 2004 e viene conferito ogni 2 anni, ad oggi viene considerato come il "Nobel" della tecnologia il primo vincitore... nemmeno a dirlo è Tim Berners-Lee.<br />
<br />
C'è da dire, riproponendo la definizione tratta da Wikipedia che il premio va a chi porta il suo contributo in modo considerevole favorendo lo sviluppo tecnologico sì in campo informatico, ma non solo, vediamo infatti tra i premiati anche ricercatori padri di innovative tecnologie nel campo della medicina, della scienza ecc..<br />
E quindi veder quest'anno Linus tra i vincitori, non può che far piacere e... magari sperare che la gente non veda chi è appassionato di Linux come uno che sta tutto il tempo a installare e disinstallare applicazioni...<br />
<br />
Fonte :<br />
<a href="http://www.technologyacademy.fi/millennium-technology-prize/laureates-2012/">http://www.technologyacademy.fi/millennium-technology-prize/laureates-2012/</a>Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-829787072995166282011-12-01T01:32:00.001-08:002011-12-01T01:52:44.101-08:00Trucco per Nuova Google BarAlcuni sapranno che a breve la barra di navigazione di Google<br />
verrà rimpiazziata con una nuova più smart...<br />
<br />
Ebbene stamattina twittando qua e la scopro che grazie ad un'estensione,<br />
che permette di editare i cookie è possibile far sì che possa essere visualizzata in anteprima...<br />
<br />
Premetto che la notizia originale l'ho vista su mashable... <a href="http://mashable.com/2011/12/01/secret-hack-google-bar/" target="_blank">Secret Hack Reveals New Google Bar [PICS]</a><br />
e premetto ancora che occorre Google chrome come browser con apposita estensione...<br />
<br />
L'estensione che permette ciò è<br />
<a href="https://chrome.google.com/webstore/detail/fngmhnnpilhplaeedifhccceomclgfbg" target="_blank">Edit this cookie</a><br />
<br />
e i passaggi da compiere sono estremamente semplici ...<br />
<br />
andare su www.google.com (non .it)<br />
<br />
cliccare con il destro sulla pagina e cliccare su modifica cookie<br />
sulla scheda <b>pref </b>nel campo valore sostituire la stringa con questa :<br />
<br />
<span style="color: #474747; font-family: Arial, Helvetica, sans-serif; font-size: 13px; line-height: 21px;">ID=03fd476a699d6487:U=88e8716486ff1e5d:FF=0:LD=en:CR=2:TM=1322688084:LM=1322688085:S=McEsyvcXKMiVfGds</span><br />
Salvare e riacaricare l'home di google et voilà<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXlo61xUtnz3a3KQ7Xu4-fziy3Owo6oltRh0daImaT2gnn97Zj4OcxLoMHUCOWIrOldEQg_vlWIyy7mgUpv68HJjinnREnwCSOEe9ktdXVu2FiFwH7rkJF3Rt7LtHQ5I9dAmu9UEdZvtM/s1600/googleBar+new.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="134" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXlo61xUtnz3a3KQ7Xu4-fziy3Owo6oltRh0daImaT2gnn97Zj4OcxLoMHUCOWIrOldEQg_vlWIyy7mgUpv68HJjinnREnwCSOEe9ktdXVu2FiFwH7rkJF3Rt7LtHQ5I9dAmu9UEdZvtM/s320/googleBar+new.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Bye bye</div>Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-70273279342551529172011-11-16T04:38:00.001-08:002011-11-16T04:42:24.421-08:00Google Music : Uff!! Soliti esclusi!Niente da fa!<br />
Oggi etichettata come uscita del fatidico ed ennesimo servizio Google Music,<br />
ma a quanto sembra noi "sfigati" italiani siamo come al solito esclusi... o comunque,<br />
anche in questo caso bisogna avere l'invito del caso...<br />
e reinizia la sofferenza a cui Google, oramai ricorre ogni volta per far salire l'acquolina ai suoi seguaci :D :D<br />
e aspettamo!!! :)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJN0KlBAfWxxuiHi2olzWQcKfEVOQTC1GXn7BORUbD2ZAJlV4R39wT9_hLB5lN2TrJm5P2__iMiQH75LtucNPhOnzfkUoJibMtuQqHGeFwMYra2lFNuI4NOJhi-kb0G6qNqiToj7yj70s/s1600/notInvited.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="85" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJN0KlBAfWxxuiHi2olzWQcKfEVOQTC1GXn7BORUbD2ZAJlV4R39wT9_hLB5lN2TrJm5P2__iMiQH75LtucNPhOnzfkUoJibMtuQqHGeFwMYra2lFNuI4NOJhi-kb0G6qNqiToj7yj70s/s400/notInvited.JPG" width="400" /></a></div>Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com2tag:blogger.com,1999:blog-6840878720181519458.post-28843725954398514392011-07-08T02:55:00.000-07:002011-07-08T02:55:02.675-07:00G+ ... Qualcuno m'ha sentito :D<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjvIxfmLc4q2DVgAbYUb6iCTTm9Jpc-UHkS7eHe9Y8zwWxAunMuK_FbA_nPO5LCyiazeNkzsFsSsHISyBoHOMVvsCht07BcEYUIj2gTNCqK1NJCTYgg-oSWjt5ZumpH8gmmqzH0hFdEhwI/s1600/gplusFbpen.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjvIxfmLc4q2DVgAbYUb6iCTTm9Jpc-UHkS7eHe9Y8zwWxAunMuK_FbA_nPO5LCyiazeNkzsFsSsHISyBoHOMVvsCht07BcEYUIj2gTNCqK1NJCTYgg-oSWjt5ZumpH8gmmqzH0hFdEhwI/s1600/gplusFbpen.png" /></a></div>
<br />
Ciao a tutti!<br />
Nemmeno a farlo apposta.. ieri sera torno a casa...<br />
provo a ri-cliccare sull'invito arrivato da <a href="http://www.chromeos.eu/" target="_blank">http://www.chromeos.eu/</a> (che ringrazio :) ) e...<br />
:OOOOO Riesco finalmente ad entrare!!!<br />
Quindi da ieri sera anch'io posso testare Google+. :)))<br />
<br />
E subito mi addentro dentro questo nuovo mondo .<br />
<br />
Come prima cosa, mi viene chiesto di verificare l'esattezza di nome e cognome e se voglio dare qualche info in più...<br />
<br />
Ancora prima di esplorare, mi viene chiesto se unificare picasa con G+..<br />
Quindi è <b>essenziale, se già si usa picasa, impostare come privati gli album che non si vuole rendere pubblici (ma questo già lo si dovrebbe aver fatto, se si usa il servizio).</b><br />
Scopro esplorando le cerchie di essere già stato aggiunto da qualcuno, che però non avendo scritto post non mi ha inviato notifiche via e-mail..<br />
<br />
Infatti bisogna subito capire cosa significa <b>invitare</b> .<br />
In realtà non esiste un tasto invito o cosa, ma basta condividere con qualcuno un post.<br />
Faccio una premessa sulle cosidette Cerchie...<br />
<br />
Fatta eccezione dei contatti già presenti su G+, vorrei puntualizzare su chi e come aggiungere nuovi contatti sulle cerchie...<br />
Nell'apposita sezione, vengono mostrate Tre schede all'inizio :<br />
<b>Persone nelle tue cerchie</b><br />
<b>Persone che ti hanno aggiunto</b><br />
<b>Trova e invita</b><br />
<br />
Nella prima scheda ci sono i contatti già inseriti nelle cerchie,<br />
anche quelli che ancora non sono entrati in G+... a tal proposito consiglio di creare una Cerchia intermedia...<br />
io ne ho fatta una intitolata <b>In attesa, </b> questo per far si che non vengano inviate notifiche in continuazione alle persone che ancora non riescono ad entrare.<br />
All'interno, nel mio caso sono presenti ad esempio, amici, colleghi che tolgo e dispongo nell'apposite cerchie, man mano che riescono ad entrare :)<br />
<br />
Nella seconda scheda, sono visibili, le persone che ti hanno aggiunto nelle proprie cerchie ..<br />
<br />
Infine nella terza le persone che possono essere invitate...<br />
E qui bisogna fare un bel discorso... chi si può invitare?<br />
Allora premetto che ho lasciato perdere i soliti pulsanti "trova gli amici su yahoo o hotmail", visto che su qualsiasi social network ho sempre preferito inserire le persone senza affidarmi a servizi automatici, che magari senza volere mandano inviti di massa ... magari anche a persone che hai in rubrica, ma con cui non vorresti aver più niente a che fare :P...<br />
<br />
Mi trovo tra parentesi vicino alla scheda il numero 483 ... !?!<br />
Chi sono allora ...?<br />
<br />
chiaramente i Contatti di Gmail<br />
poi ci sono persone con cui si è avuto uno scambio di e-mail (su gmail chiaramente),<br />
le persone che potresti conoscere (secondo il solito giochetto sfruttato dai Social Network... amico dell'amico dell'amico :D ),<br />
infine ci sono le persone che si seguono o che ti seguono su Google Reader/Buzz<br />
tutti suddivisi tra coloro che sono o no presenti su G+!<br />
<br />
Chiaramente da quello appena detto, capirete che una delle differenze sostanziali rispetto agli altri Social Network è che qui viene utilizzato piuttosto un concetto di Following come su Twitter che un concetto di amicizia come su Facebook, infatti si potrebbero vedere le Cerchie come le liste di Twitter con qualche feature in più... Quindi non si dovrà attendere una conferma dell'amicizia da una determinata persona.<br />
Questo aspetto a mio giudizio potrebbe esser un pò incomprensibile ai facebookkiani (:D :P)... ma<br />
un pò più comprensibile ai Twittettari ... che già sanno che bisogna bloccare una persona da cui non si vuole essere seguiti.<br />
<br />
Vabbè senza che dilungo troppo su come o no usare G+, se non per far in modo di aumentare la community (:P)...<br />
<br />
Volevo piuttosto soffermarmi su uno dei punti precisati nel precedente post...<br />
perché l'impressione iniziale è che il lavoro fatto sulla gestione della Privacy è davvero notevole ed efficace.<br />
Prima di tutto in termini di praticità,<br />
quando si scrive un post, con lo stesso sistema dei tag utilizzato con Google Reader e Blogger, per esempio,<br />
si può condividere un post con una o più cerchia o una o più persone specifiche senza perdersi in menù a discesa e pop-up come avviene su FB.<br />
Allo stesso modo accade per la sezione foto, dove si può scegliere cosa far vedere o no e con quale cerchia o no...<br />
Ma la cosa che considero di un'utilità estrema, è quella presente sul profilo, e che in fatto di privacy può davvero stimolare le persone a entrare e rimanere su G+...<br />
Sto parlando dell'anteprima del profilo... ovvero si può verificare come il tuo profilo, le tue foto e i tuoi post vengono visti dal resto del mondo, da una cerchia o da una persona specifica, cosicché puoi accertarti quale info devi o no "nascondere".<br />
<br />
Concludo col dire che, come servizio merita, vale la pena provare e .. da Googloiano sperare che si sviluppi,<br />
leggendo post di utenti nelle mie cerchie, ma non ho potuto verificare se si trattino di fake o no, si stanno predisponendo anche per applicazioni in <strike>flash</strike>(NOOO) HTML5 :) ... e nemmeno a farlo apposta.. ho condiviso stamattina la notiza su <a href="http://www.tuxjournal.net/?p=21265" target="_blank">tux journal</a> relativa ad un nuovo strumento (<span class="Apple-style-span" style="background-color: white; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;">Swiffy)</span><span class="Apple-style-span" style="background-color: white; font-family: arial, sans-serif; font-size: 13px; font-weight: bold; line-height: 18px;"> </span>presente nei labs di Google in grado di convertire i .swf di flash in Html5 ... chissà se..... :O :D<br />
<span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: x-small;"><span class="Apple-style-span" style="line-height: 18px;"><b><br /></b></span></span><br />
<br />Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-17863653554134268282011-07-07T07:00:00.000-07:002011-07-08T00:03:59.709-07:00G+ vs FB - Come se dice? la guera è guera<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNa3ke3Ve9-bPjWCfkL3ARXI2Y5PvDtqa0iOD2CMimVqu-9qMcglN4MU2nmprLf0DX21HVlMztkUYpeZvFtQSQ16F_aicbg5opbdEbiv6jcmfl3Z1881RlP5ztaPJeYOHQ0McsNdXzS1E/s1600/gplusFb.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNa3ke3Ve9-bPjWCfkL3ARXI2Y5PvDtqa0iOD2CMimVqu-9qMcglN4MU2nmprLf0DX21HVlMztkUYpeZvFtQSQ16F_aicbg5opbdEbiv6jcmfl3Z1881RlP5ztaPJeYOHQ0McsNdXzS1E/s1600/gplusFb.png" /></a></div>
E' iniziata. Ormai non possiamo più nascondere, che si tratti di vera e propria guerra a colpi di utenze conquistate e/o tolte.<br />
Da una parte il gigante Google dall'altra Facebook,<br />
uno con l'intera comunità open source dalla sua parte oltre alle conquiste fatte in questi anni, l'altro alleato con la Microsoft (e conquiste) .<br />
<br />
Di questi giorni la notizia che Mark Zuckerberg, è la persona più seguita su Google+ e a questo punto ci può essere anche qualcuno che dica "un caso"...<br />
Ma il fatto è che chi conosce Google (come azienda, teams ecc.) si può immaginare che sia stato per sfida uno dei motivi per cui proprio a Zuckerberg è stato inviato uno dei primi inviti.<br />
<br />
E c'è da dire che Facebook Man ha subito colto la palla al balzo, sfruttando la recente acquisizione della Microsoft di Skype, nonché l'alleanza che c'è tra le due aziende.<br />
FUOCO ALLE POLVERI (:D)<br />
Facebook ha tirato fuori dal cappello magico la video-chat integrando skype (articolo : <a href="http://www.tomshw.it/cont/news/facebook-arrivano-videochiamate-e-chat-di-gruppo/32403/1.html" target="_blank">Tom's hardware</a> ) nella propria chat.<br />
<br />
Da parte mia purtroppo, non posso approfondire all'estremo l'analisi, non essendo ancora tra i fortunati ad aver ricevuto l'invito per Google+, quindi mi posso basare sui video e sulle notizie trapelate in rete.<br />
<br />
Allora tutti SULL'ATTENTI.<br />
<br />
Faccio un sunto, sui tre principali punti di forza e difetti che hanno i due servizi , secondo una mia visione, chiaramente.<br />
<br />
<b>Facebook</b><br />
Pro :<br />
<ul>
<li>Vastissima comunità</li>
<li>Numerosi Giochi e applicazioni</li>
<li>Reperibilità di amici e parenti</li>
</ul>
<br />
Contro :
<br />
<ul>
<li>Utenze multiple</li>
<li>Veridicità utente</li>
<li>Privacy</li>
</ul>
<br />
<b>Google+ </b>
<br />
Pro :<br />
<br />
<ul>
<li>L'innovazione</li>
<li>La popolarità del motore di ricerca</li>
<li>L'integrazione.</li>
</ul>
<br />
Contro:<br />
<ul>
<li>La giovinezza.</li>
<li>La privacy.</li>
<li>La cultura delle persone.</li>
</ul>
<br />
<br />
<div>
Tra gli aspetti a favore di Facebook abbiamo sicuramente al primo posto quello di poter contare su qualcosa come 750 milioni di utenti, che a mio giudizio è il primo vero ostacolo che G+ incontrerà.</div>
<div>
Riuscire a muovere una tale massa è quasi impossibile, se non motivando le utenze in modo più che convincente.</div>
<div>
Col tempo Facebook ha attirato su di se l'attenzione di aziende più o meno grandi vedi la ormai popolare Zynga, che hanno sviluppato giochi e applicazioni che di fatto alcuni utenti non possono più fare a meno, e anche in alcuni casi, è anche l'unico motivo per cui alcune persone si iscrivono. </div>
<div>
G+ deve poter attrarre la sua comunità sfruttando magari l'HTML 5 come tecnologia per realizzare applicazioni/giochi e non basandosi solamente sulle applicazioni web già a sua disposizione (gdocs,picasa ecc)</div>
<div>
Su facebook, come anche altri social network (vedi Linked-In) inserendo vita morte e miracoli come informazioni sul proprio profilo ci si può ritrovare con parenti e amici che non si vede da tempo.</div>
<div>
G+ questo aspetto potrebbe agilmente sorvolarlo, a patto che garantisca una reale privacy, delle informazioni che si vanno ad inserire.</div>
<div>
<br /></div>
<div>
Gli aspetti che remano contro Facebook sono relativi principalmente alle utenze, di cui vanno piuttosto orgogliosi per il grande numero, c'è da considerare però che il numero, anche se non di tantissimo (credo), debba essere abbassato.</div>
<div>
In parte la causa è dovuta al fatto che i giochini di cui sopra, incitano le persone a creare più account per poter avanzare nel gioco. </div>
<div>
In più c'è da dire che chiunque può aprire account a nome di altri, aspetto, che oltre a contribuire al precedente, comporta anche un problema in termini di identità rubate (si veda ad esempio i casi di personaggi politici, dello spettacolo ecc), che possono di fatto comportare problemi a persone, che magari non si iscriveranno mai.</div>
<div>
Un altro aspetto, ormai sempre più diffuso nel web, è il problema della privacy.</div>
<div>
Nel caso di Facebook, oltre al fatto di visualizzare o no i propri dati personali, in termini di età, residenza ecc.. Riguarda anche ciò che si scrive nella propria bacheca o quella di amici ecc..</div>
<div>
In pratica è possibile (e non tanto difficilmente) sbagliarsi e scrivere un qualcosa con la convizione che una persona non lo veda ed invece.... Tana! ... </div>
<br />
<br />
Google dal canto suo può contare su aspetti non di poco conto per poter basare il proprio servizio.<br />
Logicamente l'aspetto principale, è dovuto alla popolarità del proprio motore di ricerca, che è di fatto diventato un'istituzione nel web.<br />
Ed è chiaro che l'attenzione che riesce ad attirare Google ogni volta che lancia un nuovo servizio è notevole... ne danno prova i numerosi tentativi di spam che girano in rete con il pretesto dell'invito e a sua volta degli utenti che elemosinano inviti senza preoccuparsi di scrivere in chiaro il proprio indirizzo e-mail su un messaggio pubblico su blog, twitter ecc.. come già accaduto, al lancio di Gmail e di Wave dopo.<br />
Sempre negli hanni Big G ha realizzato diversi servizi che col tempo sono utilizzati da molte persone che grazie alla loro integrazione rende possibile gestire senza preoccuparsi di 14000 account da ricordare, posta, foto documenti, sito web, blog ecc...<br />
Inoltre mi pare giusto menzionare l'innovazione su cui Google punta e lo si vede vuoi dall'investimento su HTML 5 per il Web, realizzare un browser ed un OS, può incentivare parecchi utenti alla migrazione<br />
<br />
Come tutti i nuovi servizi però G+ deve far i conti con la sua prematurità, ok è un servizio di Big G, ma la materia di Social Network è a parte, e molti ancora non sanno cosa sia, se non si è abitutati a leggere blog, oltre al fatto che il flop di Wave potrebbe disincentivare nuovi utenti.<br />
Relativamente alla privacy c'è da dire che da sempre google ha a che fare con questo problema, tenendo presente che di fatto quello a cui si assiste è l'ennesimo ampliamento dei suoi servizi... le info di ogni utente sono quelle già visibili su google accounts e pertanto, purché impostato come pubblico sono accessibili dall'intero pianeta (non solo dalla comunità di G+), questo per dire che se una persona è stata fin'ora restìa nel creare un profilo pubblico lo continuerà ad essere anche nell'accedere alla comunità di G+.<br />
Infine c'è da fare i conti con la cultura delle persone. Su facebook sono presenti informatici, studenti, impiegati, pensionati e chi più ne ha più ne metta... perché di fatto fb col tempo è diventato sinonimo di "internet" per alcune persone o meglio per le persone che hanno conosciuto internet per facebook (:/) al punto da impostare la pagina iniziale di fb, dal vedere come "un uscire di casa" al momento in cui si clicca su un link esterno ecc.. E quindi di fatto non possono considerarsi come conoscitori di internet, ma continuano a usare internet solo per facebook.<br />
<br />
Le prospettive di vita del nuovissimo G+ sono tutte affidate al "reclutamento" (:D ;) ) delle nuove utenze,<br />
onestamente sono un po' scettico sul fatto che molti abbandonino Facebook, ma forse lo faranno nel lungo termine.<br />
Chi mi conosce sa che sono un fan di Big G e anche se servizi come Wave sono stati flop li ho apprezzati per quello che erano, questo per dire che personalmente gradirò G+ come lo è stato per Buzz, che a molti non piace ma a me sì, ma spero vivamente che in questo caso non venga fatto un taglio totale se non si assiste a questa fatidica migrazione di massa in cui si spera.<br />
<br />
Per concludere ripongo la fiducia sul fatto che siano molti a registrarsi, ma personalmente me ne frego se lascino o no Facebook ..<br />
bella !!!<br />
<br />
<br />
<br />
<br />Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-89199288859877744372011-05-09T05:52:00.000-07:002011-05-09T05:52:06.112-07:00Rasberry PI : Un PC grande come una penna USB a 25$ ... grazie a LinuxOps... ce risiamo... ora sicuramente dovremo attenderci dei soliti commenti alla "microsoft" :<br />
e non va bene per questo non va per quest'altro ecc..<br />
<br />
Ma di fatto, per l'ennesima volta si azzardano sperimentazioni estreme come questa...<br />
grazie a Linux...<br />
La <b>Rasberry Foundation</b>, associazione inglese che promuove lo studio dei computer a livello scolastico è riuscita a realizzare questo fantastico oggettino ...<br />
<br />
Un mini PC basato su un processore ARM11 da 700MHz con 128MB di memoria SDRAM, una USB 2.0, una HDMI e la possibilità di decodificare video alla risoluzione Full HD di 1080p collegabile ad una TV o ad un touchscreen che ...<br />
che utilizza un OS basato su Linux ...<br />
ma guarda un pò XD
...
<br />
<br />
<a href="http://goo.gl/fxvjz" target="_blank">Fonte HWjournal.net</a>Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-72141078881461002892011-04-29T07:48:00.000-07:002011-04-29T07:48:26.034-07:00Script ListDocSaver.py (facciamo un pò di ordine ... o quasi)<br />
Ciao a tutti, sì sono stato maleducato nel post precedente a<br />
non scusarmi...<br />
Quindi chiedo scusa a tutti i lettori, per l'assenza prolungata dei mesi scorsi,<br />
chiaramente causata da un periodo lavorativo molto impegnativo che di fatto mi ha portato via tempo e forze<br />
per tener aggiornato il blog... bla bla bla..<br />
<br />
Vorrei per farmi perdonare, un piccolo script che ho fatto per far pratica con Python che potrebbe interessare a qualcuno :) ..<br />
<br />
Piccola premessa .... occorre una versione precedente alla 3.0...<br />
Negli ultimi anni io, ma come tanti altri ho caricato il pc (vecchio e nuovo), hard disk, pennette... cd e dvd di software, musica, video, documenti ecc...<br />
<br />
Il problema è che a distanza di tempo ci si ritrova a porsi una domanda tipo :<br />
<i>cavolo mo' su quale Dvd ho salvato la canzone "Whole Lotta Love" dei Led Zeppelin?</i><br />
<br />
<i></i>GRRRR !!! Eh... appunto :<br />
<br />
Trovare una canzone che non si ascolta da tempo, un video, un programma ecc...<br />
su dvd/cd/HD ecc .. può diventare stressante...<br />
Un pò di meno, se si elenchi per esempio, il contenuto di un Dvd masterizzato in precedenza su un file di testo.<br />
<br />
Un semplicissimo file di testo dove, il più semplice Ctrl+F può diventare prezioso.<br />
<br />
Per permettere allo script di accettare argomenti, si utilizza il modulo <b>sys</b>, opportunamente passato al metodo main (alla fine dello script):<br />
<br />
<iframe src="http://pastebin.com/embed_iframe.php?i=PZQEWuPr" style="border: none; height: 80px; width: 100%;"></iframe><br />
<br />
Per rendere possibile la lettura degli argomenti si deve importare il modulo getopt, con cui è appunto possibile stabilire il comportamento dello script in base al/ai parametri passati.<br />
<br />
In questo script mi limito a gestire un solo parametro (<b>-p</b> e la sua versione estesa <b>--path</b>) e in alternativa i parametri <b>-h</b> (help) e <b>-d</b> (debug).<br />
<br />
Senza dilungarmi troppo, provo a prendere i parametri, se qualcosa va storto mostro <b>__doc__</b> (l'help), altrimenti passo al metodo <b>popolaFileLog</b> il valore del di <b>-p</b><br />
il risultato è il seguente :<br />
<iframe src="http://pastebin.com/embed_iframe.php?i=K2nfvvjf" style="border: none; height: 320px; width: 100%;"></iframe>
<br />
<br />
Vengo infine al metodo popolaFileLog a cui appunto viene passato il percorso della directory (o dell'unità).<br />
Piccola premessuccia, all'inizio dello script imposto la directory dove voglio salvare i file di testo creati, qui
chiaramente ognuno dovrà impostare la directory scelta.
ad esempio :
<br />
defaultPath=<span class="Apple-style-span" style="color: #38761d;">'/home/nomeutente/Documenti/DVD-CD/'</span><br />
<br />
Come lavora il metodo popolaFileLog..<br />
Crea innanzitutto una lista in base al percorso passato...
splittando il percorso con il carattere <span class="Apple-style-span" style="color: #6aa84f;">'/'</span><br />
chiaramente a me interessa solamente il nome della directory e/o il nome dell'unità
che per chi non lo sapesse su ubuntu solitamente viene mappata
sotto <b>/media/nomeUnita</b>.<br />
<br />
Poniamo ad esempio che ho passato allo script il percorso
<b>/media/mp3110428001</b> (dove mp3110428001 è l'etichetta assegnata al dvd/cd in fase di masterizzazione),<br />
la lista ottenuta con il il metodo <b>split</b>
sarà in questo caso<br />
<span class="Apple-style-span" style="color: blue;"> ['', 'media', 'mp3110428001']</span><br />
come detto mi interessa in questo caso <b>mp3110428001</b>,
ma non sapendo (almeno quando si tratta di path di subdirectory)
quanti elementi possa avere la lista ...<br />
la inverto con il metoro <b>reverse()</b>
che mi permetterà di avere il valore che mi interessa
con <b>lista[0]</b> :<br />
<br />
<br />
quindi compongo il path completo del file che andrò a creare che sarà così composto :<br />
<iframe src="http://pastebin.com/embed_iframe.php?i=xpG4mteR" style="border: none; height: 65px; width: 100%;"></iframe>
<br />
<br />
io ho usato la dicitura 'Contenuto'... ma ci si può mettere ciò che si vuole nel nostro caso il valore di <b>pathFile</b> sarà :<br />
<br />
/home/nomeutente/Documenti/DVD-CD/Contenutomp3110428001.txt<br />
<br />
a questo punto bisogna innanzitutto aprire il file in scrittura con<br />
<iframe src="http://pastebin.com/embed_iframe.php?i=D8tPMyzS" style="border: none; height: 60px; width: 100%;"></iframe>
<br />
<span class="Apple-style-span" style="color: darkslateblue; font-family: monospace; font-size: 13px; line-height: 15px;">'w'</span> sta per scrittura appunto :P<br />
<br />
non ci rimane altro che sfogliare tutti i files, directory e subdirectory e scriverli nel file di testo ...<br />
per memorizzare path, directory e files si utilizza il metodo <b>walk</b> del modulo <b>os</b><br />
<b></b>e scorrere il tutto :<br />
<br />
(nel mio caso ho lasciato anche subdirs per un eventuale uso )
chiaramente andando a capo ad ogni occorrenza trovata (con <b>\n</b>) ... chiaramente per ora non l'abbiamo nemmeno "toccato" il file... :)<br />
per farlo bisogna "chiuderlo" con :<br />
<iframe src="http://pastebin.com/embed_iframe.php?i=U80auBcW" style="border: none; height: 75px; width: 100%;"></iframe>
il metodo al completo sarà <iframe src="http://pastebin.com/embed_iframe.php?i=DMNjYnDq" style="border: none; height: 330px; width: 100%;"></iframe>
Richiamando quindi da riga di comando così :
<iframe src="http://pastebin.com/embed_iframe.php?i=f2bNTnDf" style="border: none; height: 75px; width: 100%;"></iframe>
mi ritroverò nel file<br />
/home/nomeutente/Documenti/DVD-CD/Contenutomp3110428001.txt
dati tipo :
<br />
...<br />
...<br />
/media/MP3110428001/Led Zeppelin II/01 Whole Lotta Love.mp3<br />
/media/MP3110428001/Led Zeppelin II/02 What is and What Should Never Be.mp3<br />
/media/MP3110428001/Led Zeppelin II/03 The Lemon Song.mp3<br />
/media/MP3110428001/Led Zeppelin II/04 Thank You.mp3<br />
/media/MP3110428001/Led Zeppelin II/05 Heartbreaker.mp3<br />
/media/MP3110428001/Led Zeppelin II/06 Living Loving Mad.mp3<br />
/media/MP3110428001/Led Zeppelin II/07 Ramble On.mp3<br />
/media/MP3110428001/Led Zeppelin II/08 Moby Dick.mp3<br />
/media/MP3110428001/Led Zeppelin II/09 Bring It On Home.mp3<br />
...<br />
...<br />
Cosicché la prossima volta potrò trovare, ad esempio la canzone che mi interessa più rapidamente...:)<br />
per finire riporto il sorgente completo dello script ListDocSaver.py
<iframe src="http://pastebin.com/embed_iframe.php?i=XdMPyPbr" style="border: none; height: 1300px; width: 100%;"></iframe><br />
Chiaramente, non nascondo che vorrei utilizzare questo script come base di partenza, magari per una classe di un futuro applicativo... magari pure con un qualche sorta di GUI grafica.. chissà! :D :D
chiaramente attendo consigli e curiosità...
che ho tanto da imparare :PAldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-55615476073061332832011-04-28T02:50:00.000-07:002011-04-29T00:34:07.599-07:00Apt-Fast e apt-get vola!Far volare il download dei pacchetti tramite apt è possibile,<br />
tramite questo strumentino molto interessante saremo in gradi di effettuare il download addirittura 26 volte più velocemente (secondo le dichiarazioni dell'autore)... come facciamo ?<br />
Detto fatto :<br />
da terminale ...<br />
<br />
<iframe src="http://pastebin.com/embed_iframe.php?i=7W6qY2QX" style="border: none; height: 95px; width: 100%;"></iframe><br />
<br />
Et voilà ! :))Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com2tag:blogger.com,1999:blog-6840878720181519458.post-54288195805518011262011-01-17T03:01:00.000-08:002011-01-17T03:01:33.098-08:00SwiftBoot un OS Embedded che parte in 1 secondo!!!Mamma mia ragazzi !!<br />
Sai che figura ce farebbero gli altri se tutti gli OS linux-like seguissero l'esempio di questo :<br />
<br />
<br />
<object height="378" width="418"><param name="movie" value="http://www.youtube.com/v/ULa4TPy7z0c?fs=1&hl=it_IT">
</param>
<param name="allowFullScreen" value="true">
</param>
<param name="allowscriptaccess" value="always">
</param>
<embed src="http://www.youtube.com/v/ULa4TPy7z0c?fs=1&hl=it_IT" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="418" height="378"></embed></object><br />
<br />
Questo grazie ad un team di ingenieri di MPC Data...<br />
Giudicate voi!!Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com4tag:blogger.com,1999:blog-6840878720181519458.post-34393552892046833472011-01-07T05:51:00.000-08:002011-01-07T05:51:12.633-08:00Scimmie Impazzite su Youtube!?!<br />
<h1>
<span class="Apple-style-span" style="font-size: small; font-weight: normal;">Non è che sia un vero e proprio post, ma sto ridendo tuttora, e non potevo non rigirare sta curiosità..</span></h1>
<h1>
<span class="Apple-style-span" style="font-size: small; font-weight: normal;">Andate su Youtube, cliccate su un video qualsiasi e cambiate nell'URL il parametro <i>list</i> magari togliete o aggiungete caratteri ed il messaggio di errore sarà ( :D :D :D) : </span></h1>
<h1>
<i><span class="Apple-style-span" style="color: #999999;">500 Internal Server Error</span></i></h1>
<i><span class="Apple-style-span" style="color: #999999;">Spiacenti, si è verificato un errore.<br /><br />Abbiamo già provveduto a inviare in ricognizione una squadra di scimmie altamente addestrate per risolvere il problema</span>.</i><br />Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-15760539319918199202011-01-04T05:17:00.000-08:002011-01-04T05:36:03.874-08:00Tema per Chromium : Cloud on Colosseum<br />
<div class="separator" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em; text-align: center;">
<img border="0" height="137" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0tRBswGhZUM1Y-hrJ_7sAJUvF4UlFrHM_EZbsBAlbU6RV8XiAoMol3qQAJxkwZ7vjMtaN2GrOgEIaZgTEVBUbUUik75E4PIFMGzLRbZelAPV8zNcs-HtNGuQDUVpx-rZxGmXc_Jmx0TM/s200/screenShotDash.png" width="200" /></div>
<br />
<br />
Ehilà!!!!<br />
Lo so, lo ammetto, sono stato poco presente ultimamente, ma in parte per il carico di lavoro, e un pò, perché vi confido che sto preparando un tutori... no ! non ve lo dico :P ;) .<br />
<br />
Vabbè prima di tutto Buon Anno a tutti !<br />
<br />
Dopo aver verificato questi giorni, il successo dello sfondo che pubblicai qualche mese fa <a href="http://gli-artigli-della-lince.blogspot.com/2010/10/gimp-gmic-un-quadro-del-colosseo.html" target="_blank">http://gli-artigli-della-lince.blogspot.com/2010/10/gimp-gmic-un-quadro-del-colosseo.html</a>, su Wallpaperswide.com,<br />
mi è venuto in mente ... perché non fare un tema per Chromium ad hoc?..<br />
Ed eccolo quà! Tuuuttooo grigio (proprio come la giornata odierna.... dai n'artri 5-6 mesi ed è estate :OOO 'mazza quanti :( :D ), chiaramente, con toolbar, icone ecc.. a tema.<br />
<br />
Questa è la prima versione, ma conto, di farne una successiva, magari sfumando il background iniziale su un nero, per rendere più visibili le scritte, cmq per ora posto questo, chiaramente essendo un google developer ... e aggiungo avendo sborsato 5 euri ( :D) qualche mese fa ... senza uplodarlo a destra e manca... l'ho pubblicato direttamente nell'Extensions gallery di Chromium. <br />
Ecco il link : <a href="https://chrome.google.com/webstore/detail/hebkpdblddppohpkhcocnabklilkilcm?hl=en-US" target="_blank">Cloud on Colosseum</a><br />
<br />
ciao belliAldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-55141322561363708602010-12-20T03:58:00.000-08:002010-12-20T03:58:45.494-08:00Federica - Alla faccia dell'open sourceLeggere queste cose, soprattutto di lunedì mattina<br />
è veramente una mazzata ....<br />
<br />
Non è possibile che da istituzioni, come quella che può essere un'università, si limiti l'informazione, ma ancora di più in questo caso, la possibilità di imparare, agli studenti perché si realizzano sistemi non compatibili con Linux.<br />
<br />
L'artefice di questa genialata è l'Università di Napoli Federico II, che ha avuto la splendida idea di realizzare una piattaforma (appunto chiamata Federica) di e-learning dove poter rivedere i video dei corsi e testi informativi vari, con un solo "piccolo dettaglio",<br />
la piattaforma è solo per Windows e Mac OS X, alla faccia del diritto allo studio....!<br />
<br />
<a href="http://www.oneopensource.it/20/12/2010/federica-le-learning-delluniversita-di-napoli-non-ama-linux/" target="_blank">Fonte : Opensource.it</a>Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com4tag:blogger.com,1999:blog-6840878720181519458.post-14342206530758554492010-12-03T02:05:00.000-08:002010-12-03T02:05:23.008-08:00Wikileaks oscurato<br />
<div class="separator" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em; text-align: center;">
<img border="1" height="114" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlE5Ub2f9NaNxCOE1Sfq94tpyYJqxl-hcCnrie15JBwZLac0gIYSGAe5gSgWFGETy7ubF9vVu03O_LX8gkkMF_PUeV0VVLLDZt2G8vTKgZ5MDWf8j6V3epmKckjTRvyuAOkojzTuZiXOw/s320/wikileaks.JPG" width="320" /></div>
<br />
Alla fine in un modo o nell'altro, qualcuno doveva muoversi, a farlo è stato proprio EveryDNS.net noto provider di domini gratuiti, che ha oscurato il dominio di Wikileaks, colpevolizzando i continui attacchi DDOS sotto cui il domino era soggetto.<br />
Che secondo il provider mettevano a rischio la sicurezza degli altri domini, una delle clausole di contratto dei clienti del provider obbliga proprio a non interferire con gli altri domini (in termini di ostacolo del servizio).<br />
<br />
Ma in realtà l'oscuramento è teorico, visto che puntando all'<a href="http://213.251.145.96/" target="_blank">indirizzo IP</a> è possibile vedere il sito ... i<br />
Mah!<br />Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-87317126470614535712010-12-01T02:47:00.000-08:002010-12-02T00:45:54.648-08:00Nozioni di Python : modulo urllib<br />
Ciao a tutti,<br />
allora, non nascondo di essermi letteralmente innamorato del linguaggio Python.<br />
<br />
Certo per ora rimane una passione "personale" non avendo purtroppo, la mia società, clienti che lo richiedono.<br />
<br />
Volevo, un pò per me, un pò per chi invece vuole incominciare a masticare questo meraviglioso linguaggio di programmazione introdurre alcuni tips e concetti su di esso (limitatamente anche alla mia conoscenza per ora non completa).<br />
<br />
Parlare, di dizionari, tuple e liste, non mi pare il caso visto che, almeno per chi viene da altri linguaggi di programmazione, dovrebbe averne già le tasche belle piene (:P :D).<br />
<br />
Proprio in questi giorni, con il terremoto Wikileaks in atto, mi è venuto in mente : vediamo un pò su che server si trova il sito (non mi aspettavo di vedere e scovare i reali server protetti dal <a href="http://it.wikipedia.org/wiki/Tor_(software_di_anonimato)" target="_blank">TOR</a> ma solo per curiosità).<br />
<br />
Allora per questa ed altre info che vedremo a breve, su Python esiste un modulo denominato <b>urllib </b>che ti permette appunto di ottenerle.<br />
<br />
Apriamo, se ne siamo a disposizione l'idle di python (scaricabile su <a href="http://www.python.org/" target="_blank">http://www.python.org/</a> gratuitamente sia per linux che win), importiamo il modulo con<br />
<br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #b45f06;">import </span>urllib</span><br />
<br />
A questo punto dobbiamo riempire un oggetto (una semplice variabile) con tutti i dati di un determinato indirizzo, nel nostro caso (il sito di wikileaks)<br />
<br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">site = urllib.urlopen(<span class="Apple-style-span" style="color: #274e13;">'http://cablegate.wikileaks.org'</span>)</span><br />
<br />
Ok a questo punto, con l'oggetto <b>site</b> abbiamo la possibilità di ottenere alcune info, in questo post, parlo principalmente di come tirare fuori le info sul server e come tirar fuori il codice html (della pagina iniziale chiaramente).<br />
Memoriziamo le info o con la funzione <b>info()</b> o come faccio io con la proprietà <b>headers</b> :<br />
<br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">info = site.headers</span><br />
<br />
e stampiamo a video il risultato :<br />
(non credo che ci siano problemi di privacy, visto che tutto il mondo sta dando la caccia ai server di Wikileaks :P , anche se poi... in questo caso i risultati ottenuti qui non significano niente ^^)<br />
<br />
<br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #b45f06;">print </span>info</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br /></span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Server: Apache/2.2.16 (Debian)</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Last-Modified: Thu, 01 Jan 1970 00:00:00 GMT</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">ETag: "9812e-7092-0"</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Vary: Accept-Encoding</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Content-Type: text/html; charset=UTF-8</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Content-Length: 28818</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Date: Wed, 01 Dec 2010 10:21:03 GMT</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">X-Varnish: 835810462 835629066</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Age: 1046</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Via: 1.1 varnish</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Connection: close</span><br />
<div>
<br /></div>
<br />
Ma guarda un pò ... non dormono questi... chissà perché usano Apache su Debian ;) e non Win ... :)<br />
<br />
E così tanto per curiosita facciamoci tirar fuori (ma ne mostro solo in parte :P ) il codice html,<br />
leggiamo prima site, memorizzandolo in una variabile<br />
<br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">codiceHTML= site.read()</span><br />
<br />
e poi stampiamolo<br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="font-size: x-small;"><br /></span></span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #b45f06;">print</span> codiceHTML</span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br /></span><br />
<br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: blue;"><?xml version='1.0' encoding='utf-8' ?></span></span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: blue;"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"></span></span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: blue;"><html lang='en' xml:lang='en' xmlns='http://www.w3.org/1999/xhtml'></span></span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: blue;"><head></span></span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: blue;"><title>Cable Viewer</title></span></span><br />
<br />
.....<br />
<br />
Chiramente, è bene, aver l'abitudine, che dopo aver memorizzato in variabili quello che ci interessa, chiudere l'oggetto <b>site</b> con<br />
<br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">site.close()</span><br />
<br />
Sfruttando, moduli più avanti disponibili su internet a go go go ...,<br />
si potrebbero tirar fuori dalle pagine le liste di link, il path delle immagini presenti ecc...<br />
<br />
Spero nel gradimento del post come sempre<br />
ciao ciao<br />
<br />Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-12067905656089521022010-11-17T04:00:00.000-08:002010-11-17T04:00:48.632-08:00BLOBbox decoder Linux basedCiao a tutti,
un nuovo oggettino del desiderio fa capoccella (o la farà prossimamente) grazie alla solita <b>TELE System</b>.<br />
Si tratta di un nuovo decoder digitale terrestre con svariate funzionalità.<br />
Ok per l'ingresso USB, di cui comunque già altri DTT sono provvisti, ma in più ha
porte HDMI, Ethernet e eSata oltre a supportare il Wi-Fi!!!<br />
Permette di navigare in rete direttamente da TV, grazie al browser integrato e leggere la posta tramite un apposito client.<br />
Tutto questo grazie all'OS integrato basato su Kernel Linux sviluppato direttamente da TELE System.<br />
<br />
Il grande problema, almeno per noi che abituati ad associare la parola Linux alla parola risparmio è che questo gingillo costa la modica cifra di 199€!!<br />
<br />
Quindi per ora, almeno per me rimane dove sta ... ^^ :D :P
<br />
<br />
<br />
Fonte : <a href="http://www.pianetatech.it/hi-tech/elettronica/arriva-blobbox-il-decoder-digitale-terrestre-linux-based.html" target="_blank">Pianetatech</a>Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-85780748601743900352010-11-15T07:32:00.000-08:002010-11-15T07:32:42.127-08:00Creare un finto virus su WindowsCiao a tutti,<br />
la scorsa settimana ho letto questo piccolo, chiamiamolo tips, per la creazione di un finto virus su windows,<br />
che preciso, innanzitutto, non è farina del mio sacco, ma proviene da Eicar ( European Expert Group for IT-Security) che tra le sue iniziative c'è anche questa che permette di testare l'efficacia di un antivirus (link : <a href="http://goo.gl/jCLQX" target="_blank">The Anti-Virus or Anti-Malware test file</a> ).<br />
<br />
Certo, almeno a me, non esperto in sicurezza ecc... ha lasciato un pò perplesso che basti una semplice stringa, il notepad e salvare il file per far si che un antivirus sbrocchi (permettetemelo :P)...<br />
comunque chi è in possesso di win (o una VM con win) può aprire il Notepad ed incollarci questa stringa :<br />
<span class="Apple-style-span" style="font-size: 15px; line-height: 14px;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span><br />
<span class="Apple-style-span" style="line-height: 14px;"><b><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"><span class="Apple-style-span" style="font-size: small;">X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*</span></span></b></span><br />
<span class="Apple-style-span" style="font-size: 15px; line-height: 14px;"><b><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"><br /></span></b></span><br />
<span class="Apple-style-span" style="line-height: 14px;"><span class="Apple-style-span" style="line-height: normal;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">Salvare il file e se si ha installato un antivirus decente, apparirà l'alert di presenza virus .</span></span></span><br />
<span class="Apple-style-span" style="font-family: monospace; font-size: medium;"><span class="Apple-style-span" style="font-size: 15px; line-height: 14px;"><span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: medium; line-height: normal;"><br /></span></span></span><br />
<span class="Apple-style-span" style="font-family: monospace; font-size: medium;"><span class="Apple-style-span" style="font-size: 15px; line-height: 14px;"><span class="Apple-style-span" style="font-family: Arial; font-size: medium; line-height: normal;"> </span><span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: medium; line-height: normal;"> </span></span></span>Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-88603761776308085252010-11-11T03:26:00.000-08:002010-11-11T03:26:38.725-08:00Internet Super Veloce grazie a IBMLa produzione di nuovo chip da parte di IBM auspica buone speranze per rendere, nel prossimo futuro il web super veloce.<br />
<b>CU-32</b>, il processore basato sulla nuova tecnologia sviluppata da IBM promette di essere più veloce degli attuali del 15% con numeroni di non poco conto<br />
i 6.000.000.000.000 di sms del 2010 possono essere gestiti in soli 10 secondi!!<br />
sempre in 10 secondi si potrebbe scaricare un intero film e un minuto per la versione in HD !!!!<br />
<br />
Il motivo per cui IBM sta spingendo in questa direzione è dovuta, chiaramente all'incremento considerevole del traffico sul web negli ultimi anni che oltre a veder aumentare il numero dei PC, notebook ecc.., si sta popolando di dispositivi mobili, vedi smartphone e netbook, senza poi tener conto dell'aumentare dei servizi che popolano la rete come le console di gioco, lo streaming di mp3 ecc (nel solo 2010 ci sono state qualcosa come 2 miliardi di connessioni).<br />
<br />
Fonte : <a href="http://www.networkworld.com/community/blog/ibm-new-chip-making-technology-will-boost-int?source=nww_rss">NetWorkWorld</a>Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-70217071576789048982010-11-10T00:24:00.000-08:002010-11-10T00:24:51.817-08:00Google Search con scroll infinito<object height="378" width="418"><param name="movie" value="http://www.youtube.com/v/vfdSOIX6DH0&hl=it_IT&feature=player_embedded&version=3">
</param>
<param name="allowFullScreen" value="true">
</param>
<param name="allowScriptAccess" value="always">
</param>
<embed src="http://www.youtube.com/v/vfdSOIX6DH0&hl=it_IT&feature=player_embedded&version=3" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="418" height="378"></embed></object><br />
Ormai è diventata "una moda", ma non si può nascondere che è di una certa utilità, sto parlando dello, chiamiamolo così, scroll infinito che alcuni siti (vedi Facebook, google images ecc) mettono a disposizione.<br />
Infatti, appena si scorre la pagina in basso, invece dei soliti link (paginazioni ecc), vengono caricati ulteriori risultati della ricerca.<br />
<br />
E anche il search engine di Google (che per ora lo aveva fatto solo sulla sezione Immagini), si arricchirà, a quanto sembra di questa funzionalità.
Ciao ciaoAldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-10066887116092833822010-10-27T05:11:00.000-07:002010-10-27T05:12:05.649-07:00Gimp-G'Mic : un "quadro" del Colosseo<br />
<div class="separator" style="clear: both; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhASvIySsZf1xf1ECSsIyYM5h39gFqXSBXgDoWhhvYk8abXzT_N1XgUtwBBlZuGvPfVGtPuXLxXF2OWAjIqpdU1wHB9BcSbDiClbjGFZqv1tS6oJ3xJnZD4xqoVWsPDKSSSgla4zQ6NloI/s1600/colosseo600.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><br class="Apple-interchange-newline" /><img border="0" height="179" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhASvIySsZf1xf1ECSsIyYM5h39gFqXSBXgDoWhhvYk8abXzT_N1XgUtwBBlZuGvPfVGtPuXLxXF2OWAjIqpdU1wHB9BcSbDiClbjGFZqv1tS6oJ3xJnZD4xqoVWsPDKSSSgla4zQ6NloI/s320/colosseo600.jpg" style="cursor: move;" width="320" /></a></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
Ciao a tutti,</div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
era un pò di tempo che non mi dedicavo a qualche sfondo con gimp.</div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
Dopo aver scoperto l'ennesimo effetto del mitico plugin, G'Mic, vi voglio mostrare come applicarlo con veramente pochissimi passi....</div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div class="separator" style="clear: both; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEji61jqYwRZpDAem_gVQlM3Hz12t4jc1Z0FTD2u3ipEXUeiP1sXejeZ-hYw7wpiK8aodRLbERLr5vfI7E-SDJth2wGHGvtkncke4PBrPci0RRb6EXajxKHe8ri-UHv4EbWCz7wNHM4yKbo/s1600/col_paint1.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="107" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEji61jqYwRZpDAem_gVQlM3Hz12t4jc1Z0FTD2u3ipEXUeiP1sXejeZ-hYw7wpiK8aodRLbERLr5vfI7E-SDJth2wGHGvtkncke4PBrPci0RRb6EXajxKHe8ri-UHv4EbWCz7wNHM4yKbo/s200/col_paint1.png" style="cursor: move;" width="200" /></a></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
Allora prendiamo una classica foto come questa a fianco</div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
Andiamo sul menu Filtri--> G'Mic</div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
Espandiamo il nodo <b>Artistic</b> e selezioniamo <b>Painting</b>.</div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
A seconda della qualità dell'immagine, e bene raggiungere una luminosità equilibrata, quindi evitare immagini troppo luminose, o al contrario troppo poco luminose.</div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div class="separator" style="clear: both; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjj6e4XHb9OPLejTLztu01rpk9ACdWJnevDVzwPUtTtG8nih17bXuOLdziKnQd_yqkJwI_gKQnTWBGCperihKhyPcP_V3s56l1nycTu6RRIvYhKtgPCXzBU500Mq7o_-8wbtOkGAqLDhj8/s1600/col_paint2.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="134" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjj6e4XHb9OPLejTLztu01rpk9ACdWJnevDVzwPUtTtG8nih17bXuOLdziKnQd_yqkJwI_gKQnTWBGCperihKhyPcP_V3s56l1nycTu6RRIvYhKtgPCXzBU500Mq7o_-8wbtOkGAqLDhj8/s320/col_paint2.png" style="cursor: move;" width="320" /></a></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
Vi consiglio di non fidarvi dell'anteprima rimpicciolita (che viene renderizzata ogni volta ad ogni zoom), ma spostarvi, notando i dettagli cosicché da regolarvi con il parametro <b>Abstraction</b> (che consiglio comunque di lasciare almeno per non distorcere troppo l'immagine, a 1) e con Smoothness per regolarvi sul rilievo.</div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
Infine, se la <i>pennellata</i> la volete, come nel mio caso, farla a mo di matita portate <b>Color</b> a 0, potete raggiungere già qui lo stesso risultato che otterreste togliendo la saturazione dall'immagine.... (che vor dì? che diventa bianco e nero :PP ;) )...</div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
Io da solito fissato... non potevo gioca' con le maschere e far emergere il mitico logo di Ubuntu dal centro del colosseo (pensandoci bene... ma ora non mi va ... un bel pinguino ci sarebbe stato meglio :) )...</div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
ed ecco qua il risultato....</div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
come al solito scaricabile da devian.art :<br />
<a href="http://goo.gl/PJbJ" target="_blank">http://aldodoffizi.deviantart.com/art/Painting-Coloseum-184099307</a></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br />
bye bye</div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-56172875859700543322010-10-26T02:07:00.000-07:002010-10-26T02:07:18.444-07:00Unity di default dalla 11.04OoO da Canonical arrivano novità non indifferenti, relativamente alla prossima distro di Ubuntu.<br />
Infatti dalla 11.04 Unity (l'interfaccia utente, ottimizzata per i Netbook dalla 10.10) sarà la shell predefinita.<br />
<br />
L'annuncio (ma che comunque già da tempo era stato anticipato) di <b>Shuttleworth</b> è stato dato ieri alla <b>Ubuntu Developer Summit</b>.<br />
Per chi non lo sapesse Unity è l'interfaccia grafica ottimizzata per i netbook dalla 10.10, che di fatto permetterà di tenere più attività in primo piano, pure a fronte del fatto che da recenti notizie anche Canonical sta spingendo sul fronte Multi-touch e che conseguentemente Unity sposa perfettamente questa esigenza.<br />
<br />
ciao belliAldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-52603790491457025852010-10-21T00:30:00.000-07:002010-10-21T00:30:55.708-07:00Ubuntu-certified hardwareOoo diciamo che era da un pò che ci voleva un'iniziativa del genere.<br />
Un pò tutti infatti conosciamo quale sia il motivo per cui aziende e utenti hanno "timore" di svoltare a sistemi operativi linux-like, ovvero l'hardware, ma in realtà la preoccupazione è anche la nostra, per esempio quando acquistiamo un nuovo pc, potremo rischiare di non vederlo pienamente funzionante per problemi di compatibilità hardware.<br />
<br />
Be' con il rilascio della 10.04, c'era stata sorta di pubblicità ma, soprattutto con l'annuncio del supporto dei server Dell...<br />
In pratica Canonical sta diffondendo la lista dei pc, suddividendoli per marca e modello (laptop,desktop, netbook ecc) evidenziando i livelli di compatibilità con le varie versioni di Ubuntu (<b>Ubuntu-Certified</b> per i modelli valutati da Canonical, e <b>Ubuntu-ready</b> per quelli testati dai produttori).<br />
<br />
<a href="http://webapps.ubuntu.com/certification/" target="_blank">Ubuntu-certified program</a><br />
<br />
Certo c'è da dire che per i modelli classificati come <b>Ubuntu-Ready</b>, e questo lo si può notare ad esempio sul numero di laptop per alcune marche risulta 0 (ma il mio HP che funziona abbastanza bene?... :P), dipende quasi sicuramente dalla disponibilità di alcune case a "collaborare" con canonical, quindi in questi casi bisogna sperare che tutti i produttori siano propensi testare i loro pc con Ubuntu.<br />
<br />
Ciao a tutti<br />
<br />Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0tag:blogger.com,1999:blog-6840878720181519458.post-25986207064631124942010-10-14T04:56:00.000-07:002010-10-14T05:02:11.117-07:00Estensioni Chromium : Google Safe BrowsingCiao a tutti,<br />
qualche tempo fà vi consigliai il piccolo tips, che permette la customizzazione dei motori di ricerca presenti in chromium, atta alla verifica sull'attendibilità dei siti sfruttando il servizio di googl Google Safe Browsing (post : <a href="http://gli-artigli-della-lince.blogspot.com/2010/09/diagnostica-su-siti-web-con-chrome.html" target="_blank">http://gli-artigli-della-lince.blogspot.com/2010/09/diagnostica-su-siti-web-con-chrome.html</a>).<br />
<br />
Bè dopo aver giochicchiato con i due temi per chromium (sto partorendo idee per il terzo ;) :P ), ho voluto iniziare a fare qualcosa di mui semplice con vere e proprie estensioni,<br />
e vi posto pertanto il link alla mia primissima estensione : <a href="http://goo.gl/RMyl" target="_blank">Google Safe Browsing</a> .<br />
<br />
Ma che cos'è ....<br />
in pratica è una semplicissima (ma veramente issima) estensione che crea l'url <span class="Apple-style-span" style="color: #333333; font-family: arial, sans-serif; font-size: 13px; line-height: 18px;">http://www.google.com/safebrowsing/diagnostic?site=</span>[sitoInternet]<br />
dove il sito internet in questo caso è il sito che stiamo visitando al momento<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQOiN_TLi77mWlIn_33pOrZTfM0N3pcWKv244lJEl2J8WRa3A4NUHEejPjPHKqpbdMQiNXP57dj_ZUGjM-RuMrl1e81bSHCUWeFxKRTsXAraCzwSN5NbBXZZRt6iCkjb-qR9yg6ZhPTcU/s1600/toolbarchrome.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQOiN_TLi77mWlIn_33pOrZTfM0N3pcWKv244lJEl2J8WRa3A4NUHEejPjPHKqpbdMQiNXP57dj_ZUGjM-RuMrl1e81bSHCUWeFxKRTsXAraCzwSN5NbBXZZRt6iCkjb-qR9yg6ZhPTcU/s1600/toolbarchrome.JPG" /></a></div>
<br />
<br />
<br />
<br />
<br />
Infatti facendo click sull'iconcina posta in fondo alla barra degli indirizzi<br />
si verrà reindirizzati al servizio <b>Google Safe Browsing</b> con lo stesso risultato..<br />
<br />
ciao belli!!<br />
<span class="Apple-style-span" style="color: #333333; font-family: arial, sans-serif; font-size: small;"><span class="Apple-style-span" style="font-size: 13px; line-height: 18px;"><br /></span></span><br />
<br />Aldo D'Offizihttp://www.blogger.com/profile/13007611378159733162noreply@blogger.com0