Full Circle - Full Circle Magazine

Pagina creata da Dario Fazio
 
CONTINUA A LEGGERE
Full Circle - Full Circle Magazine
Full Circle
                               LA RIVISTA INDIPENDENTE PER LA COMUNITÀ UBUNTU
                               NUMERO 87 - Luglio 201 4
Photo: Auntie P (Flickr.com)

                                                                             T R U E C R YP T
                                                              È UN'ALTERNATIVA SICURA?
                                                                  full circle magazine nr. 87                    1                                             indice ^
                                                              Fu ll Ci rcle M a g a zi n e n o n è a ffi li a to n é so ste n u to d a Ca n o n i ca l Ltd .
Full Circle - Full Circle Magazine
Full Circle
                 HowTo

                                                                    LA RIVISTA INDIPENDENTE PER LA COMUNITÀ UBUNTU
Python                            p.1 2                                                                                                                 Notizie Linux                       p.04

LibreOffice                      p.1 7           Comanda & Conquista                 p.1 0           Arduino                             p.27

GRUB2 & Multibooting              p.20          Linux Labs                          p.30             Recensione libro                    p.41           Cos'è             p.43

  TORNA IL PROSSIMO MESE

Blender                           p.23          Lettere                              p.44           Tuxidermy                           p.46            D&R                                 p.47

Inkscape                          p.23          Sicurezza                           p.49            Donne Ubuntu                        p.52            Giochi Ubuntu                       p.53
           Grafica
                            Gli articoli contenuti in questa rivista sono stati rilasciati sotto la licenza Creative Commons Attribuzione - Non commerciale - Condividi allo stesso modo
                            3.0. Ciò significa che potete adattare, copiare, distribuire e inviare gli articoli ma solo sotto le seguenti condizioni: dovete attribuire il lavoro all'autore
                           originale in una qualche forma (almeno un nome, un'email o un indirizzo Internet) e a questa rivista col suo nome ("Full Circle Magazine") e con suo
  indirizzo Internet www.fullcirclemagazine.org (ma non attribuire il/gli articolo/i in alcun modo che lasci intendere che gli autori e la rivista abbiano esplicitamente autorizzato
  voi o l'uso che fate dell'opera). Se alterate, trasformate o create un'opera su questo lavoro dovete distribuire il lavoro risultante con la stessa licenza o una simile o compatibile.
  Full Circle è completamente indipendente da Canonical, lo sponsor dei progetti di Ubuntu, e i punti di vista e le opinioni espresse nella rivista non sono in alcun modo
  da attribuire o approvati da Canonical.                 full circle magazine nr. 87                   2                                                                                 indice ^
Full Circle - Full Circle Magazine
E D I T O R I AL E
                                                                                                  Questo magazine è creato utilizzando:

B ENVENUTI AD UN ALTRO NUMERO DI FULL CIRCLE
A    bbiamo un quasi-full anche questo mese. Ci sono Python, LibreOffice, e la terza parte
     della serie sul menù di boot GRUB con l'ultima parte in arrivo il prossimo mese. C'è anche
Inkscape, ma questo mese manca Blender, temo.
A fianco del normale Linux Lab di Charles, ho aggiunto un altro articolo Linux Lab di mio
pugno su come usare BitTorrent Sync. BitTorrent sembra sempre avere una cattiva
reputazione a causa del fatto che viene utilizzato a fini illegali, ma questa nuova cosa, Sync,
funziona davvero piuttosto bene per condividere file tra computer e persino dispositivi
mobili. Se state pensando di abbandonare DropBox o l'ormai defunto Ubuntu One, ma volete
qualcosa che non ricada in un servizio di hosting, allora vi consiglio di dare un'occhiata a
                                                                                                     Full Circle Podcast
                                                                                                     Rilasciato ogni due settimane,
BitTorrent Sync. Mi sembra che ci sia un'alternativa completamente F/OSS reperibile da               ogni episodio tratta tutte le
qualche parte, ma non l'ho ancora provata personalmente.                                             principali notizie, opinioni, riviste,
                                                                                                     interviste e feedback dei lettori
                                                                                                     del mondo di Ubuntu. Il Side-Pod è
Il nostro argomento principale di questo mese, tuttavia, è uno sguardo alle alternative per          una novità: è un breve podcast
TrueCrypt. Sembra che TrueCrypt sia (a seconda di chi stiate ascoltando) poco sicuro, e/o non        aggiuntivo (senza regolarità),
in procinto di essere ulteriormente sviluppato. Ciò lascerebbe un sacco di drive criptati o          inteso come un'appendice del
senza supporto o col rischio di non essere sicuri, ragion per cui molta gente avrà bisogno di        podcast principale. Qui vengono
                                                                                                     inseriti tutti gli argomenti di
trovare qualcos'altro. Iain Mackeand ha testato diverse alternative e vi mostrerà come               tecnologia generale e materiali
ognuna di esse venga utilizzata. Tuttavia, devo dire, non molte di esse sembrano altrettanto         non inerenti Ubuntu che non
intuitive e basate sull'interfaccia grafica come invece è (o era) trueCrypt.                         rientrano nel podcast principale.
                                                                                                     Ospiti:
                                                                                                     • Les Pounder
Con i migliori saluti, e restate in contatto!                                                        • Tony Hughes
Ronnie                                                                                               • Jon Chamberlain
ronnie@fullcirclemagazine.org                                                                        • Oliver Clark
                                                                                                     http://fullcirclemagazine.org

                                     full circle magazine nr. 87     3                                                              indice ^
Full Circle - Full Circle Magazine
N E WS
LA NSA PENSA CHE TU SIA                   ne ha postato una versione in inglese
                                          su Der Este.
                                                                               parte dei dipartimenti del governo.
                                                                               La più grande frustrazione per chi
                                                                                                                            pubblicato questa settimana
                                                                                                                            dall'emittente tedesca ARD, identifica
UN ESTREMISTA SE TI                                                            voglia inviare dei documenti al              almeno due server Directory
INTERESSI DELLA PRIVACY                   Fonte:                               governo è quella di non aver                 Authority tedeschi di Tor, uno a

N
                                          http://securitywatch.pcmag.com/pri installato questo particolare                  Berlino e l'altro a Norimberga, che
      on è necessario effettuare una      vacy/325273-the-nsa-thinks-you- are- software coreano.                            risultano essere sotto la sorveglianza
      ricerca per 'bomba con pentola      an-extremist-if-you-care-bout-                                                    dell'NSA.
a pressione' o 'terrorismo' per           privacy                              Fonte:
entrare nel radar della National                                               http://http://e27.co/korean-                     Il progetto Tor è un software e una
Security Agency. È sufficiente essere     Inviato da: ArnfriedWalbrecht        government-to-turn-its-back-on-              rete di navigazione indipendente,
un po' consapevoli della privacy e                                             microsoft-and-use-what-instead-              open-source e anonima che dirige il
interessarsi a Tor.                       I L GOVERNO COREANO GIRA LE hangul-201 40703/                                     proprio traffico attraverso la sua
                                                                                                                            libera e volontaria rete mondiale per
    La scorsa estate SecurityWatch ha     SPALLE A M ICROSOFT... E                Inviato da: ArnfriedWalbrecht             tener nascosta dalla sorveglianza la
scritto di X-Keyscore dell'NSA, un        COSA UTILIZZA INVECE?                                                             posizione e l'utilizzo dei dati degli
programma che risucchia enormi                                                    NSA HA PRESO DI MIRA IL                   utenti.
quantità di dati Web da email, attività
Facebook e navigazione online, per
citarne qualcuno, per gli analisti che
                                          C    ome è stato ampiamente
                                               riportato in Asia, la Corea del
                                          Sud sta usando il fatto che Windows
                                                                                  LINUX J OURNAL COME
                                                                                  'FORUM ESTREMISTA':
                                                                                                                            Fonte:
                                                                                                                            http://www.zdnet.com/article/nsa-
devono cercare e trovare degli            XP non sia più supportato per           RAPPORTO                                  targets-linux-journal-as-extremist-
schemi. Un gruppo di giornalisti e        svincolarsi completamente da                                                      forum-report/
attivisti hanno analizzato il codice
sorgente di X-Keyscore e hanno
scoperto che le regole utilizzate per
                                          Microsoft. Sebbene il ragionamento
                                          alla base di questa decisione abbia
                                          senso, aggiornare alla nuova
                                                                                  I l Linux Journal, un sito web di una
                                                                                    comunità di utenti Linux, è stato
                                                                                  etichettato come “forum estremista”
                                                                                                                            Inviato da: ArnfriedWalbrecht
determinare quali individui
dovrebbero essere soggetti a una più
                                          versione i software Microsoft può
                                          richiedere molto denaro e tempo, il
                                                                                  dalla National Security Agency degli      LA LINUX FOUNDATION HA
                                                                                  Stati Uniti (NSA), poiché i suoi utenti   ANNUNCIATO IN ANTEPRIMA
approfondita sorveglianza sono molto      governo dovrebbe interrompere           sono stati etichettati come
più ampie di quanto abbiamo               immediatamente anche l'uso di           “estremisti” dal programma                L'ELENCO DEI RELATORI
anticipato, secondo quanto riportato
dal sito tedesco Tagesschau. Anche
                                          Hangul. Hangul è un pacchetto           Xkeyscore dell'agenzia, secondo           PRINCIPALI PER LA LINUXCON
                                          software coreano simile a MS Office
Jacob Appelbaum, membro del               ed è utilizzato (e richiesto) come
                                                                                  quanto filtrato dal codice sorgente.      E CLOUDOPEN EUROPEA.
progetto Tor, nonché uno degli autori,    formato predefinito per la maggior              Il codice sorgente, che è stato
                                                  full circle magazine nr. 87         4                                                                  indice ^
Full Circle - Full Circle Magazine
NEWS
L   a Linux Foundation,
    l'organizzazione non-profit
dedicata all'accelerazione della
                                               buone norme.
                                                   Il CloudOpen Europe presenta
                                                                                           Valve ha due versioni di SteamOS.
                                                                                       Una è quella stabile (o quasi) e l'altra è
                                                                                       una versione beta (Alchemist). Le due
                                                                                                                                    I L KERNEL LINUX 3.1 5.3 È
                                                                                                                                    ORA DISPONIBILE PER IL
crescita di Linux e allo sviluppo              invece contenuti tecnici rivolti al     versioni non sono poi così tanto             DOWNLOAD
collaborativo, ha annunciato oggi i            mondo delle piattaforme Cloud open      differenti l'una dall'altra, ma gli
nomi dei relatori ospiti della
LinuxCon + CloudOpen + Embedded
Linux Conference europea, che avrà
                                               e strumenti per gli sviluppatori. È
                                               l'unico luogo d'incontro dove varie
                                               tecnologie open cloud si ritrovano
                                               tutte assieme sotto lo stesso tetto
                                                                                       sviluppatori Valve stanno usando la
                                                                                       distribuzione Beta per testare alcuni
                                                                                       dei nuovi aggiornamenti prima che
                                                                                                                                    G     reg Kroah-Hartman ha avuto il
                                                                                                                                          piacere di annunciare in
                                                                                                                                    anteprima oggi, 1 Luglio, che la terza
luogo dal 1 3 al 1 5 ottobre presso il                                                 questi vengano inseriti nella versione       release di manutenzione dell'attuale
Congress Centre di Dusseldorf.                 per migliorare Apache Stratos, AWS,     stabile.                                     ramo stabile del kernel Linux 3.1 5 è
                                               Chef, CloudStack, Docker, Gluster,                                                   disponibile per il download,
    Il LinuxCon Europe è il luogo in cui       Hadoop, Juju, KVM, Linux, MariaDB,        Questa è solo la versione Beta di          incoraggiando gli utenti a effettuare
poter imparare dalle menti                     MySQL, OpenDaylight, OpenStack,       SteamOS e non tutti i pacchetti in             l'aggiornamento non appena le loro
    migliori e più brillanti, ricevere         oVirt, Puppet, SaltStack, the Xen     essa inclusi sono stabili. Ci vorrà            distribuzioni renderanno disponibili
contenuti dai principali manutentori,          Project e molto ancora.               ancora un po' prima che tutti i                nei repository ufficiali i relativi
sviluppatori e capi progetto della                                                   pacchetti vengano inseriti nella               pacchetti.
comunità Linux.                                Fonte:                                versione stabile. I requisiti di sistema
    Semplicemente non c'è nessun               http://www.koreaittimes.com/story/ per SteamOS non sono cambiati e                       Il kernel Linux 3.1 5.3 è di fatto un
altro evento in Europa in cui                  38605/linux-foundation- announces- sono rimasti piuttosto simili all'inizio:         rilascio piuttosto ordinario che
sviluppatori, sysadmin, architetti e           early-keynote-speaker- line-linuxcon- un adeguato processore AMD da 64               introduce diversi aggiornamenti di
tutti i tipi e livelli di talenti tecnici si   cloudopen-europe                      bit, 4 o più GB di memoria, un hard            driver, qualche miglioramento ai
ritrovano tutti assieme sotto lo stesso                                              disk da 250GB o maggiore, una scheda           filesystem, in special modo per Brtfs
tetto per motivi di formazione,                Inviato da: ArnfriedWalbrecht         grafica NVIDIA, Intel o AMD e o una            ed EXT4, random mm e qualche fix
collaborazione e risoluzione dei                                                     porta USB oppure un drive DVD per              per il Bluetooth e i consueti
problemi, per promuovere la
conoscenza di Linux e la
                                               VALVE AGGIORNA STEAMOS l'installazione. Controllate la notizia                       miglioramenti alle architetture (ARM,
                                               CON GLI ULTIMI DRIVER                 ufficiale per maggiori dettagli su             ARM64, IA64, SPARC, PowerPC, s390
collaborazione del mondo open                                                        questo rilascio.                               e x86).
source in generale. LinuxCon                   NVIDIA, AMD E I NTEL
                                               L
presenterà qualcosa come oltre 1 00                                                    Fonte:                                           Fate attenzione comunque, poiché
sessioni di contenuti innovati                      a versione beta di SteamOS, una    http://news.softpedia.com/news/Val           l'avanzamento a un nuovo Kernel
sull'ultimo aggiornamento del kernel                distribuzione basata su Debian e   ve-Updates-SteamOS-With-the-                 Linux potrebbe compromettere il
Linux, tecnologie e interfacce di              sviluppata da Valve per essere usata    Latest-NVIDIA-AMD-and-intel-                 funzionamento del vostro sistema,
memorizzazione, sicurezza, Internet            nelle sue console/PC ibridi, ha da      Driver-448769.shtml                          quindi è preferibile attendere qualche
of Things e discussioni inerenti la            poco ricevuto un nuovo                                                               giorno e vedere se qualcuno si
collaborazione nell'Open Source e le           aggiornamento e numerosi                Inviato da: Silviu Stahie                    lamenta di esso all'interno dei canali
                                               pacchetti.
                                                         full circle magazine nr. 87    5                                                                          indice ^
Full Circle - Full Circle Magazine
NEWS
ufficiali della vostra distribuzione.    versioni di (X)Ubuntu per le quali       atteggiamento nei confronti dell'open     Fonte:
                                         Whisker Menu non è disponibile nei       source in generale, oppure c'è un'altra   https://threatpost.com/php-fixes-
Fonte:                                   repository ufficiali (versioni           ragione per questo suo insolito           openssl-flaws-in-new-
http://news.softpedia.com/blog/Lin       supportate: Ubuntu 1 4.04, 1 3.1 0 e     comportamento? Il mondo dei               releases/1 06908
ux-Kernel-3-1 5-3-Is-Now-Available-      1 2.04, nonché le corrispondenti         computer sta facendo molte
for-Download-448998.shtml                versioni di Linux Mint). Per vedere le   congetture su quello che potrebbe         Inviato da: Dennis Fisher
                                         differenze dalla precedente versione,    aver motivato Microsoft a unirsi alla
Inviato da: Marius Nestor                guardare il changelog nel suo sito
                                         principale.
                                                                                  AllSeen Alliance.                         DOWNLOAD GRATUITO DI
I L LAUNCHER DI APPLICAZIONI                                                      Fonte:                                    CHROME REMOTE DESKTOP
                                         Fonte:                                   http://www.itworld.com/open-              PER PC WINDOWS
XFCE “WHISKER MENU” VEDE
                                                                                                                            C
                                         http://www.webupd8.org/201 4/06/x        source/425651 /why-did-microsoft-
UN NUOVO RILASCIO                        fce-app-launcher-whisker-menu-           join-linux-foundations-allseen-               hrome Remote Desktop è uno
                                         sees-new.html                            alliance                                      strumento di accesso remoto

W        hisker Menu è un
         menù/lanciatore per Xfce
caratterizzato da una funzione di
                                          Inviato da: Andrew                     Inviato da: Jim Lynch
                                                                                                                           che  può  essere usato per accedere
                                                                                                                           ad altri desktop dal proprio
                                                                                                                           computer. Il prerequisito per
ricerca che consente di trovare           PERCHÉ MICROSOFT SI È                  PHP CORREGGE I DIFETTI DI utilizzare      computer
                                                                                                                                      questo software è che sia il
                                                                                                                                       che viene usato per il
facilmente l'applicazione che si vuole UNITA ALLA ALLSEEN
lanciare. Il menù supporta la vista
                                                                                 O   PEN SSL CON NUOVI RILASCI controllo che quello controllato
                                          ALLIANCE DELLA LINUX
                                                                                  I
delle applicazioni per categoria, è                                                                                        debbano avere installato il browser
                                                                                    l gruppo PHP ha rilasciato le nuove web Chrome. Deve anche essere
possibile aggiungere delle                FOUNDATION?                               versioni del celebre linguaggio di     installata un'estensione su entrambe
applicazioni ai preferiti e altro
                                         Q
                                                                                 scripting che risolvono diversi bug,      le macchine. Questa estensione può
ancora. Lo strumento è utilizzato              uando le persone pensano          inclusi due di OpenSSL. I difetti risolti essere scaricata dal Chrome Web
come menù delle applicazioni                   all'opensource, normalmente       in OpenSSL non sono al livello dei
predefinite a partire dall'ultimo         non vi associano il nome di Microsoft. bug maggiori, come ad esempio             Store. Sarebbe meglio installare
rilascio di Xubuntu (1 4.04) e in Linux Ma la società ha recentemente                                                      l'estensione prima sul computer che
                                                                                 quello di Heartbleed, saltati fuori       deve essere controllato. Un
Mint Xfce a partire dalla versione 1 5 sorpreso molti quando ha aderito          negli ultimi mesi. Ma sia PHP 5.5.1 4
(Olivia).                                 alla AllSeen Alliance della Linux                                                interessante caratteristica di Chrome
                                                                                 che 5.4.30 contengono delle               Remote Desktop è che può essere
                                          Foundation. La missione della          correzioni per le due vulnerabilità,
    Il PPA di Whisker Menu è stato        AllSeen Alliance è quella di creare                                              usato per controllare ciascuno dei
                                                                                 una legata al modo con cui OpenSSL propri computer se se ne hanno a
recentemente aggiornato all'ultima        uno standard di comunicazioni tra      gestisce i timestamp su alcuni
versione 1 .4.0 ed è possibile usarlo sia dispositivi.                                                                     disposizione più di uno. Allo stesso
                                                                                 certificati, e anche l'altra riguarda i   modo, può essere anche utilizzato
per aggiornare all'ultima versione,                                              timestamp, ma in un altra maniera.
ovviamente, che per installarla nelle         Microsoft ha cambiato il suo                                                 per collegarsi al computer di un
                                                                                                                           amico.
                                                    full circle magazine nr. 87    6                                                                     indice ^
Full Circle - Full Circle Magazine
NEWS
Fonte:                                  Devo anche citare il fatto che           produttività cloud opensource Open        http://www.theinquirer.net/inquirer/
http://thefusejoplin.com/201 4/07/ch questo progetto è stato realizzato in       Xchange (OX), ha raccontato al The        feature/2354003/open-xchange-the-
rome-remote-desktop-free-            occasione del 25° anniversario del          Inquirer le sue speranze per una          internet-wouldnt-have-happened-
download-windows-pc/                 Game Boy. Mi sento vecchio.                 Internet più aperta.                      without-linux
                                                                                                                           Inviato da: ArnfriedWalbrecht
Inviato da: ArnfriedWalbrecht             Fonte:                                     Open Xchange è un servizio multi-
                                          http://www.themarysue.com/diy-
                                          game-girl/
                                                                                 piattaforma che fornisce una gamma
                                                                                 di applicazioni web, spazio cloud,
                                                                                                                           CISCO: LINUX È LA SOLA E
COSTRUIRE UN “G AME G IRL”                                                       email criptate e servizi di               MIGLIORE TECNOLOGIA PER
PORTATILE PER TUTTE LE                    Inviato da: ArnfriedWalbrecht          messaggistica istantanea. Il servizio     L'I OT
                                                                                 può essere scaricato (senza etichetta,

                                                                                                                           C
PROPRIE NECESSITÀ DI
GAMING RETRÒ                              COREOS LINUX RILASCIATO                gratuitamente e auto-configurante)
                                                                                 con il modello di business della
                                                                                                                              isco all'inizio di quest'anno ha
                                                                                                                              svelato i suoi piani per costruire
                                          COME IL PRIMO SISTEMA                  società basato su servizi di supporto e router e switch più veloci per aiutare
   Chiamata per tutti i costruttori! Vi   OPERATIVO AL MONDO CHE                 configurazione opzionali. È             a gestire il massiccio flusso di dati
piace giocare con l'elettronica? Avete
accesso a una stampante 3D? Se è          FA' DA SERVIZIO                        autorizzato da un ampio numero di
                                                                                 ISP e compagnie di telecomunicazioni
                                                                                                                         atteso tra i dispositivi connessi a
                                                                                                                         Internet e i data center. Questa
così, potete creare il vostro palmare
da gioco fai-da-te, grazie ai geni
pazzoidi di Adafruit.                     U     na distribuzione Linux che
                                                aggiorna sé stessa. È questa
                                          l'idea dietro al nuovo prodotto
                                                                                 in tutta Europa che girano su sistemi
                                                                                 Linux.
                                                                                                                         ristrutturazione dell'architettura di
                                                                                                                         Internet, che mira a portare la
                                                                                                                         capacità computazionale al limite
                                          commerciale Linux di CoreOS,               Laguna ha chiesto: “Cosa sarebbe della rete, è quello che la società
    Il Game Girl (conosciuto anche                                               successo a Internet se Linux non fosse chiama “fog computing” e, secondo
come PiGRRL) è, in sostanza, un           chiamato CoreOS Managed Linux
                                                                                 esistito? E cosa sarebbe accaduto se la gli analisti di Gartner, potrebbe
computer Raspberri Pi Linux con un                                               sua installazione si fosse basata su    servire ad alleviare lo sforzo dei data
case in stile Game Boy, fatto con un      Fonte:
                                          http://www.toptechnews.com/articl      server Windows e server Unix della      center in vista dagli oltre 26 miliardi
po' di componenti racimolati da un                                               Sun o IBM?”                             di dispositivi che saranno installati
controller SNES. Sebbene un               e/index.php?story_id=1 32007RMRP
                                          WO                                                                             nella Internet of Things da qui al
emulatore NES a 8 bit è la scelta                                                    “Semplicemente Internet non         2020.
software ovvia qui, su questo                                                    sarebbe nata. Sarebbe stata troppo
dispositivo è possibile eseguire          Inviato da: PeterOdigie
                                                                                 costosa. Le compagnie avrebbero             “Decine di miliardi di dispositivi
qualsiasi cosa ci piaccia. Date un                                               tentato di stabilire chi avrebbe potuto avanzati sempre più veloci creano dati
occhiata al video sotto per avere una     OPEN XCHANGE: I NTERNET                avere Internet e chi no. Questo         (chiamati oggi Big Data) che è
panoramica del progetto, oppure           NO CI SAREBBE SENZA LINUX.             avrebbe proibito a internet di          impossibile muovere abbastanza
andare sul sito di Adafruit per                                                  esistere.

                                          R
                                                                                                                         velocemente attraverso la rete”, ha
istruzioni più dettagliate.                   afael Laguna, CEO della suite di                                           detto Michael Enescu, CTO della Open
                                                                                 Fonte:                                  Source Initiatives di Cisco. “Dobbiamo
                                                  full circle magazine nr. 87     7                                                                   indice ^
Full Circle - Full Circle Magazine
NEWS
affrontare questa criticità, altrimenti   Così come Debian Linux sta a Ubuntu,      Tannenbaum nel 1 987 ha scritto      Inviato da: ArnfriedWalbrecht
rappresenterà un enorme problema          così AGL aspira a diventare il futuro un clone di UNIX chiamato Minix e ha
di scalabilità e sicurezza nel nucleo
della rete”.
                                          sistema in-car per le automobili
                                          Hyunday e Toyota di tutto il mondo.
                                                                                pubblicato un libro sulla
                                                                                progettazione e sull'implementazione
                                                                                                                         CROSSOVER 1 3.2:
                                                                                dei sistemi operativi, riportando il     INSTALLARE PROGRAMMI
Fonte:                                       AGL è dotato di un set di capacità codice sorgente nell'appendice. Il suo WINDOWS SU LINUX NON È
http://www.linux.com/news/feature di base. La piattaforma è basata sul          libro ha aiutato lo sviluppatore         MAI STATO COSÌ SEMPLICE
d-blogs/200-libby-clark/779505-         progetto Tizen In-Vehicle               finlandese Linus Torvalds a creare il
cisco-linux-is-the-single-and-best-
tech-for-iot
                                        Infotainment (IVI) (si proprio quel     kernel Linux, che inizialmente usava
                                        Tizen) e include una serie di software proprio il file system di Minix.
                                        in-car per il controllo della
                                                                                                                          Q    ualche volta, si ha veramente
                                                                                                                               bisogno di un'applicazione
                                                                                                                         desktop di Windows, persino se si è
Inviato da: ArnfriedWalbrecht           climatizzazione, mappe, display del         Subito dopo il rilascio di Linux nel un irrinunciabile utente Linux. Per
                                        cruscotto, riproduzione da media e      1 991 , Tannenbaum fu coinvolto in un quelle volte, raccomando
LA LINUX FOUNDATION                     collegamenti a smartphone. La Linux dibattito riguardante i rispettivi meriti CodeWeavers' CrossOver. Vi dirò di
                                        Foundation dice che AGL può anche       di Minix e Linux; il più illustre
PRESENTA LINUX PER LE AUTO supportare sistemi mission-critical                  personaggio che rispose ai suoi
                                                                                                                         più, le ultime versioni rendono
                                                                                                                         l'installazione di applicazioni

L
                                        quali la strumentazione di carreggiata. commenti fu lo stesso Linus Torvalds. Windows su sistemi Linux più facile
     'auto connessa sta diventando
     un grande affare e la Linux                                                                                         che mai.
                                        Fonte:                                      Tannenbaum è nato a New York
Foundation vuole una piattaforma        http://www.itworld.com/article/269 ma si è trasferito in Olanda con la sua
open source in pole-position. Il                                                                                             Microsoft Office 201 0 gira su
                                        61 35/operating-systems/linux-          moglie tedesca dopo aver ottenuto il Linux? Certo, è facile farlo con
consorzio no-profit ha recentemente foundation-introduces-linux-for-            suo dottorato. All'Università di Vrije
annunciato il debutto di Automotive cars.html                                                                            CodeWeavers' CrossOver.
                                                                                ha tenuto corsi di organizzazione
Grade Linux (AGL), un insieme di                                                informatica e sistemi operativi e ha
software personalizzabile e open                                                                                             Per quelli di voi che non hanno mai
                                        Inviato da: ArnfriedWalbrecht           fatto da supervisore agli studenti che usato prima CrossOver, il programma
source per l'automobilismo con                                                  stavano preparando il loro dottorato. vi consente di eseguire alcuni
Linux nel suo nucleo.
                                        TANNENBAUM, IL CREATORE                     Ha scritto un gran numero di libri
                                                                                                                         programmi Windows, ma non tutti, sia
    Ci sono stati sistemi software      DI M INIX, SI RITIRA                                                             su PC Linux che Mac. Il programma è
                                                                                sull'informatica, alcuni dei quali sono basato sul progetto open source

                                          I
basati su Linux prima. La differenza                                            stati tradotti fino a 21 lingue diverse. Wine, un'implementazione
qui è che la Linux Foundation sta          l professor Andrew Tannenbaum,
spingendo AGL per far si che diventi il    creatore del sistema operativo                                                dell'Interfaccia di Programmazione
                                                                                Fonte:                                   delle Applicazioni (API) Windows su
nucleo del sistema automobilistico      Minix, ha annunciato che si ritirerà    http://www.itwire.com/business-it-
per gli sviluppatori, le fondamenta in dall'università di Vrije in Olanda,                                               sistemi operativi della famiglia
                                                                                news/open-source/6471 9-minix-           Unix/Linux. Per ciascuna applicazione,
opposizione ai sistemi completi quali dove ha lavorato per 43 anni.             creator-tannenbaum-to-retire
Ford Sync o QNX, forniti dalle case.                                                                                     CrossOver/Wine crea un piccolo
                                                  full circle magazine nr. 87     8                                                                     indice ^
Full Circle - Full Circle Magazine
NEWS
contenitore virtuale Windows              collegarci solo le periferiche esterne.   CPU ARM cortex-A9 dual o quad core,          Tre ricercatori del Provider Web
esattamente per quel programma.           Galileo è pensato per la comunità dei     con un processore ARM dedicato per       Russo Yandex: Andrej Kovalev,
    In realtà non è necessario            fai-da-te e degli appassionati che        la gestione dell'I/O.                    Konstantin Ostrashkevich e Evgeny
CrossOver per eseguire applicazioni       realizzano robot, piccola elettronica,                                             Sidorov, hanno detto, nell'analisi
Windows su Linux o Mac. Si può fare       dispositivi indossabili e persino PC.        Pensata per essere utilizzata da      tecnica del malware pubblicata in un
anche solo con Wine, se si sa                                                      studenti e ingegneri sviluppatori, la     articolo del blog specializzato in
esattamente cosa si sta facendo.              Il Gen2 succede al primo computer scheda gira con una versione di Linux        sicurezza e anti-virus Virus Bulletin,
CrossOver però fornisce una semplice      Galileo, la cui commercializzazione è    Ubuntu chiamata Linaro, ottimizzata       che Mayhem funziona come un bot
installazione automatica delle            iniziata verso la fine dell'anno scorso  per architetture ARM. Questo              Windows.
applicazioni Windows e supporto           al prezzo di circa 70$. Il nuovo Galileo significa che gli sviluppatori potranno
tecnico.                                  ha un processore x86 a bassa potenza utilizzare l'IDE Arduino per costruire e         Mayhem è stato scoperto ad aprile
                                          denominato Quark, mentre il              caricare disegni sulla scheda integrata, di quest'anno e non richiede
Fonte:                                    Raspberry Pi ha un processore ARMv7. senza connessioni via cavo esterne           un'escalation di vulnerabilità dei
http://www.zdnet.com/article/cross                                                 aggiuntive.                              privilegi, non deve essere eseguito
over-1 3-2-installing-windows-            Fonte:                                                                            come root o super user, per poter
program-on-linux-just-got-easier/         http://www.computerworld.com/arti Fonte:                                          funzionare su sistemi Linux-based o su
                                          cle/2490060/computer-                    http://www.electronicsweekly.com/ server FreeBSD.
Inviato da: ArnfriedWalbrecht             hardware/intel-to-ship-galileo-gen2- news/design/embedded-
                                          open-source-computer-in-august-          systems/android-arduino-                 Fonte:
I NTEL COMMERCIALIZZERÀ IL                for--60.html                             development-board-goes-sale-201 4- http://www.itnews.com.au/News/3
                                                                                   07/
COMPUTER OPEN -SOURCE                     Inviato da: ArnfriedWalbrecht
                                                                                                                            90053,new-mayhem-malware-
                                                                                                                            targets-linux-unix-
G ALILEO G EN2 IN AGOSTO                                                           Inviato da: ArnfriedWalbrecht            servers.aspx?utm_source=feed&ut
PER 60$                                   COMINCIA LA VENDITA DELLA                                                         m_medium=rss&utm_campaign=ed
                                                                                   I L NUOVO     MALWARE       M   AYHEM
L
                                          SCHEDA DI SVILUPPO                                                                itors_picks
    a risposta di Intel ai popolari 25$
                                          ARDUINO PER ANDROID                       COLPISCE I SERVER LINUX E
    per il PC Raspberry Pi avente le                                                                                         Inviato da: ArnfriedWalbrecht
dimensioni di una carta di credito, è                                               U NIX
                                                                                    U
Galileo Gen2 e sarà disponibile da            Il prototipo di scheda UDOO per
agosto al prezzo di circa 60$.            Android, Linux, Arduino e applicazioni          na recente ricerca ha mostrato
                                          Google ADK è disponibile per                    che c'è un nuovo malware che
    Come il Pi, il computer Galileo       l'acquisto dal rivenditore tedesco        gira su server Unix-like, anche con
Gen2 è una scheda senza case dotata       Conrad Business Supplies.                 privilegi limitati, e ha già infettato
di tutti i componenti necessari per                                                 alcune macchine in Australia ed è
realizzare un PC. Sarà necessario            Creata da SECO e AIDILAB, la           attivamente alla caccia di altri
                                          scheda di sviluppo è basata su una        obiettivi.
                                                  full circle magazine nr. 87        9                                                                     indice ^
Full Circle - Full Circle Magazine
C O M AN D A & C O N Q U I S T A
                    Scritto da Lucas Westermann
                                                                                                                 N o d e . j s , G ru n t e S AS S
I   n questo mese ho pensato di
    collegarmi alla serie di articoli su Git
indirizzandomi a qualcosa che
                                               fornisce delle funzionalità extra che
                                               potrebbero rendere più semplice la
                                               vita al programmatore, che ancora
                                                                                             Io tipicamente lo uso per            la documentazione specifica del
                                                                                          compilare file SASS in file CSS, ma può framework.
                                                                                          fare molto di più.
generalmente memorizzo in un                   lavora con i normali fogli di stile. Ad                                            I NIZIAMO (DA ZERO)
repository Git, ovvero siti web e              esempio: funzioni, variabili (ad
                                               esempio è possibile definire i colori
                                                                                          PREREQUISITI (TESTATI SU
modelli di lavoro per CMS. In questo
modo posso sovrascrivere i miei dati           nella testata di una pagina, così da       UBUNTU 14.04)                              Assicuratevi di lavorare dalla
                                                                                                                                  cartella principale del vostro progetto
senza la preoccupazione di perdere le          rendere possibile il cambio di un                                                  o modello (per esempio la cartella
                                               colore con una sola modifica),                Installate Node.js e NPM:
revisioni precedenti e posso ospitare                                                                                             dove si trovano le cartelle css e sass).
il repository sul mio NAS casalingo o          selettori nidificati e mixin (mini         sudo apt-get install nodejs
sul mio web host condiviso rendendo            funzioni utilizzate per convertire una     npm ruby-sass ruby-compass                 Create un file chiamato
semplice il recupero di una copia degli        linea di codice in più di una).                                                    package.json che contiene quanto
stessi, anche se sono su un nuovo                                                            Installate grunt:                    segue (o eseguite npm init):
computer o in caso di guasti                      Node.js – “è una piattaforma                                                    http://pastebin.com/qPMrRMNW
imprevisti. Invece di ripercorrere i           costruita sul runtime Javascript di        sudo npm install -g grunt
passi su come creare un repository             Chrome per la creazione di                                                            Ovviamente, vorrete sistemare
Git, argomento già trattato il mese            applicazioni di rete veloci e scalabili”      Collegare Node.js nella posizione    alcuni dei campi per il vostro
scorso, voglio porre l'attenzione su           (dal loro sito). È essenzialmente una      attesa (questo è causato dal            progetto. Se volete aggiungere delle
come impostare da zero un SASS (un             piattaforma per l'esecuzione di            pacchetto di installazione di Ubuntu)   dipendenze poiché installate dei
preprocessore css) usando Node.js e            programmi JavaScript senza                                                         moduli, eseguite il comando:
Grunt. Ciò può essere fatto su un              richiedere qualcosa come Apache (o,        sudo ln -s /usr/bin/node.js
                                                                                          /usr/bin/node
disco locale o su un host web (purché          almeno, è come la descrivo io).                                                    npm install  --save-
sia possibile installarvi Node.js e npm                                                   Nota : Bisogna eseguire i comandi       dev

– fate sempre riferimento alla                    NPM – Node Packaged Module              npm con i diritti di amministratore.
                                               (essenzialmente un repository di                                                       Sostituite  con
documentazione).                                                                          Facendo così non si incorrerà in        l'effettivo nome del modulo (ad
                                               applicazioni per Node.js)                  alcun problema.                         esempio grunt).
DEFINIZIONI                                       Grunt – “The Javascript Task
                                                                                          Seconda nota : Grunt non è l'unico
                                                                                          modo con cui compilare i file SASS,
                                               Runner”. È essenzialmente un                                                          Istallate il modulo necessario in
   SASS - sta per “Syntactically                                                          se si sta usando un framework o un      package.json eseguendo quanto
                                               osservatore di file e cartelle, che        tema di partenza che non usa
Awesome Style Sheet”, ed è un                  esegue dei comandi definiti                                                        segue nella cartella del progetto:
formato che può essere usato per                                                          Grunt, è necessario configurarlo da
                                               dall'utente quando qualcosa accade.        zero o bisogna comunque seguire
generare dei comuni file CSS. Però                                                                                                npm install
                                                        full circle magazine nr. 87        10                                                                   indice ^
COMANDA & CONQUISTA
   Per SASS, sarà inoltre                  poche informazioni; in questo modo         di produzione.                               necessita di usare vari gradienti, vi
necessario installare grunt-contrib-       ho un file per ogni tipo di progetto.                                                   riduce il lavoro necessario per farlo.
sass e grunt-contrib-watch.
                                              La sessione sass è relativamente
                                                                                      I NIZIAMO (USANDO UN                            Spiega cos'è un mixin (linear-
     Create il vostro Gruntfile (che sia  tipica: definisce dove andrà il file css    FRAMEWORK O UN TEMA                          gradient), come usarlo (@include) e
Gruntfile.js o Gruntfile.coffee). Il file che sta usando lo stile ampliato            D ' AVVIO CHE USA G RUNT)                    definisce le variabili in SASS. Così
che solitamente uso è:                    quando in sviluppo (ciò significa che il                                                 come un normale selettore body.
http://pastebin.com/dWZUsvJn              file non è rimpicciolito e tutte le linee      Portatevi nella cartella del              Potete inoltre nidificare voci dentro a
                                          di interruzione e spaziatura sono           framework/tema.                              body, o definire diverse versioni di
     Il formato delle cartelle dovrebbe intatte). Il dist (che sta per                                                             esso, quali :hover.
rientrare in: app/assets/css,             distribuzione) usa lo stile compresso.         Eseguite: npm install
app/assets/src/scss, app/assets/src/js. Compass è abilitato in entrambi                                                            body {
                                                                                                                                       a {
Ogni altra cartella potrebbe essere       (Compass è un framework di                     Eseguite: grunt                                 &:hover {
letta abbastanza facilmente da            creazione CSS). Potete lasciarlo                                                               }
Gruntfile (o aggiunta).                   disabilitato ed evitare di installare           Iniziate a editare i file SASS e         }
                                                                                                                                       }
                                          ruby-compass all'inizio di questo file.     lasciate che grunt faccia il suo lavoro!
     Il modo in cui Gruntfile lavora      Tuttavia potreste incorrere in errori.                                                       Spero che questo articolo abbia
consiste nel definire oggetti per varie
sezioni del vostro progetto, per              Potete anche definire un oggetto
                                                                                      G LI STILI                                   solleticato il vostro interesse in SASS.
                                                                                                                                   Se c'è qualcosa altro di specifico su
esempio l'oggetto progetto contiene uglify usando grunt-contrib-uglify per               Come esempio di cosa può fare             SASS a cui siete interessati, sentitevi
i percorsi per ciascuna sezione della     ridurre i file Javascript. Ulteriori        SASS, ho creato questo file:                 liberi di scrivermelo presso
vostra cartella app (e possono essere informazioni possono essere trovate             http://pastebin.com/Wr0LmTXF                 lswest34+fcm@gmail.com. Se avete
referenziate con project.app, ad          qui:                                                                                     domande, correzioni o richieste, siete
esempio). Il banner è tipicamente         https://github.com/gruntjs/grunt-              Viene quindi compilato in un              più che benvenuti a mandarmi una
usato per creare tali intestazioni        contrib-uglify                              normale file css, come si vede in            veloce email.
commentate nei progetti open                                                          questo file:
source, che elencano l'autore, il             Poiché il Gruntfile avvia per           http://pastebin.com/ruUSfVKs
progetto e la licenza. Vengono            impostazione predefinita sass:dev (in
estratti dal file package.json            stile esteso), potete eseguire voi             Ciò che potreste notare è che
(memorizzato in object pkg). Se           stessi sass:dist con il seguente            converte perfino gli specifici valori
l'informazione non esiste, viene          comando:                                    esadecimali dei colori nelle codifiche                 Lucas ha imparato tutto
semplicemente lasciato vuoto. Come                                                                                                  quello che sa danneggiando
                                                                                      CSS 'black' e 'white', e che il mixin crea    ripetutamente il suo sistema, non
tale, il banner nel file contiene tutte   grunt sass:dist
                                                                                      tutte le linee di codice per tutti i          avendo nessuna alternativa ha quindi
le informazioni che un progetto                                                       browser usando i corretti valori e            dovuto imparare come ripararlo.
completo dovrebbe tipicamente                 Ciò creerà quindi un file css                                                         Potete scrivere a Lucas presso:
                                                                                      formati. Ciò significa che, se vi
avere, dato che funzionerà bene con compresso, da usare in un ambiente                                                              lswest34@gmail.com.
                                                    full circle magazine nr. 87        11                                                                        indice ^
H O W-TO
                Scritto da Greg D. Walters                                                                              P yt h o n - P a rt e 5 6
S   tiamo lavorando su un
    generatore di modelli per il
punto croce. Il mese scorso
                                        Inferiore. Osservate il testo qui a
                                        destra.                                               OriginalFilename.set(fileName)
                                                                                              OriginalColorCount.set(self.GetColorCount(fileName))
                                                                                              OriginalSize.set(self.GetHW(fileName))
abbiamo realizzato l'interfaccia            Creiamo poi la funzione                           masterimage=Image.open(fileName)
                                                                                              masterimage.thumbnail((400,400))
utente e ora è tempo di scrivere il     ShowHideGrid. Questi alterna                          self.img = ImageTk.PhotoImage(masterimage)
codice che fa la maggior parte del      semplicemente due immagini                            self.lblImageL['image'] = self.img
lavoro. Il prossimo mese inizieremo     nell'etichetta dell'immagine destra                   ReadyToProcess = True
a lavorare sulla porzione che           sulla scorta della variabile globale      L'opzione di menù FileSave chiamerà la funzione CreatePDF, una volta che ha finito.
genera il file PDF. Lavoreremo          ShowGrid. Se è False, cambiamo il
prima sulle voci del menù. Il codice    testo sul pulsante show/hide,                   def FileSave(self):
                                                                                            self.CreatePDF()
è mostrato sotto. La variabile          impostiamo poi la variabile ShowGrid
globale ReadyToProcess è usata          a True e inseriamo l'immagine con la      Troncheremo le funzioni ShowHelp e ShowAbout mostrando l'informazione su tali funzioni
per assicurarci che se l'utente         griglia. Diversamente, cambiamo il        non ancora disponibili.
preme il pulsante Process, il           testo sul pulsante show/hide in 'Show         def ShowHelp(self):
sistema non tenti di elaborare delle    Grid', impostiamo la variabile                    tkMessageBox.showinfo(title="Help",message='Sorry,
cose quando non c'è nulla da            ShowGrid a False e carichiamo             but help is not yet available.')
elaborare. Usiamo la funzione di        l'immagine senza griglia. Il codice è         def ShowAbout(self):
dialogo nativa di tkFileDialog,         nella pagina successiva, in alto a                tkMessageBox.showinfo(title="About",message='Sorry,
askopenfilename, per ottenere il        sinistra. La funzione StitchSizeSelect    but the About function is not yet available.')

nome file dell'immagine originale.      viene invocata quando cambia la           Abbiamo già scritto la funzione OpenDB una dozzina di volte, quindi dovreste sapere cosa fa..
Poi prendiamo il numero di colori       casella combinata per la dimensione
nell'immagine originale, nonché la      della maglia. Prendiamo il valore dalla         def OpenDB(self):
                                                                                            global connection
larghezza e l'altezza. Salviamo tali    casella e lo assegniamo alla variabile              global cursor
valori e li visualizziamo nella GUI.    locale.                                             #---------------------------------
                                                                                            connection = apsw.Connection("floss.db3")
Quindi apriamo l'immagine e                                                                 cursor = connection.cursor()
creiamo una miniatura per               def StitchSizeSelect(self,p):
mostrarla a sinistra nel pannello       selection = ComboStitch.get()

       def GetFileName(self):
           global ReadyToProcess
           #---------------------------------
           fileName = tkFileDialog.askopenfilename(parent=root,filetypes=self.picFormats ,title="Select File to open...")

                                                full circle magazine nr. 87       12                                                                               indice ^
HOWTO - PYTHON PARTE 56
       def ShowHideGrid(self):                                                            def AidaSizeSelect(self,p):
           global ShowGrid                                                                    selection = ComboSize.get()
           #---------------------------------                                                 if selection != "30":
           if ShowGrid == False:                                                                  pos = selection.find("x")
               self.btnShowGrid['text'] = 'Hide Grid'                                             width = int(selection[:pos])
               ShowGrid = True                                                                    height=int(selection[pos+1:])
               self.im2=Image.open(self.GridImage)                                            else:
               self.im2.thumbnail((400,400))                                                      width = 30
               self.img3 = ImageTk.PhotoImage(self.im2)                                           height = 30
               self.lblImageR['image'] = self.img3                                            FabricWidth.set(width)
           else:                                                                              FabricHeight.set(height)
               self.btnShowGrid['text'] = 'Show Grid'
               ShowGrid = False
               self.im2=Image.open(self.ProcessedImage)                             # Place image                           l'utente avrà la griglia per fare il
               self.im2.thumbnail((400,400))                                                                                punto croce.
               self.img3 = ImageTk.PhotoImage(self.im2)                             self.im2=Image.open(Reduced)
               self.lblImageR['image'] = self.img3                                                                          self.MakeLines (Reduced,5)
                                                                                    self.im2.thumbnail((400,400))
    La funzione AidaSizeSelect (in          funzione di elaborazione prima che      self.img3 =                             self.MakeLines2('output.png',
altro a destra) è molto simile alla         l'immagine sia caricata.                ImageTk.PhotoImage(self.im2)            50)
funzione StitchSizeSelect.                                                          self.lblImageR['image'] =               self.im2 =
Impostiamo le variabili globali                  Elaboreremo il file originale in   self.img3                               Image.open('output2.png')
FabricWidth e FabricHeight in base a        matrice di pixel 5x5, che ci permette                                           self.im2.thumbnail((400,400))
quanto selezionato nella casella            di raggruppare tale matrice 5x5 in un   self.ProcessedImage =
                                                                                    'im1.png'
combinata. Imposteremo anche un             singolo colore. Riduciamo quindi i                                              self.img3 =
predefinito 30x30 se si seleziona 30.       colori, otteniamo la larghezza e           L'insieme di codice qui sopra,
                                                                                                                            ImageTk.PhotoImage(self.im2)
                                            l'altezza dell'immagine processata e    posiziona l'immagine processata         self.lblImageR['image'] =
   Abbiamo una variabile chiamata           ne impostiamo le dimensioni di modo     nell'immagine che manterrà quella
                                                                                                                            self.img3
ReadyToProcess (sotto) giusto nel           che l'utente possa vedere quanto        processata. Il prossimo insieme di      self.FillScrolledList('output
caso in cui l'utente tenti di eseguire la   sarà grande l'immagine risultante.      codice creerà una griglia in modo che   .png')

         def Process(self):
             global ReadyToProcess
             #---------------------------------
             if ReadyToProcess == False:
                 tkMessageBox.showinfo(title="ERROR...",message='You must load an original imaage first.')
             else:
                 newimage = self.Pixelate(OriginalFilename.get(),5)
                 Reduced = self.ReduceColors(newimage)
                 W,H = self.GetHW2(Reduced)
                 siz = "{0}x{1}".format(W/5,H/5)
                 ProcessedSize.set(siz)

                                                    full circle magazine nr. 87      13                                                                     indice ^
HOWTO - PYTHON PARTE 56
self.GridImage =                        def Pixelate(self,im,pixelSize):
'output2.png'                               image = Image.open(im)
                                            self.GetColors(image)
    Tronchiamo la funzione                  image = image.resize((image.size[0]/pixelSize, image.size[1]/pixelSize), Image.NEAREST)
                                            image = image.resize((image.size[0]*pixelSize, image.size[1]*pixelSize), Image.NEAREST)
CreatePDF finché non termineremo            self.GetColors(image)
la funzione PDF il prossimo mese.           #image.show()
                                            image.save('newimage.png')
  def CreatePDF(self):                      return 'newimage.png'

tkMessageBox.showinfo(title="
Create PDF",message='Sorry,
                                        immagine già aperto. Se usate             tmp =                                   colors = len(numColors)
                                                                                 "{0}x{1}".format(im.size[0],i
but the Create PDF function             GetColorCount, dovete passargli un         m.size[1])
is not yet available.')                 file chiuso.                              return tmp                                La funzione Pixelate (sopra)
                                                                                                                        prende due parametri, il nome del file
    La funzione OriginalInfo() prende   def GetColorCount(self,file):
                                         im = Image.open(file)
                                                                                 def GetHW2(self,file):
                                                                                   im = Image.open(file)
                                                                                                                        immagine (im) e la dimensione in
e imposta le variabili in base a          numColors =                              return                               pixel voluta. Il lavoro viene svolto dal
formato, dimensione e modo              im.getcolors(1600000)                    im.size[0],im.size[1]                  metodo image.resize. Ho trovato
                                          self.colors =
dell'immagine originale.                len(numColors)                                                                  questa funzione sul web in molti
                                          return self.colors                         GetColors preleverà il numero di   posti. In questa istanza verrà passata
def OriginalInfo(self,file):                                                     colori del file immagine passatogli.   una dimensione di pixel di 5, che
 im = Image.open(file)
 imFormat = im.format                       Le prossime due funzioni             Usiamo 1 ,6 milioni di colori come     funziona bene per il progetto del
 imSize = im.size                       restituiscono l'altezza e la larghezza   parametro perché la funzione           punto croce. Diremo anche al metodo
 imMode = im.mode                       dell'immagine, in pixel. La differenza   image.getcolors() è predefinita da 0   di prendere il colore vicino più
 self.size = imSize                     tra le due è che GetHW restituisce       fino a un conteggio del colore oltre   prossimo. Ciò restituisce una nuova
 self.imformat = imFormat               una stringa tipo 1 024x768 e GetHW2      256.                                   immagine, che salveremo come file e
 self.immode = imMode                   restituisce due numeri interi.                                                  ne restituiremo il nome.
                                                                                 def GetColors(self,image):
    La funzione GetColorCount usa il    def GetHW(self,file):
                                                                                   numColors =
                                                                                 image.getcolors(1600000)                  La funzione ReduceColors (sotto)
metodo .getColors per ottenere il        im = Image.open(file)
numero di colori nel file                                 def ReduceColors(self,ImageName):
dell'immagine. Dobbiamo usare                                 #Reduce colors
1 .600.000 come parametro maxcolors                           numcolors=MaxColors.get()
                                                              image = Image.open(ImageName)
poiché se l'immagine contiene più di                          output = image.convert('P', palette=Image.ADAPTIVE, colors=numcolors)
256 colori (o qualsiasi cosa sia nel                          x = output.convert("RGB")
parametro), il metodo restituisce                             self.GetColors(x)
                                                              numcolors = x.getcolors()
'None'. Questa funzione è simile alla                         ProcessedColors.set(len(numcolors))
funzione GetColors con la differenza                          x.save('im1.png')
                                                              return 'im1.png'
che GetColors funziona con un file
                                                full circle magazine nr. 87       14                                                                  indice ^
HOWTO - PYTHON PARTE 56
usa fondamentalmente la tavolozza             La ScrollList (sotto) sulla parte           def MakeLines(self,im,pixelSize):
Image.ADAPTIVE, quindi possiamo           destra mantiene i colori che saranno                global backgroundColor1
ottenere un numero molto più              usati per prendere i corretti colori del            #---------------------------------
piccolo di colori.                        floss. Creiamo semplicemente                        image = Image.open(im)
                                                                                              pixel = image.load()
                                          un'etichetta per mantenere colori                   for i in range(0,image.size[0],pixelSize):
    Ci sono due funzioni MakeLines (in (visuale) e testo.                                         for j in range(0,image.size[1],pixelSize):
altro a destra). Creano la griglia di cui                                                             for r in range(pixelSize):
                                                                                                          pixel[i+r,j] = backgroundColor1
abbiamo parlato poc'anzi.                     Questa (prossima pagina) è la                               pixel[i,j+r] = backgroundColor1
                                          funzione che usiamo per provare a                   image.save('output.png')
    Rgb2Hex() restituisce il valore       prendere il colore combaciante più              def MakeLines2(self,im,pixelSize):
esadecimale del valore RGB                prossimo tra quelli dell'immagine e                 global backgroundColor2
passatogli. Lo useremo per                quelli nel database. Ci sono diversi                #---------------------------------
                                                                                              image = Image.open(im)
confrontare i colori nel database con i algoritmi sul web a cui dare un                       pixel = image.load()
colori dell'immagine.                     occhiata per tentare di capire la logica            for i in range(0,image.size[0],pixelSize):
                                          che c'è dietro. Diventa piuttosto                       for j in range(0,image.size[1],pixelSize):
                                                                                                      for r in range(pixelSize):
def Rgb2Hex(self,rgb):
   return '#%02x%02x%02x' %
                                          complicata.                                                     try:
rgb                                                                                                           pixel[i+r,j] = backgroundColor2
                                              Bene. Questo è tutto per questo                                 pixel[i,j+r] = backgroundColor2
                                                                                                          except:
                                                                                                              pass
                                                                                              image.save('output2.png')
        def FillScrolledList(self,filename):
            im = Image.open(filename)
            numColors = im.getcolors()
            colors = len(numColors)
            cntr = 1
            for c in numColors:
                hexcolor = self.Rgb2Hex(c[1])
                lblColor=Label(self.sfFrame,text="              ",bg=hexcolor,relief=GROOVE)
                lblColor.grid(row = cntr, column = 0, sticky = 'nsew',padx=10,pady=5)
                pkID = self.GetBestDistance(c[1][0],c[1][1],c[1][2])
                sql = "SELECT * FROM DMC WHERE pkID = {0}".format(pkID)
                rset = cursor.execute(sql)
                for r in rset:
                     hexcolor2 = r[6]
                     dmcnum = r[1]
                     colorname = r[2]
                lblColor2=Label(self.sfFrame,text="             ",bg="#" + hexcolor2,relief=GROOVE)
                lblColor2.grid(row = cntr,column = 1,sticky = 'w',padx=5,pady=5)
                lblColor3=Label(self.sfFrame,text = str(dmcnum) + "-" + colorname,justify=LEFT)
                DmcColor.set(dmcnum)
                lblColor3.grid(row = cntr, column = 2,sticky = "w",padx=1,pady=5)
                cntr += 1
                                                   full circle magazine nr. 87       15                                                   indice ^
HOWTO - PYTHON PARTE 56
mese. La prossima volta inizieremo a
creare il file PDF da generare in modo    def GetBestDistance(self,r1,g1,b1):
che il ricamatore abbia qualcosa con          # dist = math.sqrt(((r1-r2)**2) + ((g1-g2)**2) + ((b1-b2)**2))
                                              sql = "SELECT * FROM DMC"
cui lavorare.                                 rset = cursor.execute(sql)
                                              BestDist = 10000.0
                                              for r in rset:
     Come sempre, il codice è                     pkID = r[0]
disponibile su PasteBin presso                    r2 = r[3]
http://pastebin.com/DmQ1 GeUx.                    g2 = r[4]
                                                  b2 = r[5]
Continueremo il prossimo mese o giù               dist = math.sqrt(((r1-r2)**2) + ((g1-g2)**2) + ((b1-b2)**2))
di lì. Affronterò presto alcune                   if dist < BestDist:
operazioni chirurgiche quindi non                     BestDist = dist
                                                      BestpkID = pkID
sono sicuro di quanto presto sarò             return BestpkID
capace di sedermi per lunghi periodi
di tempo. Fino ad allora, divertitevi.

  Greg Walters è il proprietario della
  RainyDay Solutions, LLC, una società
  di consulenza in Aurora, Colorado e
  programma dal 1 972. Ama cucinare,
  fare escursioni, ascoltare musica e
  passare il tempo con la sua famiglia.
  Il suo sito web è
  www.thedesignatedgeek.net

                                           full circle magazine nr. 87   16                                      indice ^
H O W-TO
                Scritto da Elmer Perry                  Li breO ffi ce pa rte 3 9 - D ocu m en ti m a ster
Q uando andavo a scuola, ero
  molto concentrato nello
                                         Proprio il genere di cosa di cui
                                         avevo bisogno. Quindi ho deciso di
                                         usare un documento master.
                                                                                 una nuova pagina. Infine, mi
                                                                                 sarebbe servito uno stile di pagina
                                                                                 titolo unico.
                                                                                                                           inserito 'Pagina' e in 'Posizione' ho
                                                                                                                           inserito 'Prima'. Ho salvato i
                                                                                                                           cambiamenti con OK.
scrivere e non vedevo il valore di
molte altre materie, specialmente
la matematica. Invecchiando ho
iniziato ad apprezzarla e a gradirla.
                                         PREPARARE I DOCUMENTI                      Per modificare la 'numerazione
                                                                                 capitolo', sono andato in Strumenti
                                                                                                                           NOTA: si può aprire la finestra 'Stili
                                                                                                                           e formattazione' con il relativo
Con gli anni, ho studiato                    Poiché i documenti erano sparsi     > Numerazione capitolo. Ho                pulsante sulla Barra degli
matematica per conto mio. Mentre         in diversi anni, erano stati creati     modificato il Titolo 1 mettendo           strumenti Formattazione, dal menù
studiavo, creavo molti documenti         con differenti versioni di              'Capitolo' e il relativo numero           Formato > Stili e formattazione o
contenenti le mie note. Decisi che       OpenOffice e di LibreOffice. Non        prima dell'intestazione del livello 1 ,   premendo il tasto F1 1 .
fosse tempo di metterli tutti            avevano stili o modelli i comune.       proprio come ho detto nella parte
insieme in un unico documento con        Avevo bisogno di creare un              38 di questa serie (Full Circle               Ho creato una pagina di stile
capitoli, un sommario e un indice.       modello per la completa coerenza        numero 86). Ho deciso di lasciare         chiamata 'Titolo pagina' basata
Ma come combinare un mucchio di          di tutti i documenti e del              vuoti gli altri livelli, sebbene avrei    sullo stile 'Intestazione'. L'unico
documenti in uno?                        documento master.                       probabilmente incluso alcuni di essi      vero cambiamento che ho fatto è
                                                                                 nel sommario.                             stato di impostare l'allineamento a
    Suppongo che avrei dovuto solo           Per creare il mio modello, ho                                                 centro pagina per centrare
copiare il testo da un documento a       iniziato con un documento vuoto.            Per far iniziare ogni capitolo in     verticalmente il titolo della pagina.
un altro grande documento, ma            Mentre creavo il mio modello,           una nuova pagina, ho modificato lo        Ho modificato lo stile di paragrafo
poteva diventare disordinato,            c'erano diverse cose che dovevo         stile 'Titolo 1 ' nella scheda 'Stili e   'Titolo' con un carattere e una
specialmente poiché non ero sicuro       prendere in considerazione. Sapevo      formattazione' della barra laterale,      dimensione di mio gusto. Ho altresì
sull'ordinamento migliore dei            di voler creare un sommario, quindi     facendoci clic sopra con il tasto         creato lo stile di paragrafo
documenti. Volevo un metodo con          avrei avuto bisogno di modificare la    destro e selezionando 'Cambia..'.         chiamato 'firma' basato sullo stile
cui poter lavorare sui singoli           'numerazione capitolo'. Inoltre         Nella scheda 'Flusso di testo' sotto      'Sottotitolo'. Qui non ho fatto molti
documenti combinandoli poi               volevo che ogni capitolo iniziasse in   a 'Interruzioni', ho spuntato la          cambiamenti, ho giusto selezionato
insieme in uno unico e volevo                                                    casella 'Inserisci'. In 'Tipo' ho         un carattere che combaciasse con
essere capace di cambiarne                                                                                                 quello del 'Titolo'.
l'ordine. In LibreOffice ciò è
possibile con i 'documenti master'.                                                                                           Per salvare il modello, File >
Potete pensare a essi come a un                                                                                            Modelli > Salva come modello, che
contenitore che unisce insieme                                                                                             apre la finestra 'Gestore dei
documenti separati di Writer.                                                                                              modelli'. Ho fatto clic su Salva e il
                                                 full circle magazine nr. 87      17                                                                   indice ^
HOWTO - LIBREOFFICE
programma mi ha chiesto di           basato sul modello. Apporto i miei      Per creare il mio documento              Il Navigatore nei documenti
inserire un nome per il modello.     cambiamenti e poi lo salvo come se  master, ho aperto un nuovo               master è diverso dagli altri
L'ho chiamato 'prontuario di         fosse un normale documento          documento usando il modello              documenti. Per impostazione
matematica'. Ho fatto clic su OK e   (premendo sul pulsante Salva nella  'prontuario di matematica'.              predefinita è in modalità elenco
ho avuto un nuovo modello.           barra degli strumenti, o File >     Selezionando lo stile 'Titolo' dagli     documenti. Il primo pulsante nella
                                     Salva, oppure CTRL-S). Quando si    stili di paragrafo, ho digitato il mio   barra degli strumenti è un pulsante
    Quando si sta creando un         apre un documento che utilizza il   titolo. Ho quindi creato il              di attivazione che permette di
modello, potrebbero esserci altri    modello, LibreOffice mi avverte     sottotitolo e la firma. Dopo aver        scegliere tra l'elenco documenti e
cambiamenti da voler apportare.      che il modello è cambiato e mi      aggiunto qualcosa nel documento,         un pannello Navigatore standard.
Questi sono ciò che credo essere     chiede di aggiornare il documento   l'ho salvato come documento              Mentre lavoravo nel documento
un buon punto di partenza. Voi       con la nuova versione. Premo su     master con File > Invia > Crea           master, non ho avuto nessun
potete procedere quanto volete       'Aggiorna Stili' e gli stili vengonodocumento master. Gli ho dato un         motivo di passare alla modalità
con il vostro modello. In fondo      aggiornati nel documento.           nome a fatto clic su Salva. Sono poi     normale, ma è lì, se avete un
spetta a voi. Se, mentre lavorate                                        andato alla scheda stili di pagina       motivo per navigare verso un
sui sotto-documenti, decidete di        Ora, devo applicare il mio nuovo della finestra Stili e formattazione     oggetto o una sottovoce in uno dei
fare altri cambiamenti di stile,     modello ai documenti esistenti. Per e ho cambiato lo stile della pagina      sotto-documenti.
apportateli al modello anziché ai    ciascun documento, lo apro e vado in 'Titolo pagina'.
singoli documenti.                   in Modifica > Seleziona tutto. Creo                                              Ho notato che un documento
                                     quindi un nuovo documento                                                    era già nell'elenco dei file. Era il
                                     usando il mio modello con File >    I NSERIRE DOCUMENTI                      Testo del documento master
                                     Nuovo > Modelli. Seleziono il mio                                            stesso, a questo punto, il titolo
                                     modello e faccio clic su Apri. Con      Una volta ottenuto un                della mia pagina. Volevo
                                     Modifica > Incolla, il testo e gli  documento master, ho potuto              aggiungere altri necessari blocchi
                                     oggetti vengono copiati dal         aggiungerci file. Quando ho salvato      di testo usando il pulsante di
                                     documento originale in quello       il documento master, si è aperta         inserimento. Per aggiungere i miei
                                     nuovo. Chiudo il vecchio            automaticamente la finestra              documenti al documento master,
                                     documento perché voglio salvarlo flottante 'Navigatore'. Avrei               ho fatto clic e lasciato premuto sul
                                     con lo stesso nome. Salvo il nuovo potuto lavorare in questa finestra,       pulsante Inserisci. Ho trascinato in
                                     documento e ottengo i contenuti     ma l'ho chiusa e ho usato il             selezione file e ho rilasciato il
                                     del vecchio file usando il nuovo    pannello Navigatore della barra          pulsante. È apparsa una finestra di
   Per apportare i cambiamenti al    modello. Ripeto la procedura per    laterale. Sono entrambe la stessa        dialogo per cercare e selezionare il
mio modello di matematica, File >    tutti i documenti esistenti.        cosa, quindi è una vostra scelta         file. Ho fatto clic su Apre e il file è
Nuovo > Modelli. Seleziono il                                            quale usare. La finestra Navigatore      stato aggiunto al mio documento
                                                                         si apre premendo F5 sulla tastiera,
modello e faccio clic sul pulsante
Modifica. Ciò apre il modello, o
                                     CREARE IL DOCUMENTO                 o dal menù Visualizza > Navigatore.
                                                                                                                  master. Quando si aggiunge un file
                                                                                                                  al documento master, Writer lo
meglio, un nuovo documento           MASTER                                                                       aggiunge sempre al file
                                             full circle magazine nr. 87    18                                                                  indice ^
HOWTO - LIBREOFFICE
                                                                            ottimo modo per creare grandi
                                                                            documenti. Nel mio caso, volevo la
                                                                            flessibilità di lavorare sui singoli
                                                                            documenti e la capacità di
                                                                            riordinarli. Un documento master
                                                                            lavora meglio con un modello                Il Podcast Ubuntu copre tutte le
                                                                            condiviso da tutti i documenti.             ultime notizie e novità che si
                                                                            Proprio come i normali documenti            presentano agli utenti di Ubuntu
attualmente selezionato. Ho usato apparsa una finestra che mi               di Writer, si possono aggiungere            Linux e ai fan del software libero
il pulsanti 'Sposta su' e 'Sposta giù' chiedeva se volevo aggiornare tutti sommari e indici. Sebbene un                 in generale. La rassegna è rivolta
per ordinare i miei documenti come i collegamenti nel documento. Ho         documento master non sia sempre             tanto all'utente più fresco
volevo. Tutti i riferimenti e i numeri premuto su Si e il documento         la scelta migliore, è una buona             quanto al programmatore più
di capitolo si sono aggiustati         appena modificato è stato            opzione quando è necessario                 esperto. Le nostre discussioni
automaticamente mentre li              aggiornato nel documento master. spostare le diverse parti o si hanno            riguardano lo sviluppo di Ubuntu
spostavo nell'elenco.                  Potevo anche aprire il documento diversi autori di diverse parti.                ma non sono eccessivamente
                                       tramite il normale metodo e          Questo era solo un esempio                  tecniche. Siamo abbastanza
M ODIFICARE DAL                        modificarlo.   I cambiamenti
                                       sarebbero apparsi una volta
                                                                            sull'uso dei documenti master. Se si        fortunati da avere qualche
DOCUMENTO MASTER                                                            progettano bene le cose, è                  gradito ospite nello show a
                                       aggiornati i collegamenti nel        possibile iniziare fin da subito,           passarci novità di prima mano
                                       documento master.                    persino prima di iniziare a scrivere        sugli ultimi eccitanti sviluppi a
    Tutti i documenti collegati al
documento master sono in sola                                               il primo documento                          cui stanno lavorando, in modo
                                           Ho inserito un sommario                                                      comprensibile a tutti! Parliamo
lettura dal documento master           aggiungendo un'interruzione di
stesso. Per modificarli da qui, ho                                                                                      inoltre della comunità Ubuntu e
                                       pagina dopo la mia pagina del                                                    di cosa le interessa. Lo show è
selezionato un documento               titolo, usando lo stesso metodo
nell'elenco del Navigatore e ho                                                                                         offerto dai membri della
                                       discusso nella Parte 38 di questa                                                comunità Ubuntu Linux del
premuto sul pulsante Modifica. Si è serie (Full Circle numero 86). Ho
aperta una nuova finestra                                                                                               Regno Unito. Ed essendo
                                       fatto lo stesso per l'indice, ma ho                                              coperta dal Codice di condotta di
contenente il documento che            dovuto inserire un blocco di testo
volevo modificare. Ho effettuato i alla fine del documento master                                                       Ubuntu è adatta a tutti. Lo show
                                                                               La storia lavorativa, di                 è trasmesso live ogni due
miei cambiamenti al documento,         tramite il pulsante Inserisci. Ciò è    programmazione e informatica di
l'ho salvato e lo ho chiuso. Nel                                               Elmer Perry include un Apple IIE, con    settimane il martedì sera (ora
                                       stato necessario per creare un          alcuni Amiga, un generoso aiuto di       inglese) ed è disponibile per il
documento master, ho fatto clic e blocco modificabile alla fine del
lasciato premuto il pulsante
                                                                               DOS e Windows e una spolverata di        download il giorno seguente.
                                       documento master.                       Unix, il tutto ben mescolato con Linux
Aggiorna. Trascinandolo, l'ho                                                  e Ubuntu. Il suo blog è
rilasciato su Collegamenti. È                                                  http://eeperry.wordpress.com             podcast.ubuntu-uk.org
                                           I documenti master sono un
                                                full circle magazine nr. 87   19                                                                   indice ^
Puoi anche leggere