numero510luglio2011dl.fullcirclemagazine.org/issue51_it.pdf · fullcirclemagazinen.51 1 indice^...

48
full circle magazine n. 51 1 indice ^ Full Circle NUMERO 51 0 Luglio 2011 H H O O W W T T O O : : U U S S A A R R E E K K D D E E 4 4 . . 6 6 0 0 P P A A R R T T E E 2 2 E E F F F F E E T T T T I I D D E E L L D D E E S S K K T T O O P P E E A A P P P P L L I I C C A A Z Z I I O O N N I I E E Q Q U U I I V V A A L L E E N N T T I I LA RIVISTA INDIPENDENTE PER LA COMUNITÀ LINUX UBUNTU full circle magazine non è affiliata né sostenuta da Canonical Ltd.

Upload: others

Post on 10-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

full circle magazine n. 51 1 indice ^

Full CircleNUMERO 51 - Luglio 2011

HHOOWW TTOO:: UUSSAARREE KKDDEE 44..66 -- PPAARRTTEE 22EEFFFFEETTTTII DDEELL DDEESSKKTTOOPP EE AAPPPPLLIICCAAZZIIOONNII EEQQUUIIVVAALLEENNTTII

LA RIVISTA INDIPENDENTE PER LA COMUNITÀ LINUX UBUNTU

full circle magazine non è affiliata né sostenuta da Canonical Ltd.

full circle magazine n. 51 2 indice ^

Full CircleLA RIVISTA INDIPENDENTE PER LA COMUNITÀ LINUX UBUNTU

Sviluppo Ubuntu p. 3 p.17

LibreOffice p. 6 p.15

Programmare in Python p. 25 p.07

Usare KDE 4.6 p. 2 p.20

Scrivere per Full Circle p.23

HowTo Opinioni

D&R p.39

Giochi Ubuntu p.37

Donne Ubuntu p.36

Comanda & Conquista p.05

Top 5 p.44

Columns

Linux Labs p.24 Recensione p.32

Io penso che... p.29

La mia opinione p.28

La mia storia p.27

Lettere p.34

My Desktop p.42Notizie Linux p.04

Gli articoli contenuti in questa rivista sono stati rilasciati sotto la licenza Creative Commons Attribuzione - Non commerciale - Condividi allo stessomodo 3.0. Ciò significa che potete adattare, copiare, distribuire e inviare gli articoli ma solo sotto le seguenti condizioni: dovete attribuire il lavoroall'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 esplicitamenteautorizzato 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 unasimile o compatibile. Fullcircle è completamente indipendente da Canonical, lo sponsor dei progetti di Ubuntu, e i punti di vista e le opinioni espresse nella rivistanon sono in alcun modo da attribuire o approvati dalla Canonical.

full circle magazine n. 51 3 indice ^

EEDDIITTOORRIIAALLEE

Benvenuti ad un altro numero di Full Circle!

D evo dire che sono stato davvero preso in contropiede da tutte le richieste arrivatemi per ulterioriarticoli su KDE. Avevo dato per scontato che KDE fosse ancora un prodotto di nicchia e nonmolto diffuso. Ma sembra che mi sbagliassi di brutto! Anche la domanda dello scorso mesedimostra che KDE, anche se ancora miglia indietro rispetto a Gnome, è tuttavia molto

apprezzato e può certamente recuperare terreno visto che la gente sembra cominciare ad avere in antipatiaGnome-Shell.

Per il secondo articolo su KDE quindi, mi sono concentrato su come attivare gli effetti desktop e ho fattouna lista di alcuni equivalenti KDE per applicazioni Gnome. A proposito: se invece vi state chiedendo comeinstallare KDE sulla vostra distribuzione basata su Ubuntu, allora dovete dare uno sguardo alla pagina dellelettere. Nel contempo, le serie su Python e LibreOffice vanno avanti e la serie sullo Sviluppo di Ubunturaggiunge la sua terza puntata, in cui Daniel ci mostrerà come presentare una soluzione per un bug.

Se invece le storie familiari sono più il vostro genere, allora date un'occhiata alla recensione di questomese su GRAMPS; il software sulla genealogia. A partire dal prossimo mese, David Rowell comincerà unaserie di articoli su come usare GRAMPS, cominciando da come creare un nuovo database ed inserire nomi edettagli. Perciò, tenete un occhio puntato sulla cosa!

La mia riserva di articoli di Il mio desktop e La mia storia invece sta diventando sempre più magra, perciòquesto sarebbe davvero un ottimo momento per mandarmi i vostri articoli desktop/storia. Mi raccomandoperò: ricordatevi di includere qualche informazione su come avete fatto a dare al vostro desktop il suospecifico look! Ma che la mia richiesta non vi fermi dallo scrivere un articolo su qualche altro argomento:tutti i tipi di articoli sono sempre più che benvenuti!

Con i migliori saluti e restate in contatto!Ronnie

[email protected]

Questa rivista è stata creata utilizzando:

Full Circle PodcastRilasciato ogni due settimane, ogniepisodio tratta tutte le principalinotizie, opinioni, riviste, interviste efeedback dei lettori del mondo diUbuntu. Il Side-Pod è una novità: è unbreve podcast aggiuntivo (senzaregolarità), inteso comeun'appendice del podcast principale.Qui vengono inseriti tutti gliargomenti di tecnologia generale emateriali non inerenti Ubuntu chenon rientrano nel podcast principale.

Ospiti:Robin CatlingEd HewittDave Wilkins

http://fullcirclemagazine.org

full circle magazine n. 51 4 indice ^

NNOOTTIIZZIIEE LLIINNUUXX

Full Circle Notifier

Il nostro Full Circle Notifier è alla versione 1.0.2. FCN è una piccola applicazioneche sta nella vostra barra delle applicazioni e non annuncia solo il rilascio dinuovi numeri e podcast, ma può farne anche il download automatico al vostroposto! Diverse persone hannocreato un pacchetto di FCN ele traduzioni stanno iniziando.Per altre informazioni andateal gruppo Google di FCN:http://goo.gl/4Ob4

I Tribunali indiani usanoUbuntu

Negli ultimi quattro anni tutti i Tribunaliindiani hanno usato RedHat Enterprise5. Ora, la Corte Suprema dell’India haordinato a tutti i Tribunali(approssimativamente 17.000 di essi) dipassare a Ubuntu 10.04. La CorteSuprema dell’India ha anche dato unDVD personalizzato di Ubuntu a tutti iTribunali.

Ogni Tribunale usa almeno cinquecomputer. Ciò vuol dire cinquecomputer moltiplicato perdiciassettemila tribunali che fa 85.000computer che avranno Ubuntu.

La pagina della commissione dellaCorte Suprema dell’India, nella qualetutti i Tribunali indiani sono indirizzatiper installare Ubuntu, è:http://www.sci.nic.in/e-committee.htm

Fonte: A.Ramesh Babu (email)

Humble Indie Bundle #3

Humble Indie Bundle #3 è stato appena rilasciato. I giochi questa volta sono: CrayonPhysics Deluxe, Cogs, VVVVVV, Hammerfight e And Yet It Moves. Come spiega il sito web:

Se comprassi questi cinque giochi separatamente, ti costerebbero intorno ai $50, ma

noi ti permettiamo di fissare il prezzo! Tutti i giochi funzionano bene su Mac, Windows e

Linux.

Al momento dell’articolo il prezzo medio per Linux è di $10.37. Il prezzo medio per Mac èdi $5.43 con Windows a $3.47.

Fonte: humblebundle.com

Rilasciato KDE 4.7

KDE è lieta di annunciare il suoultimo set di rilasci, fornendoaggiornamenti importanti a KDEPlasma Workspaces, KDEApplications e a KDE Platform checostituisce le basi per il softwareKDE. La versione 4.7 di questi rilascifornisce molte nuove caratteristichee migliora la stabilità e le prestazioni.

• Plasma Workspaces diventa piùportabile• Aggiornato KDE Application• Migliorati Multimedia,Messaggistica Istantanea e CapacitàSemantiche• Messaggistica Istantanea integratasul desktop• Stabilità oltre che caratteristiche

Fonte: KDE.org

full circle magazine n. 51 5 indice ^

Recentemente ho preso ladecisione di passare daWMFS (WindowManagerFrom Scratch) a XMonad,

dal momento che WMFS avevainiziato a manifestare alcuniproblemi durante la manipolazionedi alcune finestre e layout. Unavolta fatto il passaggio, ero in lottacon Xmobar per farlo funzionare.Fortunatamente un ragazzo sulforum di ArchLinux mi suggerì diutilizzare Conky con Dzen2 per ilmio pannello anziché Conky conXmobar, come stavo tentando difare. E cosi tratterò del come crearela propria barra di stato utilizzandoDzen2 e Conky. Prima di iniziare,vorrei far notare che sto utilizzandouna versione di Dzen2 che ha ilsupporto a XFT abilitato. Se vicapita che una riga del mio file diconfigurazione/esempi è nelformato "Togoshi Gothic: size=9",avrete bisogno di sostituirla con uncarattere di Xfontsel oppureprovate il pacchetto Dzen2 dahttps://launchpad.net/~justinbogner/+archive/ppa/+packages, che

sembra avere il supporto a XFT. Perquelli di voi interessati al mio interofile xmonad.sh, è elencato nellaprossima sezione di lettura.

Sotto c'è il mio file .conkyrc cheuso per la barra di stato. Tratterò lerighe importanti e spiegherò cosafa lo script. Non includerò i mieiscript dato che sono solo perArchLinux o sono usati perprogrammi (come MPD e Dropbox)che non tutti usano. Se volete unoscript specifico, sentitevi liberi discrivermi.

background noout_to_console yesout_to_x noupdate_interval 2total_run_times 0use_spacer none

TEXT${execi 1 /usr/bin/mpd-info}| Dropbox: ${execi 5 echo$(dropbox status)} |$memperc% ($mem) | Updates:${execi 300 python~/Dropbox/Scripts/conky/packages-short} | ${execi 60python

~/Dropbox/Scripts/conky/gmail.py} Email(s) |^fg(\#9F6B00)${time %a %b %d%H:%M}^fg()

La prima riga disabilita lo sfondoe le successive due disabilitanol'aspetto grafico, così che Conkyrestituisca semplicemente unastringa. L'update_interval dice aConky quanto spesso aggiornare leinformazioni. Total_run_times dicea Conky di uscire dopo un certonumero di esecuzioni. Impostarlo a0 per un numero infinito di avvii.User_spacer none gli dice di nonspaziare i comandi sotto a TEXT,poiché lo faccio a mano.

Le successive righe di comandieseguono quanto sotto riportato:

<artist>-<song> | Dropbox:<status> | % (<used RAM>) |Updates: <# of updates> | #new Email(s) | <clock>.

L'orologio è racchiuso in^fg(\#9F6B00)^fg() così che Dzen2lo stampi in un grazioso color oro

che combacia con lo spazio dilavoro correttamente selezionato(istanze separate di Dzen2). Pervedere una schermata controllare ilsecondo link nella successivasezione di lettura.

Una volta che avrete deciso sulvostro .conkyrc, bisogna deciderequali opzioni si vogliono utilizzarecon Dzen2. Per questo, si devonoconoscere le seguenti alternative:

-fg <hex> - sets the foregroundcolour using the hex value for thecolour-bg <hex> - sets the backgroundcolour using the hex value for thecolour-fn <font> - sets the font-h <size in pixels> - sets the height-y <y-coordinate> - shifts the barup/down-x <x-coordinate> - shifts the barleft/right-w <pixels> - sets width of the bar-sa <l,c,r> - set alignment of slavewindow-ta <l,c,r> - set alignment of title

CCOOMMAANNDDAA EE CCOONNQQUUIISSTTAAScritto da Lucas Westermann DDzzeenn22 ee CCoonnkkyy

full circle magazine n. 51 6 indice ^

windows-xs <screen> - set the screen todisplay on.

Un esempio su come richiamoDzen2 per la mia area di lavoro (nonl'istanza di Dzen2 con Conky):

dzen2 -fg '#9c9c9c' -bg'#0c0c0c' -fn 'TogoshiGothic:size=9' -h 18 -y 0 -w660 -ta l

Un esempio su come concatenoConky (è un po' più complicato ilmodo in cui lo faccio nel mio file diconfigurazione, ma è proprio piùfacile da gestire in questo modo):conky -c~/.xmonad/.conkyrc_dwm_bar|dzen2 -w 1040 -x 660 -ta r

Le coordinate di x sono le stessedella larghezza della prima barra, inmodo che si allinei. Si possonoinoltre configurare molte opzioni didefault per Dzen2 utilizzando il file.Xresource nella forma:

dzen2.<property>: <setting>

Esempio:

dzen2.font: "TogoshiGothic:size=10"

Auspico che abbiate trovato tuttociò utile. Per chi di voi che lo

utilizzerà per abbellire Conky senzautilizzare Lua o per quelli di voi cheeseguono un gestore delle finestresenza barre di stato integrate, sareicurioso di vedere come voi ragazziutilizzerete queste informazioni. Seavete qualsiasi domanda,commento o richiesta, sonorintracciabile [email protected]. Vi prego diinserire "C&C" o "FCM" nella rigadell'oggetto dell'email, in modo danon perderla.

Ulteriori letture:http://pastebin.com/3g5TGQJJ – Ilmio file xmonad.hshttp://lswest.deviantart.com/#/d3lalq7 - Schermate

Lucas ha imparato tutto ciò che sadai ripetuti guasti al suo sistema, nonavendo cioè altra scelta che scoprirecome risolverli. Potete scrivere aLucas presso: [email protected].

COMANDA E CONQUISTA

Server Circle è un nuovo sito di domande e risposteavviato da techies.

Gli utenti con qualsiasi livello di esperienza possonoporre gratuitamente domande tecniche su tutto ciò cheriguarda i server e ricevere informazioni da esperti difiducia, che sono valutati dalla comunità.

Con il tempo si possonoguadagnare punti reputazionee anche ricompensefinanziarie, contribuendo arispondere alle domande dialtre persone.

http://www.servercircle.com

NOTA: Server Circle non è affiliato, ne appoggiato, da Full Circle magazine.

full circle magazine n. 51 7 indice ^

HHOOWW--TTOOScritto da Greg Walters PPrrooggrraammmmaarree iinn PPyytthhoonn -- PPaarrttee 2255

A lcuni di voi hannolasciato commenti sugliarticoli dedicati allaprogrammazione di GUI e

su quanto vi siano piaciuti. Comerisposta inizieremo a dareun’occhiata ad un diverso gruppo distrumenti per creare interfaccegrafiche, chiamato Tkinter. Si trattadegli strumenti “ufficiali” percreare GUI in python. Tkinter è incircolazione da parecchio e si èfatto una brutta fama per il suostile un po’ retró. Recentemente lecose sono cambiate così pensopossiamo cercare di sfatare questopregiudizio.NOTATE - Tutto il codice quipresentato riguarda unicamentePython 2.x. In uno dei prossimiarticoli parleremo di Tkinter conPython 3.x. Se siete “costretti” ausare la versione 3.x sostituitel’istruzione import con “fromtkinter import *”.

Una breve storia equalche antefatto

TKinter sta per “Tk interface”,interfaccia Tk. Tk è un linguaggio di

programmazione unico e il moduloTkinter permette di usarne icomponenti grafici. Ci sono diversiwidget nativi. Il contenitore dettoToplevel (la finestra), pulsanti,etichette, cornici, campi di testo,pulsanti di selezione singola omultipla, canvas, campi di testomulti-riga ed altri. Ci sono moltimoduli che aggiungono ulteriorifunzionalità. Questo mese ciconcentreremo su 4 widget. IlToplevel (da questo momentosemplicemente finestra radice),cornici, etichette e pulsanti. Nelprossimo articolo ci occuperemopiù approfonditamente di altriwidget.

In pratica il contenitore di altolivello contiene gli altri widget. Sitratta della finestra radice omaster. All’interno di questaposizioniamo i controlli chevogliamo usare nel nostroprogramma. Ciascuno di questi, adeccezione della finestra principale,ha un genitore. Nonnecessariamente il genitore deveessere la finestra. Può essere unaltro widget. Di più a riguardo ilmese prossimo. Questo mese tutti i

widget avrannocome genitore lafinestra principale.

Per posizionare evisualizzare i widgetfigli, dobbiamousare la cosiddetta“gestione geometrica”. Si tratta dicome i vari componenti sonoinseriti nella finestra. La maggiorparte dei programmatori usa unodei tre tipi di organizzazione, pack,grid o place. In base alla mia umileopinione il metodo pack è moltosciatto. Lascio a voi constatarlo. Ilmetodo di gestione place permetteun accurato posizionamento deiwidget, ma può risultarecomplicato. Ne parleremo in unodei prossimi articoli. Per questavolta ci concentreremo sul metodogrid, a griglia.

Pensate a un foglio di calcolo. Cisono righe e colonne. Le colonnesono verticali, le righe orizzontali.Ecco una semplicerappresentazione testuale degliindirizzi delle celle in una tabella di5 colonne e 4 righe (in alto adestra).

Allora, il genitore contiene lagriglia, i widget vanno nelle celle. Aprima vista questo può sembraremolto limitante. Però i widgetpossono estendersi e occupare piùcelle di una colonna, di una riga o dientrambe.

Primo esempio

Il nostro primo esempio èMOLTO facile (solo quattro righe),ma è un buon inizio.

from Tkinter import *

root = Tk()

button = Button(root, text ="Hello FullCircle").grid()

root.mainloop()

Allora, cosa abbiamo fatto? Lariga uno importa la libreria Tkinter.Nella seguente, istanziamo

COLONNE - >RIGHE| 0,0 | 1,0 | 2,0 | 3,0 | 4,0 |

| | 0,1 | 1,1 | 2,1 | 3,1 | 4,1 || 0,2 | 1,2 | 2,2 | 3,2 | 4,2 || 0,3 | 1,3 | 2,3 | 3,3 | 4,3 |

full circle magazine n. 51 8 indice ^

PROGRAMMARE IN PYTHON - PARTE 25l’oggetto Tk usando root (Tk èparte di Tkinter). Ecco la riga tre:

button = Button(root, text ="Hello FullCircle").grid()

Creiamo un pulsante chiamatobutton, impostiamo come suogenitore la finestra root,impostiamo il suo testo a “HelloFullCircle” e lo sistemiamo nellagriglia. Per finire, chiamiamo ilmainloop della finestra. Moltosemplice dalla nostra prospettiva,ma molto avviene dietro la scena.Per fortuna, non dobbiamo capirloin questo momento.

Eseguite il programma eosservate cosa accade. Sul miocomputer la finestra principale èmostrata nell’angolo in basso asinistra dello schermo. Nel vostrocaso, potrebbe essere da tutt’altraparte. Sistemiamo la cosa con ilprossimo esempio.

Secondo esempio

Questa volta creeremo unaclasse chiamata App. Conterrà lanostra finestra. Iniziamo.

from Tkinter import *

È l’istruzione per la libreria

Tkinter.

Definiamo la nostra classe e,nella funzione __init__,configuriamo i widget e liposizioniamo nella griglia.

La prima riga nella routine__init__ crea una cornice (frame)che sarà il genitore di tutti gli altriwidget. Il genitore della cornice è lafinestra (widget Toplevel). Quindidefiniamo una etichetta e duepulsanti. Osserviamo la riga checrea l’etichetta.

self.lblText = Label(frame,text = "This is a labelwidget")

Abbiamo creato l’etichettachiamandola self.lblText. È eridatadall’oggetto Label. Impostiamo ilsuo genitore (frame) e il testo chevogliamo visualizzare (text = “this isa label widget”). Tutto quì.

Potremmo fare di più, ma per ilmomento è sufficiente. A seguireconfiguriamo i due pulsanti di cuiabbiamo bisogno:

self.btnQuit = Button(frame,text="Quit", fg="red",command=frame.quit)

self.btnHello = Button(frame,text="Hello",command=self.SaySomething)

Assegnamo un nome, il lorogenitore (frame) e il testo damostrare. btnQuit ha l’attributo fgimpostato su “red”. Avrete intuitoche serve a colorare di rosso ilcolore in primo piano o il colore deltesto. L’ultimo attributo serve aconfigurare il comando di supporto(callback) che vogliamo utilizzarequando l’utente fa clic sul pulsante.In questo caso si tratta diframe.quit, che termina ilprogramma. È una funzionepredefinita, quindi non dobbiamo

crearla. Nel caso di btnHello sitratta della funzione chiamataself.SaySomething. Questadobbiamo crearla, ma primaabbiamo altro da fare.

Dobbiamo inserire i widget nellagriglia. Ecco ancora le righe:

frame.grid(column = 0, row =0)

self.lblText.grid(column = 0,row = 0, columnspan = 2)

self.btnHello.grid(column =0, row = 1)

self.btnQuit.grid(column = 1,row = 1)

Prima assegnamo una griglia allacornice. Quindi impostiamol’attributo grid di ciascun widgetcon la posizione nella griglia.Notate la riga columnspan perl’etichetta (self.lblText). Serve perfar occupare all’etichetta due

class App:def __init__(self, master):

frame = Frame(master)self.lblText = Label(frame, text = "This is a label widget")self.btnQuit = Button(frame, text="Quit", fg="red", command=frame.quit)self.btnHello = Button(frame, text="Hello", command=self.SaySomething)frame.grid(column = 0, row = 0)self.lblText.grid(column = 0, row = 0, columnspan = 2)self.btnHello.grid(column = 0, row = 1)self.btnQuit.grid(column = 1, row = 1)

full circle magazine n. 51 9 indice ^

colonne. Poiché abbiamo solo duecolonne, allora si tratta dell’interalarghezza dell’applicazione. Orapossiamo creare la funzione disupporto:

def SaySomething(self):

print "Hello to FullCircleMagazine Readers!!"

Questo, semplicemente, stampanel terminale il messaggio “Hello toFullCircle Magazine Readers!!”

Per finire instanziamo la classeTk, la nostra classe App, edeseguiamo il ciclo principale.

root = Tk()

app = App(root)

root.mainloop()

Proviamola. Ora le coseeffettivamente funzionano. Ma dinuovo la posizione della finestra èinappropriata. Sistemiamola nelprossimo esempio.

Terzo esempio

Salvate l’ultimo esempio comeexample3.py. È tutto esattamenteuguale tranne che per una riga. È infondo alla nostra funzioneprincipale. Ecco le righe precedenticon quella nuova:

root = Tk()

root.geometry('150x75+550+150')

app = App(root)

root.mainloop()

Il suo scopoè forzare lafinestra inizialead unalarghezza di 150pixel e ad unaaltezza di 75pixel. Inoltre sisceglie diposizionarel’angolo in alto asinistra a 550pixel dal

margine sinistro dello schermo e a150 dal margine superiore. Comeho ottenuto questi numeri? Hoiniziato con dei valori approssimatie li ho perfezionati un po’ alla volta.È un metodo un po’ complicato, mail risultato è meglio di niente.

Quarto esempio - Unsemplice calcolatore

Ora proviamo a realizzarequalcosa di più complicato. Questavolta creeremo unacalcolatrice “4funzioni”, ovvero con lequattro operazionibase: addizione,sottrazione,moltiplicazione edivisione.

Ci dedicheremo adessa e spiegherò man mano ilcodice (al centro a destra).

Ad eccezione dell’istruzionegeometry, questo (a sinistra)dovrebbe ora essere facile dacomprendere. Ricordate, prendetedei valori approssimati, aggiustatelie proseguite.

Iniziamo con la definizione dellaclasse e impostiamo la funzione

__init__. Configuriamo tre variabilicome segue:• CurrentValue: conterrà il valoreattuale inserito nella calcolatrice.• HolderValue: conterrà il valoreinserito prima di scegliereun’operazione.• CurrentFunction: è un semplicepromemoria dell’operazioneattualmente usata.

A seguire, definiamo la variabile

PROGRAMMARE IN PYTHON - PARTE 25

-----------------| 0 |-----------------| 1 | 2 | 3 | + |-----------------| 4 | 5 | 6 | - |-----------------| 7 | 8 | 9 | * |-----------------| - | 0 | . | / |-----------------| = |-----------------| CLEAR |-----------------

from Tkinter import *

def StartUp():global val, w, rootroot = Tk()root.title('Easy Calc')root.geometry('247x330+469+199')w = Calculator(root)root.mainloop()

class Calculator():def __init__(self,root):

master = Frame(root)self.CurrentValue = 0self.HolderValue = 0self.CurrentFunction = ''self.CurrentDisplay = StringVar()self.CurrentDisplay.set('0')self.DecimalNext = Falseself.DecimalCount = 0self.DefineWidgets(master)self.PlaceWidgets(master)

full circle magazine n. 51 10 indice ^

CurrentDisplay e l’assegnamoall’oggetto StringVar. Si tratta di unoggetto speciale di Tkinter.Qualunque widget gli vengaassegnato il valore di quest’ultimoè aggiornato automaticamente. Inquesto caso, lo useremo perconservare qualunque cosavogliamo che il widget etichetta,bé..., mostri. Dobbiamo instanziarloprima di assegnarlo al widget.Quindi usiamo la funzione nativa‘set’. Poi definiamo una variabilebooleana chiamata DecimalNext, lavariabile DecimalCount echiamiamo prima la funzioneDefineWidgets, che crea tutti iwidget, e poi PlaceWidget, che liposiziona nella finestra.

defDefineWidgets(self,master):

self.lblDisplay =Label(master,anchor=E,relief=SUNKEN,bg="white",height=2,textvariable=self.CurrentDisplay)

Precedentemente abbiamodefinito una etichetta. Però questavolta aggiungeremo altri attributi.Notate che non usiamo l’attributo‘text’. Invece assegneremol’etichetta al genitore (master),quindi imposteremo l’ancoraggio

(o, per i nostri scopi,l’allineamento) deltesto, quando vienescritto. In questocaso, stiamo dicendoall’etichetta diallineare tutto iltesto a Est o sul latodestro del widget.Esiste l’attributo justify, ma èutilizzato per i campi di testo multi-riga. L’attributo anchor ha leseguenti opzioni: N, NE, E, SE, S,SW, W, NW e CENTER. Quellopredefinito è CENTER. Doveteimmaginare una bussola. Incondizioni normali, gli unici valoridavvero utilizzabili sono E (destra),W(sinistra) e Center.

Quindi configuriamo il margine ostile visivo dell’etichetta. Le opzioni“legali” sono FLAT (piatto), SUNKEN(incavato), RAISED (rialzato),GROOVE (scanalato) e RIDGE(rialzato). Il valore predefinito, senon viene specificato nulla, è FLAT.Siete liberi di provare voi stessi lealtre combinazioni. A seguireimpostiamo uno sfondo (bg) biancoper differenziarlo un po’ dal restodella finestra. Impostiamo l’altezzaa 2 (cioè due righe di testo, nonpixel) e, per finire, assegnamo lavariabile definita un attimo fa

(self.CurrentDisplay) all’attributotextvariable. Ogniqualvolta il valoredi self.CurrentDisplay cambia,l’etichettà rifletterà talecambiamento.

Come mostrato in basso,creeremo alcuni pulsanti.

Vi ho mostrato solo quattropulsanti. Questo perché, comepotete vedere, il codice è quasiesattamente lo stesso. Di nuovo,abbiamo creato i pulsantiprecedentemente in questalezione, ma osserviamo piùattentamente cosa abbiamo fatto.

Iniziamo definendo il genitore(master), il testo che vogliamo sulpulsante, larghezza e altezza.Notate come la larghezza siaespressa in caratteri e l’altezza inrighe di testo. Se avete intenzionedi inserire un’immagine nelpulsante allora dovrete usare ipixel. Questa differenza potrebbe

confondere un po’ prima diprenderci la mano. A seguire,impostiamo l’attributo bind.Quando, negli esempi precedenti,abbiamo creato i pulsanti abbiamousato l’attributo ‘command=’ perindicare la funzione da chiamare incaso di clic dell’utente. Questavolta useremo l’attributo ‘.bind’. Èpraticamente la stessa cosa, ma piùsemplice e con la possibilità dipassare argomenti alla funzione,che è statica. Notate che stiamousando ‘<ButtonRelease-1>’ comeinnesco dell’associazione. In questocaso, vogliamo assicurarci che solodopo il rilascio del pulsante sinistrodel mouse venga chiamata lafunzione di callback. Infine,definiamo la funzione di supportoda chiamare e cosa le andremo apassare. Ora i più astuti, cioe tuttivoi, avranno notato una novità. Lachiamata ‘lambda e:’.

In Python, si usa Lambda perdefinire funzioni anonime che

PROGRAMMARE IN PYTHON - PARTE 25

self.btn1 = Button(master, text = '1',width = 4,height=3)self.btn1.bind('<ButtonRelease-1>', lambda e: self.funcNumButton(1))self.btn2 = Button(master, text = '2',width = 4,height=3)self.btn2.bind('<ButtonRelease-1>', lambda e: self.funcNumButton(2))self.btn3 = Button(master, text = '3',width = 4,height=3)self.btn3.bind('<ButtonRelease-1>', lambda e: self.funcNumButton(3))self.btn4 = Button(master, text = '4',width = 4,height=3)self.btn4.bind('<ButtonRelease-1>', lambda e: self.funcNumButton(4))

full circle magazine n. 51 11 indice ^

PROGRAMMARE IN PYTHON - PARTE 25appaiono all’interprete comeistruzioni valide. Questo cipermette di inserire segmentimultipli in una singola riga dicodice. Immaginatela come unamini-funzione. In questo casostiamo impostando il nome dellafunzione di supporto e il valore chesi vuole inviarle, oltre al tag event(e:). Parleremo piùapprofonditamente di Lambda inuno dei prossimi articoli. Per oralimitatevi a seguire l’esempio.

Vi ho fornito i primi quattropulsanti. Copiate e incollate ilcodice sopra per i pulsanti da 5 a 9e per lo 0. Sono uguali ad eccezionedel nome e del valore inviato allafunzione callback. I passi seguentisono mostrati a destra.

Le uniche cose di cui non cisiamo ancora occupati sonocolumnspan e l’attributo sticky.Come detto prima, un widget puòestendersi a più colonne o righe. Inquesto caso, si “stira” il widgetetichetta per quattro colonne.Questo è quello che determinal’attributo “columnspan”. Esiste unequivalente “rowspan”. L’attributo“sticky” dice al widget doveallineare i suoi margini. Pensate adesso a come il widget riempie la

self.btnDash = Button(master, text = '-',width = 4,height=3)self.btnDash.bind('<ButtonRelease-1>', lambda e: self.funcFuncButton('ABS'))self.btnDot = Button(master, text = '.',width = 4,height=3)self.btnDot.bind('<ButtonRelease-1>', lambda e: self.funcFuncButton('Dec'))

btnDash rende assoluto il valore inserito. 523 resta 523 e -523 diventa 523. Il pulsante btnDot inserisce ilpunto decimale. Questi esempi, e quelli sotto, usano la funzione di callback funcFuncButton.

self.btnPlus = Button(master,text = '+', width = 4, height=3)self.btnPlus.bind('<ButtonRelease-1>', lambda e: self.funcFuncButton('Add'))self.btnMinus = Button(master,text = '-', width = 4, height=3)self.btnMinus.bind('<ButtonRelease-1>', lambda e:

self.funcFuncButton('Subtract'))self.btnStar = Button(master,text = '*', width = 4, height=3)self.btnStar.bind('<ButtonRelease-1>', lambda e: self.funcFuncButton('Multiply'))self.btnDiv = Button(master,text = '/', width = 4, height=3)self.btnDiv.bind('<ButtonRelease-1>', lambda e: self.funcFuncButton('Divide'))self.btnEqual = Button(master, text = '=')self.btnEqual.bind('<ButtonRelease-1>', lambda e: self.funcFuncButton('Eq'))

Ecco i quattro pulsanti per le funzioni matematiche.self.btnClear = Button(master, text = 'CLEAR')self.btnClear.bind('<ButtonRelease-1>', lambda e: self.funcClear())

Per finire, ecco il pulsante clear. Ovviamente, ripulisce le variabili contenitore e lo schermo. Ora posizioniamoi widget nella funzione PlaceWidget. Prima inizializziamo la griglia, quindi mettiamo i widget in essa. Ecco laprima parte della routine.

def PlaceWidgets(self,master):master.grid(column=0,row=0)self.lblDisplay.grid(column=0,row=0,columnspan = 4,sticky=EW)self.btn1.grid(column = 0, row = 1)self.btn2.grid(column = 1, row = 1)self.btn3.grid(column = 2, row = 1)self.btn4.grid(column = 0, row = 2)self.btn5.grid(column = 1, row = 2)self.btn6.grid(column = 2, row = 2)self.btn7.grid(column = 0, row = 3)self.btn8.grid(column = 1, row = 3)self.btn9.grid(column = 2, row = 3)self.btn0.grid(column = 1, row = 4)

full circle magazine n. 51 12 indice ^

PROGRAMMARE IN PYTHON - PARTE 25griglia. In alto a sinistra c’è il restodei pulsanti.

Prima di procedereulteriormente diamo un’occhiata acome funziona il tutto quandol’utente preme i pulsanti.

Diciamo che l’utente vuoleinserire 563 + 127 ed ottenere larisposta. Lui premerà o farà clic(logicamente) su 5, 6, 3, quindi “+” e1, 2, 7, e infine il pulsante “=”. Comelo traduciamo in codice? Abbiamogià impostato la funzione disupporto per i pulsanti dei numeri afuncNumButton. Ci sono due modidi procedere. Possiamo mantenerel’informazione inserita comestringa e quando ne abbiamobisogno convertirla in un numero, oconservarla tutto il temposottoforma numerica. Useremo laseconda strada. Per farlo,conserveremo il valore inserito (0quando si inizia) in una variabilechiamata “self.CurrentValue”.Quando viene inserito un numero,si prende la variabile, la si moltiplicaper 10 e si aggiunge il nuovo valore.Così, quando l’utente inserisce 5, 6e 3, facciamo quanto segue...

L'utente fa clic su 5 – 0 *10 + 5 (5)

L'utente fa clic su 6 – 5 *10 + 6 (56)

L'utente fa clic su 3 – 56 *10 + 3 (563)

Ovviamente visualizziamo ilcontenuto di “self.CurrentValue”nell’etichetta.

Quindi l’utente fa clic su “+”.Prendiamo il valore in“self.CurrentValue” e lo mettiamoin “self.HolderValue” e azzeriamo“self.CurrentValue”. Quindiripetiamo il procedimento per 1, 2 e7. Quando l’utente fa clic su “=”allora sommiamo i valori di“self.CurrentValue” e“self.HolderValue”, lo mostriamo epoi ripuliamo entrambe le variabili

per continuare.

In alto c’è il codice per iniziare adefinire le funzioni di supporto.

La routine “funcNumButton”riceve il valore che le abbiamopassato alla pressione del pulsante.L’unica differenza dall’esempiosopra è quello che accade sel’utente preme il pulsante col puntodecimale (“.”). In basso, vedrete cheusiamo una variabile booleana perricordare questa occorrenza e, alclic successivo, lo gestiamo. Questoè il significato della riga “ifself.DecimalNext == True:”.Analizziamola.

L’utente fa clic su 3, poi 2, quindi

il punto decimale, poi 4 per creare“32.4”. Gestiamo i clic su 3 e 2 conla funzione “funcNumButton”.Controlliamo self.DecimalNext pervedere se il valore è vero (che inquesto caso non lo è finche non sifa clic sul pulsante “.”). In casocontrario, moltiplichiamo il valoreconservato (self.CurrentValue) per10 e aggiungiamo il valore in arrivo.Quando l’utente fa clic su “.”, lafunzione di callback“funcFuncButton” è chiamata con ilvalore “Dec”. Tutto quello chefacciamo è impostare la variabilebooleana “self.DecimalNext” avero. Quando l’utente fa clic su 4,testeremo il valore di“self.DecimalNext” e, poiché èvero, faremo una magia. Prima

self.btnDash.grid(column = 0, row = 4)self.btnDot.grid(column = 2, row = 4)self.btnPlus.grid(column = 3,row = 1)self.btnMinus.grid(column = 3, row = 2)self.btnStar.grid(column = 3, row = 3)self.btnDiv.grid(column=3, row = 4)self.btnEqual.grid(column=0,row=5,columnspan = 4,sticky=NSEW)self.btnClear.grid(column=0,row=6,columnspan = 4, sticky = NSEW)

def funcNumButton(self,val):if self.DecimalNext == True:

self.DecimalCount += 1self.CurrentValue = self.CurrentValue + (val * (10**-self.DecimalCount))

else:self.CurrentValue = (self.CurrentValue * 10) + val

self.DisplayIt()

full circle magazine n. 51 13 indice ^

PROGRAMMARE IN PYTHON - PARTE 25incrementiamo la variabileself.DecimalCount. Questa ci dicecon quanti posti decimali stiamolavorando. Quindi prendiamo ilvalore in arrivo, lo moltiplichiamoper (10**-self.DecimalCount).Questo operatore magico cifornisce la funzione “eleva allapotenza di”. Per esempio 10**2restituisce 100. 10**-2 restituisce0.01. Potrebbe accadere cheusando questa funzione si incappiin problemi di arrotondamento, ma,nel caso della nostra semplicecalcolatrice, funzionerà per lamaggior parte dei numeri decimali.Lascio a voi il compito di trovareuna funzione migliore. Prendetelocome il compito a casa per questomese.

La funzione “funcClear” azzerasemplicemente le due variabilicontenitore, quindi imposta lavisualizzazione.

def funcClear(self):

self.CurrentValue = 0

self.HolderValue = 0

self.DisplayIt()

Ora le funzioni. Abbiamo giàparlato di cosa accade con lafunzione “Dec”. La impostiamo

def funcFuncButton(self,function):if function =='Dec':

self.DecimalNext = Trueelse:

self.DecimalNext = Falseself.DecimalCount = 0if function == 'ABS':

self.CurrentValue *= -1self.DisplayIt()

La funzione ABS prende semplicemente il valore corrente e lo moltiplica per -1.elif function == 'Add':

self.HolderValue = self.CurrentValueself.CurrentValue = 0self.CurrentFunction = 'Add'

La funzione Add copia “self.CurrentValue” in “self.HolderValue”, pulisce “self.CurrentValue” e imposta“self.CurrentFunction” su “Add”. Le funzioni sottrazione, moltiplicazione e divisione fanno la stessa cosainserendo il termine appropriato in “self.CurrentFunction”.

elif function == 'Subtract':self.HolderValue = self.CurrentValueself.CurrentValue = 0self.CurrentFunction = 'Subtract'

elif function == 'Multiply':self.HolderValue = self.CurrentValueself.CurrentValue = 0self.CurrentFunction = 'Multiply'

elif function == 'Divide':self.HolderValue = self.CurrentValueself.CurrentValue = 0self.CurrentFunction = 'Divide'

La funzione “Eq” (uguale) è dove avviene la magia. Sara semplice per voi capire ora il codice seguente.elif function == 'Eq':

if self.CurrentFunction == 'Add':self.CurrentValue += self.HolderValue

elif self.CurrentFunction == 'Subtract':self.CurrentValue = self.HolderValue - self.CurrentValue

elif self.CurrentFunction == 'Multiply':self.CurrentValue *= self.HolderValue

elif self.CurrentFunction == 'Divide':self.CurrentValue = self.HolderValue / self.CurrentValue

self.DisplayIt()self.CurrentValue = 0self.HolderValue = 0

full circle magazine n. 51 14 indice ^

GregWalters è il proprietario dellaRainyDay Solutions, LLC, una società diconsulenza inAurora, Colorado eprogrammadal 1972. Ama cucinare, fareescursioni, ascoltaremusica e passare iltempo con la sua famiglia. Il suo sitowebè:www.thedesignatedgeek.com.

PROGRAMMARE IN PYTHON - PARTE 25prima con l’istruzione “if”. Cispostiamo all’“else” e, se lafunzione è qualcos’altro, ripuliamole variabili “self.DecimalNext” e“self.DecimalCount”.

Il seguente insieme di passi sonomostrati nella pagina seguente (ilbox a destra).

La funzione DisplayItsemplicemente imposta il valorenell’etichetta display. Ricordatequando dicemmo alla etichetta di“monitorare” la variabile“self.CurrentDisplay”. Quandocambia, l’etichettaautomaticamente cambia lavisualizzazione per corrisponderle.Usiamo il metodo “.set” percambiare il valore.

def DisplayIt(self):

print('CurrentValue = {0} -HolderValue ={1}'.format(self.CurrentValue,self.HolderValue))

self.CurrentDisplay.set(self.CurrentValue)

Finalmente abbiamo le righe diavvio.

if __name__ == '__main__':

StartUp()

Ora possiamo eseguire ilprogramma e provarlo.

Come sempre, il codicedell’articolo può essere trovato suPasteBin. Gli esempi 1, 2 e 3 sonoall’indirizzohttp://pastebin.com/mBAS1Umm el’esempio Calc.py si trovaall’indirizzohttp://pastebin.com/LbMibF0u

Il mese prossimo continueremocon Tkinter e i suoi tanti widget. Inun articolo futuro parleremo deldisegnatore di GUI per Tkinterchiamato PAGE. Nel frattempo,divertitevi. Penso che gradireteTkinter.

full circle magazine n. 51 15 indice ^

HHOOWW--TTOOScritto da Elmer Perry LLiibbrreeOOffffiiccee -- PPaarrttee 66

N ell'articolodi questomesescopriremoqualchenuovomododi formattare i nostridocumenti usandogli stili di

pagina, di intestazioneedipièdi pagina.Nei numeri scorsi abbiamoparlatodeglistili di paragrafoedei caratteri. Gli stili dipagina sonosimili aquesti,mahannoache fare con lageometria complessivaecon la formattazionedell'interapagina.Intestazioni epièdi pagina sono le zoneall'inizioealla finedellapagina, edisolitohanno la stessa formattazionequandosi usauncerto stile.

Inizieremocol sistemare il nostrodocumentoegli stili. Apriteunnuovodocumentodiwriter, File>Nuovo.Peravereaccessoal titolodeldocumentodobbiamoprimacambiarealcunedellesueproprietà, File>Proprietà.NellaschermataDescrizione, inserite "Questoè il titolo" cometitolodeldocumento. Lo

utilizzeremodopo,quando inizieremoacreare intestazioneepièdi pagina.PremeteOKper salvare i cambiamentifatti.

Oradobbiamoconfiguraregli stili dipagina.Neuseremotrediversi: PrimaPagina,PaginaNormale,Orizzontale.Glistili PrimaPaginaeOrizzontalegiàesistono,manoi limodificheremo.Perprimacosa creeremo il nostro stilePaginaNormale.Vogliamoche inquestostile ci siaun riquadrodi intestazioneall'iniziodellapagina, conunosfondogrigio chiaro.Aprite la finestreStili eFormattazionedaStrumenti >Stili eFormattazione, opremete sulpulsantecorrispondente (iconaqui adestra). Premete sulpulsantedegli stili di pagina (iconaadestra), fate clic destro sulla finestra, eselezionatenuovo.Comparirà laschermataStili di Pagina. InGestione, rinominate lo stile"PaginaNormale". Cambiate lo stilesuccessivo inPaginaNormale–questodirà aWriter chequandoarriveremoallafinedellapagina corrente, lui dovràcreare lapagina successiva con lo stessostileutilizzatoper laprecedente.Nellaschermata Intestazione, sceglieteAttivaIntestazione, così da inserire la zona

corrispondenteall'iniziodellapagina.Sempre inquesta schermata, premetesulpulsante "Extra".Appariràunanuovaschermata checi consentiràdiaggiungerebordi e colori di sfondoalnostro riquadrodi intestazione.NellaschermataSfondo, scegliete il coloregrigio chiaro. PremeteOK inentrambe lefinestreeconlcudiamocosì con il nostrostilediPaginaNormale.

Per lo stilePrimaPagina,modificheremoquellogiàesistente.Vogliamounmargine3" (7,5 cm)all'inizio(per lagraficadi primapagina larimandiamoaun'altra volta) eunriquadrogrigio chiaroapièdi pagina.Fate clic destro sullo stilePrimaPaginanella schermataStili e Formattazione, eselezionatemodifica.Nella schermataOrganizzazione, rendete il nostroPaginaNormale lo stile successivo (quello cioècheverràutilizzatonellaprossimapagina). La schermataPagina cipermettedimodificare imargini dellapagina stessa. Impostatea3" (7,5 cm) il

marginealto.Dopoandateallaschermatapièdi pagina, sceglieteAttiva

pièdi pagina, fate clic sul pulsante"Extra", e impostate lo sfondogrigiochiaro.

Per il nostro stileOrizzontalemodificheremoquellogiàesistente.Aggiungeremosiaun riquadrodiintestazionecheunoapièdi pagina.Fate clic destro suStileOrizzontale,quindi suModifica. Prendetevi unattimoperguardare la schermatadellapaginaenoterete che l'orientamentoèorizzontale, cheèproprio ciò chevogliamo. Inserite intestazioneepièdi

full circle magazine n. 51 16 indice ^

LIBREOFFICE - PARTE 6

Elmer Perry è Ministro dell'Infanziaad Asheville, North Carolina. I suoihobby includono web design,programmazione e scrittura. Il suosito web è eeperry.wordpress.com

pagina, e selezionateunosfondogrigiochiaroperentrambi.

Adesso siamopronti per creare ilnostrodocumento. Fatedoppio clic sullostilePrimaPaginae lapaginadel vostrodocumentosarà formattatanelmodocheabbiamodecisoprima, infatti potetevedere il riquadrogrigio chiaro in fondo.Fate clic all'internodi essoper scrivere.Primaperòvogliamoaggiungere il titolo,Inserisci >Comandodi campo>Titolo.Questoaggiungerà il titolo cheabbiamomessonelleproprietàdeldocumento.Poteteusarequestometodoper inserireil titolodeldocumentoovunquevoivogliate. Se successivamentecambierete il titolonelleproprietà,potreteaggiornare tutti i contenuti deicampi inStrumenti >Aggiorna>CampiopremendoF9sulla vostra tastiera.Scrivete "Pagina ", ricordandodi lasciareunospazio suentrambi i lati dellaparolae inserite il numerodipagina, Inserisci >ComandodiCampo>NumerodiPagina.Posizionate il cursoreall'iniziodi"Pagina"e tenetepremuto il tasto tabdella tastiera finché il numerodipagina

nonarriveràalla finedel latodestrodelriquadro. Fate clic fuori dal pièdi pagina,nel corpodel testo.

Unavolta fattoquestopoteteiniziaread inserire il vostro testo. Finitalapagina correntee iniziata la successiva,potretenotare chequestaè formattasecondo lo stilePaginaNormale conunriquadrodi intestazioneall'inizio. Inseritequi le informazioni, comeabbiamofattocon il pièdi paginaprecedente.Assicuratevi di utilizzare i campi,specialmenteper ciò che riguarda ilnumerodipagina.Questocampocitorneràutileunavoltaarrivati alla terzapagina.Quipotretenotare che leinformazioni nell'intestazionesonostatecopiateautomaticamenteeche ilnumerodipaginaè statoaggiornatopercorrispondereaquellodellapaginacorrente.

Perproseguire, inseriamounapaginaOrizzontale. Primadi andarenellapaginanuova, Inserisci > Interruzionemanuale.Selezionate InterruzionediPaginae,sotto lo stile, sceglieteOrizzontale. Così

facendo lanuovapagina sarà con illayoutOrizzontale.DalmomentochequestoèunostilediversodaquellodellanostraPaginaNormale, dobbiamoesserenoi a inserire le informazioni nelriquadro intestazioneenelpièdi pagina.Questopuò rivelarsi utile: seavetebisognodi informazioni diversenelleintestazioni epièdi paginaperalcunepagine, basta inserireunapagina conunostilediversodal normale.Unavoltacompletata la vostrapaginaorizzontalecreateun'altra interruzionedipagina(Inserisci > Interruzionemanuale) conunostilediPaginaNormale.Viaccorgerete che lanumerazionedellepaginecontinua, includendoanche la

paginao lepagineorizzontali. Senonvolete chequesteultimesiano inseritenel conteggio, poteteaggiustare lanumerazionedellepaginemanualmentenella finestradi dialogodi Interruzionemanuale.

Writer rendemolto facileaggiungerepaginecondiversi stili eorientamenti, comeanche intestazioni epièdi paginaautomatici. Proprioquestiultimipotete crearli delledimensioni chevoleteepotrannocontenere tutte leinformazioni chedesiderate inserirvi. Icampi vi aiutanoa tenere certeinformazioni costanti nel vostrodocumento, lasciandovi scrivere senzapreoccuparvi troppodellanumerazionedellepagine.

Nelprossimonumero lasceròWriterpermostrarvi comecreareunsemplicedatabaseusando il Calce, subitodopo,useremo il nostro fogliodi calcolopercreareuna letteraprestampata.

“ Writer rende moltofacile aggiungerepagine con diversi stilie orientamenti, comeanche intestazioni e pièdi pagina automatici..

full circle magazine n. 51 17 indice ^

HHOOWW--TTOOScritto da Daniel Holbach SSvviilluuppppooddii UUbbuunnttuu,, ppaarrttee33 -- CCoorrrreezziioonneeddeeii BBuugg

Se avete seguito le istruzioniper ottenere i preparativi perlo sviluppodi Ubuntu, dovrestiavere tutto a posto epronto a

partire.

Come si può vedere nell'immaginequi a destra, non ci sono sorprese infase di correzionedei bug inUbuntu: sitrova unproblema, si ottiene il codice,si lavora alla correzione, si testa, sicaricano lemodifiche in Launchpad e sichiede che vengano revisionate e unite.In questa guida eseguiremo tutti i passinecessari uno aduno.

Trovare il problema

Ci sonoun sacco dimodi diversi pertrovare le cose su cui lavorare.Potrebbe essere unbug report cheavete incontrato voi stessi (che vi dàunabuonaoccasioneper testare lacorrezione), o unproblemanotatoaltrove,magari in un altro bug report.

Harvest è dove teniamo tracciadelle varie liste TODOche riguardanolo sviluppodi Ubuntu. Esso elenca i bugche sono stati risolti in UpstreamogiàinDebian, elenca piccoli bug (lichiamiamo 'Bitesize'), e così via. Dategli

un'occhiata e trovateil vostro primobug sucui lavorare.

Capire cosasistemare

Se non si conosceil pacchetto sorgentecontenente il codicechepresenta ilproblema,ma siconosce il percorsodel programmainteressato nelproprio sistema, è possibile scoprire ilpacchetto sorgente chedovretelavorare.

Diciamo chehai trovato unbug inTomboy, una nota applicazioneper ildesktop. L'applicazione Tomboypuòessere avviata eseguendo/usr/bin/tomboy sulla riga di comando.Per trovare il pacchetto binario checontienequesta applicazione, utilizzarequesto comando:

apt-file find /usr/bin/tomboy

Il comandomostrerà:

tomboy: /usr/bin/tomboy

Si noti che la parte cheprecede iduepunti è il nomedel pacchettobinario. Capita spesso che il pacchettodi origine e il pacchetto binario abbianonomi diversi. Questo èmolto comunequandounpacchetto sorgente singoloè usato per costruire più pacchettibinari diversi. Per trovare il pacchettosorgente per unparticolare pacchettobinario, digitare:

apt-cache show tomboy | grep^Source:

In questo caso, non viene stampatonulla, nel senso che tomboy è anche il

nomedel pacchetto binario. Unesempio in cui i nomi dei pacchettisorgente ebinario sonodiversi èpython-vigra.Mentre questo è il nomedel pacchetto binario, il pacchettosorgente è in realtà libvigraimpex epuòessere trovato conquestocomando (e il suo risultato):

apt-cache show python-vigra |grep ^Source:

Source: libvigraimpex

Ottenere il codice

full circle magazine n. 51 18 indice ^

HOWTO - SVILUPPODIUBUNTU3 - CORREZIONEDEI BUG

Q uando si conosce ilpacchetto sorgente su cuilavorare, si desideraottenere una copia del

codice sul sistema, inmodo che si possaeseguire il debug.Questo è fatto'ramificando' il ramodel pacchettosorgente corrispondente dal pacchettosorgente. Launchpadmantiene ramidel pacchetto sorgente per tutti ipacchetti in Ubuntu. Una volta che siottiene unpezzodi sorgente in locale,è possibile analizzare i bug, creare unacorrezione e caricare il fix proposto diLaunchpad, sotto formadi un ramoBazaar.Quando si è soddisfatti dellacorrezione, è possibile presentare una'proposta di unione', che chiederà adaltri sviluppatori di Ubuntu diesaminare e approvare lamodifica. Sesonod'accordo con lemodificheapportate, uno sviluppatore di Ubuntucaricherà la nuova versionedelpacchetto perUbuntu inmodo chetutti possanoottenere benefici dallavostra eccellente correzione e siottiene unpo' di credito.Ora siete sullabuona strada per diventare unosviluppatore di Ubuntu! Adesso, nellesezioni che seguono, verrannodescritte le specifiche su comeramificare il codice, fornire il proprio fixe chiedere una revisione.

Lavorare su una

correzione

Ci sono interi libri scritti sulla ricercadi bug, sulla correzione, sul test, ecc. Sesiete completamente nuovi allaprogrammazione, cercate dicorreggere prima i bugpiù facili, comeovviamente gli errori di battitura.Cercate dimantenere lemodifiche informaminimaedocumentate lemodifiche e le ipotesi inmodo chiaro.

Primadi lavorare da solo su unacorrezione, assicuratevi di indagare senessun altro ne ha già prodotta una osta attualmente lavorando su unacorrezione. Buone fonti da controllaresono:

• Upstream (eDebian) bug tracker (bugaperti e chiusi),

• nella cronologia delle revisioniUpstream (o le release più recenti)potrebbero avere risolto il problema,

• bugo caricamenti di Debian o altredistribuzioni.

Se si trova unapatch per risolvere ilproblema, diciamo, collegato a unbugreport, eseguire questo comandonelladirectory della sorgente chedovrebbeapplicare la patch:

patch-p1 <../bugfix.patch

Fare riferimento alla patch (1) delmanpageper le opzioni e gli argomenticome -dry-run,-p <num>, ecc

La correzione di test

Per costruire una pacchettizzazioneper i test con lemodifiche, eseguirequesti comandi:

bzr bd -- -S -us -uc

pbuilder-dist <release> build.. /<pacchetto>_<versione>.dsc

Questo creerà unpacchettosorgente dal contenuto ramo (-us-ucserve solo adomettere il passo dellafirmadel pacchetto di origine) epbuilder-dist costruirà il pacchetto daisorgenti per qualsiasi versione scelta.

Una volta che la pacchettizzazioneriesce, installate il pacchetto da~/pbuilder/<release>_result/ (usandosudodpkg-i <package>_<versione>.Deb). Quindi verificare se il bug è statorisolto.

Documentare lacorrezione

Èmolto importante documentare ilcambiamento inmodo sufficienteaffinché gli sviluppatori che

guarderanno il codice in futuro nondovranno indovinare quale è stato ilvostro ragionamento equali fossero ivostri presupposti. Ogni pacchettosorgente di Debian edi Ubuntu includeil Debian/changelog, in cui vengonotracciati i cambiamenti di ognipacchetto caricato.

Ilmodopiù semplice di aggiornare ilchangelog èquello di eseguire:

dch-i

Questo aggiungerà una voce nellacopia del changelogper voi e lanceràun editor dove sarà possibile riempiregli spazi vuoti. Un esempio di questopotrebbe essere:

specialpackage (1.2-3ubuntu4)natty; urgency = low* Debian/control: description

to include frobnicator (LP:#123456)- Emma Adams<[email protected]> Sat, 17lug 2010 02:53:39 0200

dchdovrebbegià compilare laprima e l'ultima linea di tale voce delchangelogper voi. La linea 1 ècostituita dal nomedel pacchettosorgente, il numerodi versione, inquale release di Ubuntu è caricato,l'urgenza (che quasi sempre è 'low').L'ultima riga contiene sempre il nome,l'indirizzo email e la data (in formato

full circle magazine n. 51 19 indice ^

RFC5322), del cambiamento.

Tolta quella dimezzo,concentriamoci sul vero changelogstesso: èmolto importantedocumentare:• dove è stato fatto il cambiamento• cosa è stato cambiato• dove è avvenuta la discussione sulcambiamento

Nel nostro (molto scarso) esempio,l'ultimopunto èdefinito da (LP:#123456) che si riferisce a Launchpadbug123456. Segnalazioni di bug, lediscussioni inmailing list o lecaratteristiche tecniche sonodi solitouna buona informazione razionale dafornire per un cambiamento. Comebonus, se si utilizza ilmetodo LP:#notazione<numero> Launchpadper ibug, il bug sarà automaticamentechiuso quando il pacchetto vienecaricato inUbuntu.

Consegnare la correzione

Con la voce del changelog scritto esalvato, si può semplicementeeseguire:

debcommit

e il cambiamento sarà consegnato(localmente) con la voce del changelog,comeunmessaggio di commit.

Per inviarlo su Launchpad, come ilnomedel ramo, è necessario attenersial seguente nomenclatura:

lp:~<yourlpid>/ubuntu/<release>/<pacchetto>/<branchname>

Questo potrebbe, ad esempio,essere

lp:~emmaadams/ubuntu/natty/specialpackage/fix-for-123456

Quindi, se eseguite soltanto

bzr pushlp:~emmaadams/ubuntu/natty/specialpackage/fix-for-123456

bzr lp-open

dovrebbe essere tutto a posto. Ilcomandopushdovrebbe inviarlo aLaunchpad e il secondo comando apriràla pagina del ramo in questione nelvostro browser. Lì, trovate il link "(+)Proporre per la fusione" e fate clic perrichiedere la recensionedelcambiamentodaqualcuno e inserirlo inUbuntu.

Il prossimomese: una panoramicadella struttura della directory diDebian.

HOWTO - SVILUPPODIUBUNTU3 - CORREZIONEDEI BUG

Z e r o D ow n t i m e

Below Zero is a Co-located Server Hosting specialist in the UK.

Uniquely we only provide rack spaceand bandwidth. This makes our servicemore reliable, more flexible, morefocused and more competitively priced.We concentrate solely on the hosting ofCo-located Servers and their associatedsystems, within Scotland's Data Centres.

At the heart of our networkinginfrastructure is state-of-the-art BGP4routing that offers optimal datadelivery and automatic multihomedfailover between our outstandingproviders. Customers may rest assuredthat we only use the highest quality ofbandwidth; our policy is to pay more forthe best of breed providers and because we buy in bulk this doesn'timpact our extremely competitive pricing.

At Below Zero we help you to achieve Zero Downtime.

www.zerodowntime.co .uk

full circle magazine n. 51 20 indice ^

HHOOWW--TTOOScritto da Ronnie Tucker UUssaarree KKDDEE 44..66 ppaarrttee 22 -- EEffffeettttii

Sembra che là fuori vi sianopiù utenti KDE di quantopensassi. Non poche personemi hanno scritto chiedendo

una Parte 2 sull'usare KDE. Così eccoqua. Vi mostrerò come speziare ilvostro desktop KDE abilitando glieffetti Kwin (ai quali deve pensarsicome un Compiz Fusion nativo KDE) eil cambio tra effettiabilitati/disabilitati emodificando laconfigurazione di alcuni effetti.

Con tutti gli effetti disabilitati,KDE è un po' insipido:

Dirigetevi inSistema >Impostazioni disistema e fatedoppio clic suEffetti deldesktop:

Qui è dove avviene lamagia.Spuntate la casella accanto a 'Abilitagli effetti del desktop' poi fate clic sulpulsante 'Applica' in basso a destradella finestra (destra):

Otterrete una finestra pop-up che

vi chiede se tutto sembraOK. Aveteparecchi secondi per replicarefacendo clic su Accetta. I vostri effettidesktop adesso sono attivi! Se ilvostro display dovesse essereincapace di abilitare gli effetti deldesktop, KDE ve lo dirà e non sioscurerà. Èmolto piacevole in questomodo.

Probabilmente il vostro tema nonmostramolto nellamodalità deglieffetti, così di solito io ritorno allafinestra Tema del desktop eassegno/riassegno un tema desktop.Questo assicura che il vostro temastia utilizzando i nuovi sgargiantieffetti desktop, come la sfocatura o latrasparenza.

Nella scheda 'Tutti gli effetti'vedrete un elenco degli effetti

disponibili. Ma la prima cosa chemipiace fare è assegnare degli effettiagli angoli dello schermo, il che sitrova in 'Comportamento dello spazio

full circle magazine n. 51 21 indice ^

HOWTO - USARE KDE 4.6 PARTE 2 - EFFETTIdi lavoro':

Io assegno una griglia desktop allamia sinistra in alto e il cubo allamiadestra in alto, ma potete assegnarlicome ritenete adatto.

Ritornando a Effetti del desktop(scheda Generale) potetemodificarelo scambio delle finestre.Personalmente preferisco "Scambiafinestre a pila"ma ve ne sonoparecchi da scegliere. Sotto quellopotetemodificare lo scambio deidesktop. Ame piace scivolare. Sottoquello avete la velocità di animazione.

Andando di nuovo nella scheda'Tutti gli effetti' è il momento diconfigurare i vostri effetti. Prima ditutto il vecchioclassico le FinestreTremolanti. Fare clicsul pulsante con lachiave inglese sulla destra del nomedi ciascun effetto e vi permetterà dimodificarne le impostazioni.

Gli articoli di Aspetto vipermetteranno di cambiare comevienemostrata o chiusa una finestra.Le animazioni spaziano da Plana, in cuila finestra svanisce dolcemente dapiccola a grande fino ad altreanimazioni che fanno esplodere lefinestre in frammenti.

Potete anche personalizzare leimpostazioni del tasto per abilitare odisabilitare un effetto. In questoesempio ho assegnato Ctrl+F12 periniziare/fermare la caduta di fiocchi dineve sul mio desktop. Ciò viene fattofacendo clic sull'attuale scorciatoia datastiera, facendo clic su Personalizzaed eseguendo la combinazione ditasti per assegnarla. Effetti deldesktop vi dirà anche se quellacombinazione di tasti è usata altrovee vi da l'opzione di assegnare quella

combinazione di tasti all'effettoattualmente selezionato,rimuovendolo così dal suo effettoprecedente.

Vi sono una quantità di cose chepotete fare con gli effetti che, nonsoltanto fanno sembrare bello ildesktop, ma vi aiutano anche nel

vostro lavoro con caratteristichecome offuscare/sfocare le finestrenon selezionate/bloccate,od ombreggiare lo sfondosottolineando cosìl'accesso daamministratore e simili.

Come la volta scorsaho registrato il miodesktopmentre rivedevoquesto tutorial cosìpotrete vedereabilitati/modificati glieffetti di cui sopra nelmiovideo su YouTubehttp://www.youtube.com/watch?v=YSSE-xO9vT0

Prima di lasciarvi a

giocare con le vostre finestretremolanti e i cubi, ho pensato didarvi una lista di applicazioniequivalenti. È scoraggiante cercare ditrovare il vostro equivalente KDE diqualcosa, così (nella paginasuccessiva) ho elencato alcune delleapplicazioni più comunemente usatee installate inmodo predefinito inUbuntu insieme alle loro cugine KDE.

Ci sono delle domande riguardo KDEsu cui vi piacerebbe un articolo?Mandatemi una email [email protected] evedrò se riesco a realizzare il vostrodesiderio.

full circle magazine n. 51 22 indice ^

HOWTO - USARE KDE 4.6 - EQUIVALENTI

Ubuntu: Kubuntu: Scopo:

Grafica:Evince Okular Visore di documentigThumb GwenView Visore d'immagini

Internet:Evolution Kmail EmailFirefox Rekonq BrowserPidgin Kopete Messaggistica istantaneaTransmission Ktorrent BitTorrent

Ufficio:LibreOffice LibreOffice Ufficio

Suono/Video:Brasero K3B MasterizzazioneRhythmbox Amarok AudioMovie Player Dragon Player Video

Utilità:Nautilus Dolphin Gestore di fileGEdit Kate Editor di testiScreenshot KSnapShot Cattura schermateTerminal Konsole Immissione comandiArchive Manager Ark Compressore di file

Menzioni d'onore:

Marbleèunmappamondoeatlantevirtuale chepoteteusareper impararedipiù sullaTerra: potete farepanoramicheezoomdaogniparteepotete cercare luoghi e strade Unclicdelmousesull'etichettadi un luogovifornirà il rispettivoarticolodiWikipedia.

Kdenlive è un potente e intuitivoeditor video multi-traccia cheinclude molte tecnologie videorecenti.

Kfilebox è una piccola applicazioneche vi consente una rapida e facileinstallazione del client DropBoxsenza installare Gnome/Nautilus -http://kdropbox.deuteros.es/

Klipperèunaapplicazioneperappunti.L'articolodavoicopiatoperultimosaràquelloincollatoinmodopredefinitomaglialtrisarannoimmagazzinati inunbuffercosìchepossiatesceglieredi incollarelevostreselezioni inunordinedifferente.ConverteanchegliURLincodiciabarre.

full circle magazine n. 51 23 indice ^

HHOOWW--TTOOScritto da Ronnie Tucker SSccrriivveerree ppeerr FFuullll CCiirrccllee MMaaggaazziinnee

GuideL'unica regolaper scrivereun

articoloè chedeveessere comunquecollegatoaUbuntuoadunadellemoltederivatediUbuntu (Kubuntu,Xubuntu, Lubuntuecc). Scrivete ilvostroarticolo conqualunquesoftwarescegliete.Vorrei raccomandareOpenOffice,maCORTESEMENTECONTROLLATEL'ORTOGRAFIAELAGRAMMATICA!

ScritturaVipreghiamodi indicarenel vostro

articolodovevorreste chevenisseposizionataun'immagine inparticolare.Per favorenonmettete immaginiincorporatenel vostrodocumentoOpenOffice.

ImmaginiLe immagini dovrebberoessere in

formatoJPGconunabassacompressione.

Riguardo ledimensionidell'immagine: seaveteundubbio,inviateci l'illustrazioneadimensionepienaeprovvederemonoi aricampionare l'immagine.

Se state scrivendouna recensioneper cortesia seguite le lineeguida chesonomostratequi.

Perunapiùdettagliata listadelleregole stilisticheepergli errori piùcomuni si pregadi fare riferimentoall'indirizzo:https://wiki.ubuntu.com/UbuntuMagazine/Style - Inbreve:OrtografiaUS, nienteparole combinate (es: l33t) enientefaccine.

Quandosietepronti apresentare ilvostroarticoloper favore inviateceloall'indirizzoemail:[email protected]

Senonsiete capaci di scrivereunarticoloma frequentate il forumdiUbuntu, inviateci gli argomentiinteressanti chepotremmostampare.

Scrittori non-inglesiSe la vostra linguanativanonè

l'inglese, nonpreoccupatevi. Scrivetel'articoloeun revisoredi bozze loleggeràper voi e correggeràqualunqueerroregrammaticaleeortografico.Nonsolo, stateaiutando la rivistae lacomunità,manoi vi aiuteremoamigliorare il vostro inglese!

RECENSIONI

Giochi/ApplicazioniMentre scrivete recensioni riguardanti i giochi o leapplicazioni, vi preghiamo di essere chiari nello scrivere:• titolo del gioco• chi ha creato il gioco• se è gratis o a pagamento• dove lo si può trovare (link download/URL della home page)• se è un gioco nativo per Linux o avete usato Wine• il vostro giudizio con un massimo di cinque• un sommario con punti positivi e negativi

HardwareMentre scrivete una recensione riguardante l'hardware perfavore siate chiari nello scrivere:• marca e modello dell'hardware• in quale categoria vorreste inserire questo hardware• eventuali difetti che si potrebbero incontrare durante l'utilizzodell'hardware• se è facile fare in modo che l'hardware lavori con Linux• se è necessario aver bisogno di usare driver Windows• il vostro giudizio con un massimo di cinque

Non bisogna essere esperti per scrivere unarticolo: scrivete una recensione che riguardai giochi, le applicazioni e l'hardware che usatetutti i giorni.

full circle magazine n. 51 24 indice ^

LLIINNUUXX LLAABBScritto da Frank Denissen CCrreeaarree uunn pprroopprriioo rreeppoossiittoorryy

T utti i software installati inmodo predefinito su unsistema basato su Debian(come Ubuntu e Kubuntu)

è organizzato in pacchetti. Ipacchetti a loro volta sonocontenuti in repository. Il CD diinstallazione contiene per l'appuntoun repository, ma nella maggiorparte dei casi si accede ai repositorydirettamente attraverso i server,chiamati mirror. I mirror contengonouna copia del repository originalecreato dal proprietario delladistribuzione. Ogni nuova versionedi un pacchetto viene aggiunta alrepository della distribuzione e diconseguenza copiata su tutti imirror.

Un sistema (il vostro per esempio)può scaricare pacchetti da uno o piùrepository. L'elenco dei repositoryutilizzati da un sistema si trova neifile /etc/apt/sources.list e/etc/apt/sources.list.d/*.list, èpossibile trovare l'elenco anche nelmenù Impostazioni degli strumentidi gestione dei pacchetti comeSynaptic (Repository) e kPackageKit(Origine dei Pacchetti).

Il contenuto di tutti i repositoryviene riletto ogni volta che si esegueil comando "apt-get update" oquando viene premuto il pulsante"Aggiorna" in Synaptic. Questaoperazione consente di verificarequale pacchetto dispone di unaversione aggiornata e diconseguenza proporrel'aggiornamento.

È inoltre possibile creare un propriorepository per usi personali.

Perché si creano irepository privati?

Ebbene, io possiedo un buonnumero di pacchetti non disponibilinei repository standard. Inoltrescarico pacchetti dal sito delproduttore del mio scannermultifunzione e della mia schedagrafica, questi driver hanno comerequisito alcuni pacchetti non piùdisponibili nelle nuove versioni diUbuntu, infine ho dei pacchetticreati da me.

Ogni volta che una nuova versionedi questi pacchetti è disponibile, laaggiungo al mio repository privato.

In questo modo, quando i miei figlitornano a casa dall'università,possono fare clic su "Aggiorna" inSynaptic e installare sui loro portatilile nuove versioni dei pacchetti.Trovo questo metodomoltosemplice e, in aggiunta, migarantisce che ogni nuova versionedi un pacchetto verrà scaricata edinstallata su ogni computer senzanessun intervento da parte mia.

Il procedimento

Per creare un repository sononecessarie cinque operazioni:

• Installazione degli strumenti digestione dei pacchetti

• Generazione di una firma digitale

• Creazione dell'indice del repositorye dei relativi file di configurazione

• Aggiunta dei pacchetti alrepository e generazione delrepository. Ripetizione deiprecedenti passi ogni volta che siaggiunge un nuovo pacchetto o unanuova versione.

• Aggiunta del nuovo repositoryall'elenco dei repository usati dallostrumento di gestione dei pacchettipresente sul vostro sistema.Ripetere questo passo per ognisistema gestito.

Nel caso in cui i sistemi gestiti sianomolti, si dovrà scegliere se renderedisponibili i repository attraverso unserver web (http), oppureutilizzando una directory condivisacon NFS o Samba.

Passo n. 1

Installare i pacchetti apt-utils, gzip,make e gnupg. Nel caso si decida didistribuire i pacchetti via web sarànecessario installare anche unserver web, come ad esempioapache2.

Passo n. 2

Nel caso non si disponga di unafirma digitale, generarne una con ilseguente comando:

gpg --gen-key

Vi verranno poste molte domande.Le più importanti sono relative al

full circle magazine n. 51 25 indice ^

nome, indirizzo e-mail e alla parolad'ordine. Vi verrà invece propostoun valido suggerimento per tutte ledomande più difficili.

Passo n. 3

Creare una directory in cuimemorizzare i pacchetti. Questadirectory dovrà essere accessibile datutti i vostri sistemi.

/var/www/repository potrebbeessere una valida scelta nel caso sidecida di utilizzare il server webapache, in alternativa si può optareper /mnt/repository nel caso sidecida di utilizzare NFS o Samba.

All'interno di questa directorydovranno essere presenti i seguentifile: la chiave pubblica, lo steer-fileper apt-ftparchive e unmakefile.

È possibile creare la chiave pubblicacon il seguente comando:

gpg --export -a >repository.gpg

Lo steer-file apt-ftparchive.conf puòessere creato con un editor di testo(ad es. kate), il suo contenuto èmostrato nel riquadro in alto adestra (sostituite "John Doe" con ilvostro nome).

Il contenuto del makefile è mostratonel riquadro in basso a destra, sipresti attenzione al fatto che tuttele righe, ad eccezione della prima,incominciano con il carattere ditabulazione (non sono spazi!).

Passo n. 4

Copiare i vostri pacchetti binari esorgenti nella directory.

Come esempio utilizzerò unmiopacchetto che associa alcunicomandi ai tasti multimedialipresenti sulla mia tastiera Cherry. Ilpacchetto binario si chiama cherry-keyboard_1.1_all.deb mentre irelativi pacchetti sorgenti sonocherry-keyboard_1.1.dsc, cherry-keyboard_1.1_i386.changes echerry-keyboard_1.1.tar.gz.

Se preferite, è possibile mettere ipacchetti in sottodirectory: lostrumento apt-ftparchive liricercherà in tutte le sottodirectory.

A questo punto non resta cheandare nella directory che contieneil repository e digitare "make" sullariga comando: il repository verràcreato. Al termine dell'esecuzione

verrà chiesto di inserire la parolad'ordine associata alla firmadigitale.

L'esecuzione di "make" va ripetutaogni volta che un pacchetto vieneaggiunto oppure aggiornato.Questa operazione aggiornerà ilrepository.

Passo n. 5

LINUX LAB - CREARE UN PROPRIO REPOSITORY

APT {FTPArchive {

Release {Origin "John Doe";Label "John Doe";Suite custom;Codename private;Architecture any;Description "Private packages by John Doe";

}}

}

Tutto:apt-ftparchive packages . > Packagesgzip -9 < Packages > Packages.gzapt-ftparchive sources . > Sourcesgzip -9 < Sources > Sources.gzapt-ftparchive contents . > Contentsgzip -9 < Contents > Contents.gzrm Release.gpg || trueapt-ftparchive --config-file=apt-ftparchive.conf release . > Releasegpg -b -o Release.gpg Release

full circle magazine n. 51 26 indice ^

L'ultimo passo consistenell'accedere al repository appenacreato utilizzando il gestore deipacchetti presente sul pc.

Come prima cosa rendetedisponibile la chiave pubblica ad apt,in modo che possa verificare la firmadei file presenti nel repository.

sudo cp repository.gpg/usr/share/keyrings

sudo apt-key add/usr/share/keyrings/repository.gpg

Infine specificate la posizione delvostro repository creando il file/etc/apt/sources.list.d/repository.list, utilizzando per esempio ilcomando "sudo kate".

Il contenuto del file dipende dalmetodo di distribuzione scelto:nel caso in cui la directory sia stataesportata via NFS o con Sambacome /mnt/repository alloraspecificate:

deb file:/mnt/repository/. ./

deb-srcfile:/mnt/repository/. ./

nel caso in cui il repository sia resodisponibile attraverso un server web

con indirizzo 192.168.0.5 allorainserite:

debhttp://192.168.0.5/repository/. ./

deb-srchttp://192.168.0.5/repository/. ./

A questo punto è tutto pronto. Sipuò verificare il buonfunzionamento eseguendo icomandi:

sudo apt-get update

apt-cache show cherry-keyboard

Si dovrebbe ottenere qualcosa disimile a:

cherry-keyboard - Attiva itasti multimediali sulletastiere Cherry

Riferimenti:“The Debian System - Conceptsand Techniques” di Martin F. Krafft,2005, Open Source Press GmbH,Germany, ISBN 3-937514-07-4

UN APPELLO A FAVORE DELGRUPPO PODCAST

Come avrete sentito nell’episodio #15 delpodcast, stiamo cercando argomenti per questasezione della rivista.

Invece di lasciar parlare noi a ruota libera suqualsiasi cosa ci colpisca, perché non ciproponete un argomento e guardatel’esplosione nucleare che ne deriva all’orizzonte?È altamente improbabile che tre di noi sianod’accordo.

Oppure, un pensiero ancora più radicale, inviaciun parere attraverso un contributo! Puoipostare commenti e opinioni nella pagina delpodcast su fullcirclemagazine.org, nella nostrasezione Ubuntu Forums e via mail [email protected]. Puoi mandarcianche un commento registrando un clip audio dinon più di 30 secondi e inviandolo allo stessoindirizzo. I commenti e l’audio possono esseremodificati per la lunghezza. Per favore ricordache questa è una rivista a conduzione familiare.

Sarebbe una gran cosa averecollaboratori che vengano inredazione ed espriminoun’opinione di persona.

Robin

LINUX LAB - CREARE UN PROPRIO REPOSITORY

full circle magazine n. 51 27 indice ^

LLAA MMIIAA SSTTOORRIIAAScritto da Adel

Permettetemi dipresentarmi. Mi chiamoAdel e sono un kazakocinese (si, tanti di noi

vivono in Cina, dal momento che Cinae Kazakistan sono Paesi confinanti.Casamia infatti è proprio vicinaall'intersezione dei quattro Paesi:Russia, Cina, Mongolia e Kazakistan).

Ho conosciuto Ubuntu più tardi ditanti lettori di Full Circle, eravamoalla versione 10.04. Quando entrai alcollege a Pechino nel 2009 noncapivomolto di informatica e nonavevo nemmeno un computer,costava tanto perme e quindi spessoandavo in un Internet Cafè per usarneuno. Il prezzo era 2 yuan all'ora, circa0,31 dollari statunitensi. Mi piacecollezionare software e altre cose delgenerementre altri si divertono agiocare. In effetti raramente io giocoai videogame.

In quel periodo venni per caso acontatto con Ubuntu versione 10.04.Prima pensavo fosse solo unprogramma,ma presto capì che eramolto comune nei siti di software. Si,è un sistema operativo.

In Cina quasi il 100%dei computerhaWindows, inclusi quelli degliInternet Cafè e nelle scuole. Quandouso un PC dell'Internet Cafè si bloccasempre e questomi fa impazzire, nonsi capiscemai perché questo succeda.Volevo comprare un laptopmioperché volevo tanto provare Ubuntue inoltre avendone uno non sareidovuto andare all'Internet Cafè, maquesto non era possibile.

Così ho trovato un nuovosoftware chiamato VirtualBox chepensomolti di voi già conoscono.Grazie ad esso potevo usare Ubuntunei computer nell'Internet Cafè! Èsensazionale! Quasi ogni finesettimana andavo all'Internet Cafèper usare il mio Ubuntu virtuale.Quanto desideravo un computertuttomio!

Quello che ho raccontato fin quiaccadeva nel 2010 e nel dicembredello stesso hanno compraifinalmente il mio primo computer.Era un AtomD510 con 2 GB di RAMDDR e unHDDda 160 GB. Era unnetbook. Il giorno dopo andaiall'Internet Cafè per scaricare Ubuntu10.10 e installarlo sul mio computer.

Si, l'ho installato ripulendo l'interodisco daWindows 7 già esistente, cheera anchemolto lento quando loavviavo.

Adesso uso Ubuntu da più di 3mesi e tutto va alla perfezione! UsoOpenOffice.org (potete aiutarmi ainstallare LibreOffice? Grazie!),guardo video con VLC e chatto conSkype dalmomento chemi fa farevideo chat. Anche Firefox funzionamolto bene e ho installato pureChrome. Quasi dimenticavo, hoinstallato ancheMacbuntu. Immaginoche ne abbiate sentito parlare. Èfantastico non soltanto per l'aspettobellissimo,ma anche perché puoiusare "mostra tutte le finestre"muovendo il mouse all'angolo destroo sinistro quando usi molteapplicazioni (una volta usai il MacOSdi unmio amico e ricordo che lafunzione eramoltomeno pratica diMacubuntu, bisognava usare latastiera e ben 4 dita invece chesoltanto il mouse).

Si, questo è tutto sullamiaesperienza Ubuntu. Quasi tutti i mieiamici invidiano il mio desktop quandolo vedono (loro pensano subito che

sia unMacOS, ahahahah!). Mi piaceproprio tanto, tanto, tanto!!! Non locambieròmai e non useròmai piùquel lento e pesanteWindows!

Ora lamia vita è davverocambiata. Ogni giorno la vivacità diUbuntumi da piacere emientusiasma, anche se conosco pocodelmondo di Linux. No, Ubuntu nondovrebbe essere trattato come Linux,è Ubuntu così com'è e vi offriràsempre più praticità, nuove scelte enuove avventure.

Grazie per aver letto lamialettera. Il mio inglese non è ilmassimo non essendo lamia lingua(ho iniziato a studiare inglese nel2003). Sarò felice semi dareteconferma di aver perso il vostrotempo leggendo il mio articolo, nonimporta se lo stamperete o no. Forseavrei dovuto scrivere in cinese emandarlo direttamente alla partecinesema, dopo averci pensato unpo' su, ho deciso di mandarlo a voicosicché sia voi sia gli amici di tutto ilmondo possano conoscere lamiasensazionale esperienza con Ubuntu.

full circle magazine n. 51 28 indice ^

LLAA MMIIAA OOPPIINNIIOONNEEScritto da Allan J. Smithie

V i sietemai seduti pensando"Vorrei saper scrivere"?Non"Vorrei saper scrivere comeJoeSchmooqualcunaltro in

particolare", solo "Vorrei saper scrivere".Iopensochepotete.Nonvogliodirequel romanzocheè in tutti noi.Credetemi, neho lettodimolte.Nonèvero.

Mapotete scriverequalcosa.Un'opinione?Leopinione fannobene.Tutti noi neabbiamo.Avete fattoqualcosadi tecnico?Chenepensateunhow-toouna recensione?Forseunpoema?Unhaiku in rispostaaEricSchmidt?Andateavanti, imparateunanuova formad'arte.

Scrivomolteparolee confessochehoseguito le regoleeho fallito. Inoltrehobuttato le regoleeho fallito. Eccoperchéabbiamodegli editori.

Vogliodarvi delle listedi attributiperunabuonascrittura:

• Chiarezza•Accuratezza•Rilevanza• Sincerità (Ricordare che senonpotetesimularequesto, nonpotete simulare

nient'altro).• Concisione•Trasparenza•Consistenza

Vogliodarvi liste su liste sulle regolesu comescrivere lamolte tipologieditesto. Sapetequali sono lecaratteristiche che intendo:

• Scrivete inprimapersona• Siate chiari.• Siate specifici.• Andate finoal punto.Poi fermatevi.• Esprimeteunpensieroalla volta.•Usate frasi corte.•Usateperiodi corti.•Usateparagrafi corti.

•Nonusatemaiparole lungheancheseesistonosinonimi corti.•Modificatea fondo; tagliate, tagliate,tagliate, tagliate

Socheèdifficile. I lettori delwebhannounabreveduratad'attenzioneenonsolo, dovetemostrare laportatadelvostrovocabolo, dato che i nostri lettorisono internazionali. Ciònon lo rendeimpossibile.

Questi giorni scrivo suimiei fogli: "ènecessariounmaggior impegno".

Perchénonprovarci? Sarà trattatoqualsiasi argomento.Andate, scrivetequalcosa. Scrivetenulla.

SSccrriivvii QQuuaallccoossaa.. SSccrriivvii NNiieennttee!!

full circle magazine n. 51 29 indice ^

IIOO PPEENNSSOO CCHHEE...... Che distribuzione/i usate?La domanda del mese scorso era:

Che distribuzione/i usate? ... e con tale/i distribuzione/i, qualiambienti desktop usate?

full circle magazine n. 51 30 indice ^

Dice Ronnie: Anche se di proposito

non ho menzionato Unity, mi sono

arrivate tonnellate di commenti

anti-Unity. Per cui, tralasciando tali

commenti negativi riguardo Unity,

pensate che:

LXDE è uno dei miglioriambienti desktop esistenti. Louso persino sul mio sistema di

gioco con 8 GB di RAM e unprocessore a 16 core. KDE è la miascelta per ciò che riguarda lo svagoe la produttività.

Bodhi per la vittoria!

Kubuntu come base quotidianasia sul mio computer che sulportatile da lavoro. Gnome per

alcuni brevi utilizzi basilari eLubuntu/CrunchBang per lemacchine con poche risorse.

KDE ha fatto passi da gigantema sembra essere troppoborioso.

Decido cosa usare e di qualiapplicazioni ho bisogno. Miserve solo un gestore di finestre

a piastrelle e terminali + firefox +geany.Niente di più e niente di meno.

Mint KDE mi restituisce la gioiadi usare Linux, la bellezza e lafacilità d'uso di KDE, affiancato

ad una vera esperienza “pronto dausare appena installato”. Il fatto chenon rilascino aggiornamenti primache siano PRONTI? Non ha prezzo.

Linux Mint funziona non appenalo si è installato. Niente daaggiungere o da scaricare; serve

giusto accenderlo e usarlo..

Xfce ed Enlightenment per lavittoria!

Ubuntu ha salvato il miocomputer su cui non gira piùWindows XP. Lo adoro!!

Ubuntu 11.04 con Unity 2D suun portatile, Ubuntu 8.04 su unDell Mini 9, e Vista su un PC.

LXDE è una forza! Utilizzadavvero pochissima RAM..

OpenSUSE & KDE, sono forti!!!

La maggior parte delle volteuso Ubuntu, ma su macchinedatate uso Xubuntu o

Lubuntuost.

Ho più macchine, una con Fedorache usa KDE e due con Ubuntu eGnome. Ho anche un paio di

server headless ma non li hoannoverati nella lista..

Sono in attesa di avere unadistribuzione con KDE4-LTS chesupporti il mio tablet con

pennino Wacom Bamboo CTH-460.

Ubuntu 11.04/Unity per il miocomputer domestico principale.Ubuntu 10.04, senza desktop,

come media center. Un serverUbuntu 11.04 headless per tutti ibisogni domestici di un server.Lubuntu 11.04 per il mio vecchionetbook Asus eeepc 900.

Spero davvero che in un futuroKDE sia il vero successo.Continua a migliorare ancora e

ancora.

Ubuntu e Gnome da sfoggiare,

Mint e LXDE per lavorarci e Puppy perle riparazioni..

Lubuntu sul mio vecchioportatile funziona da Dio. Lopreferisco a Xubuntu. In ufficio,

Ubuntu 10.04 LTS.

Userò il desktop classico diUbuntu fino all'estate 2012. Finoa quel momento GNOME-Shell e

Unity dovrebbero essere curati dallemalattie giovanili. Dopodichédeciderò se continuare con GNOME-Shell, Unity... o persino KDE?

Utilizzo Unity sulla miamacchina Ubuntu. Ma stopensando di concedere una

chance a Gnome 3 Shell... Tuttavia,siccome talvolta entrambi sembranoun po' impacciati su Ubuntu, hoanche una sessione Fluxbox, giustonel caso... L'altro mio (vecchio)computer utilizza felicementeXubuntu.

IO PENSO CHE...

““

““

““

““

““

““

““

““

““““

““

““

““

““

““

““

““

““

““

““

““

““

La domanda che mi piacerebbe porre per FCM#52 è:

Vi piacerebbe vedere una serie di articolisull'editing audio con Audacity?

Per dare la vostra risposta, andate su: http://goo.gl/MOHnG

full circle magazine n. 51 32 indice ^

RREECCEENNSSIIOONNEEScritto da Dave Rowell

Se proprio siete interessati nellastoria di famiglia o nella genealogiadovreste usare qualche programmaper computer per tener traccia delleinformazioni che accumulerete. Ognivolta che cercate di cambiare oaggiornare qualcosa scoprirete chesarà coinvolto più di un documento:dovrete trovarli e aggiornali tutti! Unprogramma faciliteràl'aggiornamento e si assicurerà chevenga diffuso dovunque ènecessario.

Se il vostro SO è Linux, non c'èmoltascelta: installate Gramps!Fortunatamente Gramps èmaturo,stabile, facile all'uso emolto valido.Gramps vienemantenutoattivamente da un gruppo disviluppatori motivato emoltodinamico. Vediamo come impila ilvecchio elenco delle caratteristicherichieste da Family Chronicle:Integrità dei dati – Gramps non faaggiunte o cambiamenti ai dati chefornite, come fanno alcuni altriprogrammi. In un altro significato diintegrità, Gramps usa una buonatecnologia di database per tenere alsicuro i vostri dati.•Registrazione di nomi e date –

Gramps ha un servizio più cheadeguato per l'inserimento di nomi edate grazie a un gruppointernazionale di sviluppatori eutenti. Le date vengono inserite in unformato e calendario di vostra scelta.Ma, ricordate, il formato di dataabituale nei circoli genealogici ègiorno, mese, anno.•Registrazione dei luoghi - Grampsha un insieme interessante di opzioniper inserire i luoghi. Sono forniti tuttii campi necessari come strada, città,contea, stato, nazione. Il databasepuò essere ordinato secondociascuno di loro. In più c'è un servizioper inserire coordinate geografiche.Se viene fatto ciò, Gramps puòvisualizzare i dati su unamappa.•Documentazione della fonte –Dovete farlo! Gramps fornisce glistrumenti per documentare la fonteper ogni dato che inserite. E per ognifonte il deposito dove l'avetetrovata. Non riesco a sottolineareabbastanza quanto sia importanteassegnare una provenienza a ognifatto che inserite, via via che loinserite. In aggiunta vi è un qualcheservizio per valutare quella fonte. Peri miei gusti ci sono così tanti posti perinserire la provenienza

dell'informazione da renderlodisorientante; lamia principalelamentela.• Elenco delle cose da fare – Suparecchie schermate Grampsfornisce una chiave che indica se ènecessario ulteriore lavoro. Vi è unanota tipo per una descrizione piùdettagliata del lavoro da farsi.Noterete che una delle schedeprincipali è “Gramplet”. Apritela e

otterrete l'accesso a un gruppo diaiuti per la ricerca sviluppati dagliutenti. COSEDA FARE era installatoinmodo predefinito. Usatelo – batteunmucchio di note adesive!•Registrazione degli eventi –Gramps, per come la vedo io, è unprogramma determinato dagli eventiper allinearsi alle nostre vitedeterminate da eventi. Inserite unevento, come una nascita, nella vita

GGRRAAMMPPSS

full circle magazine n. 51 33 indice ^

RECENSIONE: GRAMPSdi una persona e c'è un più cheadeguato servizio per documentarloe visualizzarlo.•Registrazione dei genitori – Unbambino può essere collegato amolteplici famiglie come la famiglianaturale e la famiglia adottiva. Si puògestire un caso dove uno dei genitorisia naturalementre l'altro non lo è.Gramps fornisce anche parecchi tipidi relazioni genitoriali – da sposati anessuna.• Filemultimediali possono esserecollegati a una persona, evento,fonte - dite un nome. Pensateall'organizzazione dei vostri media ese essi sopporteranno la prova deltempo. Ci sarebbe qualcosa da direper una singola cartella che contienegli oggetti da collegare, forsemalamente tagliati.•Classificazione dei dati eresoconti – Non è un problema perGramps. Se la classificazione non èabbastanza per voi, Gramps viconsente di filtrare i dati mentre listate classificando. Vi è un servizioper resoconti testuali, grafici egenerazione di siti web. Potetegenerare il consueto diagrammadegli antenati. Ho creato unresoconto di 18”x24” per unariunione di famiglia.•Copie di riserva e trasferimentodei dati – Anche qui siete coperti daGramps. Potete importare ed

esportare file in formato GEDCOMeGeneWeb per fare trasferimenti da everso altri programmi. Questofunziona tanto bene quanto si possaaspettarema questi formati di filenon contengono gli ammennicolitrovati in altri programmi. Grampsprovvede alle copie di riserva sia conche senza filemultimediali. Efunziona anche! È interessantenotare che potete generare filevCalendar e vCard dai vostri dati, unacaratteristica che non ho esplorato.

Allora, come potete vedere nonvenite danneggiati in alcunmodoutilizzando Gramps. Siamo fortunatiad avere accesso a un così buonprogramma.

Gramps è nei repository e puòessere installato usando Synaptic o,ancora più facile, dal SoftwareManager. In LinuxMint usateMenù>SoftwareManager (Ubuntu lochiama Software Center), digitate'gramps' nella finestra di ricerca, fateclic su 'Gramps', poi 'Installa'. È cosìfacile!

Il mese prossimo vi mostreròcome cominciare con Grampsiniziando un nuovo database,inserendo le vostre informazioni ecomemostrare le vostre fonti.

full circle magazine n. 51 34 indice ^

LLEETTTTEERREESiamo lieti pubblicare ogni mese alcune delle mail che riceviamo. Se volete proporreuna lettera per questo spazio, di critiche o complimenti, potete inviarla [email protected]. ATTENZIONE: Alcune lettere potranno essere tagliateper ragioni di spazio.

KindleeGoogleEarth

A lcunimesi fa, hodeciso chemi sarebbepiaciutoprenderealcuni eBookdaAmazon, così ho scaricato il

softwareKindleperWindows,manonèstatopossibile installarlo con laversionepredefinitadiWine.Dopoalcune ricerche, ho trovato che ilmodoper farlo funzionare sulmioUbuntu10.10eraquellodi scaricare la versionebetadiWine3. Perora, nonhoavutoproblemi conquesta versione.

sudo add-apt-repositoryppa:ubuntu-wine/ppa && sudoapt-get update && sudo apt-getinstall wine1.3

Avevogiàunaccount suAmazon,così la registrazionenonèstataunproblemaequandoho fattol’avanzamentodi versionealla 11.04,sono riuscitoa recuperare tutti i libricheavevocompratopigiando ilpulsantearchiviati.

Dalla 10.10hoavutoproblemi ainstallareGoogleEarth. Scaricando ilfile .debdal sitodiGoogleeusandoGdebiper installarlo,mi rimanevanoalcuneareedi testo

sovradimensionate sullo schermo.Questoè stato risolto scaricando lefontMicrosoft TrueType:

sudo apt-get installmsttcorefonts

Pare cheGoogleEarthabbiabisognodi essi per la suavisualizzazione.

BrianCockley

Il loginKDE

H o intenzionedi passaredaUnity aKDEdopoaverprovatoUnityperunpo'.Propriononmipiace.Ma,

inun’altranota,mi chiedo seavetequalche consiglioperunadomanda suKDE.PossousareunCD livediKubuntu (11.04) sulmio computerdesktopegiraperfettamente.Ognicosa si avvia ed io sono ingradodiusare il sistema.Ma, se lo installo suldisco rigido, non sonomai riuscito adandareoltre la schermata chemostraquelle5 iconementre il desktopvienecaricato. Ilmio sistemasi bloccaehabisognodi essere riavviato.

Chris

Ronnie risponde:Dopoesserciscambiati email conChris riguardoaciò, sembra cheoccorra scegliereesplicitamenteKDEdalmenùadiscesaal login.Altrimenti sareteaccolti dauna schermatavuota.

Unapintadi birraeunapizza

Devoammetterlo,mi sentounpo’stancodelle lamentele suUnityeveramentenoncapiscoperchéessinon fannoclic suunpo’ di bottoni eusano i loroUbuntu sottoGnome; èancora lì, sapete. Sonoprontoadareunapossibilità aUnitye la stogiàusandosenzapensarci.Oltre aquesto,un saccodelle stramberie sarannorisoltedalla 11.10. SenonmipiacesseUnity, usereiGnomeenonmilamenterei. SenonmipiacesseUbuntu, passerei tranquillamenteaKubuntuoancheaun’altradistribuzione.

Enonpreoccupatevi di Canonical: ilproprietario (MarkShuttleworth)

neanche si accorgerebbedei soldi chegli verrebberoamancareall'improvviso. Egli ha venduto la suacompagniadi quattroanni permilioniquandoavevaventicinqueanni e sonosicuro chegli investimenti l’hannoormai raddoppiata.

Perciò, andiamogente,piagnucolatemenoeoci datedentrooandateavanti. Cominciateapreoccuparvi delle cose importantinella vita come laGrecia, il debitonazionalee comequesto influenzerà ilprezzodi unapintadi birraedi unapizza l’annoprossimo.

Ampers

Collegati con noi:

facebook.com/fullcirclemagazine

twitter.com/#!/fullcirclemag

linkedin.com/company/full-circle-magazine

ubuntuforums.org/forumdisplay.php?f=270

full circle magazine n. 51 35 indice ^

LETTERE

AggiungereKDE

Se/quandosaretevicini ascrivereunarticoloParte2riguardoaKDE, v’imploro, perfavore fateun riferimento su

comesi possapassaredaUbuntuaKubuntu senzaperdere tutti i nostriprogrammi; ciòmi renderebbedavveromolto felice!

JohnHaywood

Ronniedice: ilmodopiù semplice è

quello di installare il pacchetto kubuntu-

desktop. Sarai in gradodi scegliereKDE

oGnomeal login. L’unico latonegativo

di ciò è che il tuomenùdelle applicazioni

sia suKDE sia suGnomeconterrà

entrambe leapplicazioni di Gnomee

KDE.Nientedi che, renderà solo il tuo

menùunpo’ pienoavedersi.

PiùPAM

Il sitoufficialedi PAMhttp://pam-face-authentication.orgha lagiustaproceduradi installazioneeconfigurazione. IlmodoesattoperinstallarePAMsuUbuntuèdescrittoqui: http://pam-face-authentication.org/downloads.php. IlPPAcontiene i file .debper Lucid,MaverickeNatty.Dopoaverli installati

bisogna solo configurare il plugin.

Perciò, nonèdifficile installarloe ladocumentazionenonèdatata.

AntonioChiurazzi

Ha ragione, sapete

A mioparere, egli [FCM#50Lamiaopinione]haragione. Tracciounparallelo traMicrosoft e

Canonical.Microsoft cambia il suoSOregolarmenteperottenerepiù soldidalla gente. PresumocheCanonicalabbia alcune ragioni per cambiare lecose, oltre al semplicegustodi variare.

Io sonounutente ragionevolmenteavanzato, non interessatoagli ultimistrumenti o aprovare le coseper ilgustodi farlo,machevuole solounapiattaformastabile e consistentedausare.Hoprovatoa interessare imieiamici aUbuntu, specialmentequellichenonvogliono sborsareper l’ultimoWindowsoMSOfficeoaltro.

Mapiù importantedei soldi è iltempoemolti di loropreferirebberopagareper la stabilitàpiuttosto chetrovarsi sull’orlo angosciante in cui essicostantementedevonochiamarmiper

unaiutoeunconsiglio. E francamenteanche ilmio tempoè importante; nonsonoun tecnicodi supportopagatodallaCanonical.Hodifficoltà araccomandareUbuntu, perché so cheCanonical staperdendo temposoloper il gustodi ciòe saròbloccato congli amici chevogliono la loromacchinaaggiustata.

Io vogliouna solaesperienzaconsistenteda rilascio a rilascio.Nonmi aspetto che imiei bottoni vadanoagiro, che cambinocolore, chespariscanooaltroancora chemiostacolanell’usare il computer. Riescoadaffrontare il cambiamento,mapiuttostoNONVOGLIO risistemare lemie scelte chehogià fattoperchéalcuni progettisti inCanonical pensanodi sapernepiùdime.Cheè ilmododiMicrosoftdi trattaregli utenti.

SeCanonical vuole continuareacambiaregli standard, alloradovrebbeesserci un singolo filediconfigurazionedi scelte che l’utentehafatto che sarà lettoe seguitodalprocessodi avanzamentodi versione,contenente le sceltedell’UTENTEdelgestoredelle finestre, del layoutdelloschermo,del browserpreferito, deglistrumenti comunementeusati e cosìvia.

LamiadomandaaCanonical è,

‘Ubuntuèpergli hacker, i progettisti,gli utenti avanzati, l’”élite”, gli ultra-geek, oèper lemasse?’ Seè laprima,allora ladominanzaeternadiMicrosoft èassicurata. Seè la seconda,smetteteladi cambiare le coseper ilgustodi cambiare le cose!

Thomas

Sotto leprevisioni deltempo

I ncercadi qualche raggiodi sole,ho fatto l’accesso sul sitodiMetOfficeehovisto il lorowidgetperil desktopdisponibileper il

download. Esso richiedeAdobeAir 2.5,ma labuonanotizia è che rispondonoagli utenti Linux.Ma, quest’ultimowidgethabisognodi 1GBdiRAMpergirare! Iohoappenaaumentato lamiaRAMa2GBepensare chemetàdi essapotrebbesparire istantaneamentemidà i brividi lungo lamia schiena. Terròsolamente ilmio segnalibroallapaginadelleprevisioni.

RoyRead

full circle magazine n. 51 36 indice ^

DDOONNNNEE UUBBUUNNTTUUScritto da Elizabeth Krumbach

Q uestomese intervistiamo ilcontributoreUbuntuCheriFrancis riguardo la suaesperienza all'Ubuntu

Development Summit (UDS) svoltosi aBudapest lo scorsoMaggio.

ElizabethKrumbach: Quando seientrata a far parte della comunitàUbuntu, e quali sono le aree nelle qualisei attualmente coinvolta?Cheri Francis: Ne sonodiventata partequalche anno fa, facendodapprimaqualche capatina inUbuntu, quindicominciando agirovagare in IRC,soffermandomi dovepotevo.Ora sonoparte del progettoDonneUbuntu, delgruppoAccessibility e del gruppoNGO.Faccio ancheparte del LoCo teamOhio,nonché sonounnuovomembrodelConsiglio dell'Ohio LoCo stesso.

EK:Cosa ti ha ispirato tantodaimpegnarti per la sponsorizzazionediUDS?CF:Ho ricevuto unamail da un'amicafacente parte del progettoUW, con laquale avevo lavorato in passato. Hochiesto a qualcun altro se ritenesse cheavrei dovuto farneparte e la risposta èstata così entusiasticamentepositiva chehodeciso di andarci. Volevopartecipare

perché sentivo potesse essere unagrandeopportunità incontrare alcunedelle persone con le quali avreicollaborato online, così come lo eraimpararemaggiormente i dettagli praticidi come tutto si assembli poi insieme, e ilprocesso che c'è dietro tutto questo.

EK:Quale sono le sessioni alle quali haipartecipato?CF:Ho cercato di focalizzarmi sullacomunità e l'accessibilità dove hopotuto.Oltre questo, hoprovato adapprendere quantopiù possibileriguardo alcuni argomenti chemipassavanoper lamente, ancora cosìattraenti. Prendere parte alla sessionesull'NGO teamè stato davverointeressante, visto chenon avevo ideache esistesse primaepenso che abbiatutto il potenziale per portare avanti unlavoro straordinario. Le sessioni riguardoil consiglio IRCe l'UbuntuWeeklyNewsmi hannodavvero aperto gli occhi. Primadi una sessione, non sapevoneanchedell'iniziativa LoCo ISOTesting, né tantomenodel progetto LaptopTesting. Ederamia intenzione conoscere di piùriguardo entrambe le cose.

EK:Qual è l'eredità più grandeportata acasa dal summit?

CF: È stata una cosameravigliosa, nel verosensodella parola. Cosìtanta gente che rendedisponibile il propriotempoe la propria energiaper creare emantenereUbuntu, sia la partesoftware che la comunità.Ho lasciato l'USD con ildesiderio di fare il possibileper aiutare ad incoraggiarei nuovi utenti econtributori. Aiutando il nostro LoCo adessere più in vista e invitante, e aiutandoilmio gruppo ad incrementare la propriavisibilità.

EK:Hai qualche suggerimentoper ipartecipanti alle prime armi?

CF: Fate unaMIRIADEdi domandeprimadi cominciare. Leggete ognimail piùvolte per assicurarvi di non aver persoqualche istruzione. Sappiate che lapianificazione è in costantecambiamento.Non abbiate paura diparlare,ma cercate di rimanere sempreinerenti l'argomento.

IInntteerrvviissttaa aa CChheerrii FFrraanncciiss

full circle magazine n. 51 37 indice ^

GGIIOOCCHHII UUBBUUNNTTUUScritto da Ed Hewitt

Q uesto mese continuerò laserie di recensioni sui giochiinclusi in HumbleFrozenbyte Bundle. A causa

del numero di giochi che ho messo incoda per le recensioni dei prossiminumeri di Full Circle, in questarecensione mi concentrerò su duegiochi.

Shadowgrounds e ShadowgroundsSurvivor sono entrambi deglisparatutto di fantascienza con vistadall'altro, ambientati sul pianetaGanymede. Entrambi i giochiriguardano un'invasione aliena sulpianeta e un attacco alla base degliumani. In Shadowgrounds impersonateun ingegnere, Wesley Tyler, il qualedeve pensare a riparare la base,scacciare gli alieni e fuggire dalpianeta. In Shadowgrounds Survivor latrama ruota attorno a tre personaggiche si possono impersonare mentretentano di scappare dal pianeta. Lastoria è consistente in tutti e due i titolied è spiegata attraverso scene filmatee video messaggi durante il gioco.Oggetti tipici della storia diShadowgrounds sono messaggi email,documenti e pagine di diario. Tuttiquesti oggetti possono essere raccolti

durante il gioco aiutando a sviluppareulteriormente della storia.

Shadowgrounds è uno sparatuttoma è l'unico a non usare la tradizionalevisuale in prima persona. Giocatel'intero gioco da una prospettivadall'alto verso il basso e funziona allaperfezione. La tastiera si usa permuovere il personaggio mentre ilmouse si usa per puntare la pistola. Nonci vuole molto ad abituarsi alla nuovavisuale e può persino incoraggiare i fandei giochi non fps a provare questosparatutto.

Le missioni si concentrano sulcompletamento di una serie di obiettivi,dovrete muovervi intorno ad edificiscuri, sparare agli alieni, attivare erecuperare oggetti. Le missioni sonodivertenti ma diventano ripetitive datoche la maggior parte degli obiettivisono simili. Ciò che rende divertentequesto gioco è sparare agli alieni in unaatmosfera eccellente. La maggior partedel gioco è ambientata al buio con losfarfallio di strane luci. La torcia sullapistola può illuminare solo di fronte avoi, aggiungendo un eccellenteelemento tattico e di gioco. Dovretefare attenzione a come posizionerete la

torcia dal momento che degli alienipotrebbero celarsi di fronte a voi,aggiungendo tensione e atmosfera.Shadowgrounds è dotato di un vastoarsenale di armi ed esplosivi moltosoddisfacenti da usare.

Grafica e suono sono buoni inentrambi i giochi e aiutano davvero avalorizzare la giocabilità. Anche se lagrafica è datata in Shadowgrounds, conqualche consistente miglioramento inShadowgrounds Survivor, è ancorabuona per gli standard attuali. Il suo

effetto grafico di spicco è la luce dellatorcia. Durante tutto il gioco poteteascoltare una colonna sonora forte, coneffetti audio che aggiungono tensionee atmosfera a Shadowgrounds.

Entrambi i giochi sono dotati di unatrama abbastanza lunga,Shadowgrounds vanta la modalitàcooperativa mentre ShadowgroundsSurvivor ha una modalità "Survival"basata sullo stile di gioco diShadowgrounds, ma ha davverobisogno di una modalità cooperativa.

SShhaaddoowwggrroouunnddss

full circle magazine n. 51 38 indice ^

Ed Hewitt, aka chewit (quando gioca),è un appassionato di giochi per PC equalche volta si diverte anche conquelli per console. È anche coautoredel Podcast di Full Circle!

Mentre Shadowgrounds ha questamodalità e consente fino a 4 giocatoriper tutte le missioni della campagna,non è stata pensata affatto perShadowgrounds Survivor. La modalitàcooperativa può essere giocata solo suun PC, non in LAN o su Internet e permolta gente questa modalità è inutile.Shadowgrounds Survivor ha unamodalità extra di gran lunga migliore, lamodalità "Survival", che manda orde dialieni verso di voi e dovretesopravvivere quanto più possibile.

Shadowgrounds e ShadowgroundsSurvivor sono entrambi deglisparatutto validi, leggermentedifferenti dai tradizionali giochid'azione grazie alla loro atmosferahorror e alla visuale. La storia è moltosemplice, ma un bel po' di scene filmatee oggetti possono essere trovatidurante tutto il gioco, aiutandovi adaggiungere qualche dettaglio alla storiaprincipale. Le missioni sono divertentianche se ripetitive e non portanoniente di nuovo a questo genere disparatutto. La grafica e l'audio sonoconsistenti per tutto il gioco emigliorano l'atmosfera. La modalitàcooperativa è scarsa quando sarebbedovuta essere un punto cruciale diquesto gioco. Il porting del gioco perLinux è povero e richiede un buonsistema per funzionare bene.

Complessivamente è uno sparatuttodivertente, ma è un po' scadente inmolti campi.

Punteggio: 7/10

Pro:• Storia interessante con oggetti daraccogliere durante il gioco• Giocabilità consistente• Buona atmosfera• Divertente modalità Survival(Shadowgrounds Survivor)

Contro:• Modalità cooperativa noncompletamente implementata(Shadowgrounds)• Diventa monotono e ripetitivodopo un po' di tempo• Scarse prestazioni su Linux

Trailer:http://www.youtube.com/watch?v=MhRedeAOWxE

GIOCHI UBUNTU

full circle magazine n. 51 39 indice ^

DD&&RRPreparato da Gord Campbell

Se avete delle domande su Ubuntu, scrivetecele [email protected] e Gordon vi risponderà in un prossimonumero Si prega di inserire il maggior numero di informazioni che possanoservire a risolvere il vostro problema.

D ho sempre editato la lisadi grub,ma se lo faccionella 10.04 e rimuovo 4delle voci ripetute, queste

vengono ripristinate al successivoriavvio del sistema.

RIl migliormodoperrisolvere è rimuovere ivecchi kernel. Al riavvio faiattenzione alle ultime

cinque cifre del kernel più vecchio,come32-31. Apri il gestore pacchettiSynaptic e cerca quella stringa.Dovresti averemetà della schermatapiena di pacchetti e due vociinstallate, "linux-headers" e "linux-image". Fai clic destro con ilmouse suognunodi loro e seleziona "rimuovicompletamente". Poi fai clic su"Applica".

Dopodi che, apriAccessori/Terminale e inserisci questocomando:

sudo update-grub

Il grub dovrebbe essere più cortodi due righe.

D Non riesco a sentirel'audio sulmio CompaqPresario CQ56 conUbuntu 10.04.

RSegui le istruzioni suquesta questa pagina:https://wiki.ubuntu.com/Audio/InstallingLinuxAlsaDri

verModules o esegui l'avanzamentoadUbuntu 11.04.

D Di recente ho effettuatol'aggiornamento alla11.04 e le nuove barre discorrimentomimandano

fuori di testa. Comeposso riavereindietro le grosse barre discorrimento?

RAvvia il gestore pacchettiSynaptic, cerca "liboverlay"e rimuovilo. Dopo il riavviodovresti avere le grosse

barre di scorrimento.

D Hoappena installatoUbuntu 11.04 sulmioportatile. È tuttofantastico,manon sento

nessun suono.

RDai un'occhiata suhttps://wiki.ubuntu.com/DebuggingSoundProblems.Probabilmente hai l'audio

impostato sumutoda qualche parte.

D Ho installato ed eseguito"Truecrypt",ma nonsembra cifrare i file.

RConTruecrypt si possonocreare dei file checontengono "volumi"cifrati, i quali possono

essere successivamentemontati esmontati. Una volta creato, potraimettere o togliere i file dal volume.Quandomonti un volumedeviinserire la password che hai usato percrearlo e i contenuti verrannomostrarti come se fossero in unanormare cartella. In ogni caso puoicaricare un volumeonline ed esserecerto che i contenuti rimangano alsicuro da eventuali navigazioni casualidi altri utenti (se l'NSA americanavolesse vedere i tuoi file, non c'èpartita). A questo punto un amico puòscaricare il volume, inserire lapassword che gli hai dato e accedereai file.

Se vuoi cifrare un singolo file,probabilmente è più facile usare ilgestore fileNautilus. Seleziona il file,fai clic col destro delmouse eseleziona "Comprimi...". Si aprirà unafinestra, quindi inserisci un nomeeseleziona "7z" come tipo di file. Fai clicsu "Altre opzioni", specifica unapassword e seleziona "Cifra anchel'elenco dei file". Fai clic su "Crea" e ilgioco è fatto.

D Supponiamodi avere unvideo .avi di un film inlingua originale (es:Inglese) e un altro video

.avi con lo stesso filmma in un'altralingua (es: doppiato in Italiano). Èpossibile ottenere un solo video .avicon il film e le due lingueselezionabili?

RQuesto comando fa al casotuo:

ffmpeg -i input -vcodec copy-acodec copy output.mkv-newaudio -i input2 -acodeccopy

full circle magazine n. 51 40 indice ^

D & R

D Ho installatoUbuntu11.04 sulmio netbooklasciandounpo' di spaziolibero sul disco rigido. Ho

impostato tutto comemi aggrada epoi ho installatoAndroid-x86 2.2 nellospazio che avevo lasciato libero.Ora ilmenùdi avviomostra soloAndroid.

R(Grazie aGarvinrick4 nelForumdi Ubuntu). Effettual'avvio da undispositivoflash LiveUSBouna LiveCD

se il tuo computer ha un lettore CD.Apri Accessori/Terminale e inserisciquesti comandi:

sudo fdisk -l

(Digita la tua password quandoviene richiesta. Dovrebbemostrarti idispositivi di archiviazione, il tuo discorigido probabilmente è /dev/sda. Secosì non fosse,modifica i prossimi duecomandi).

sudo mount /dev/sda1 /mnt

sudo grub-install --root-directory=/mnt /dev/sda

sudo umount /mnt

sudo reboot

D Ho installato il browserGoogle Chromium, nonmiè piaciuto e così l'horimosso. Adesso quando

faccio clic su un link in Evolution 2.30.3si apre una finestra di dialogo chemidice: Could not open link. Failed toexecute child process"/usr/bin/chromium-browser" (nosuch file or directory).

RAvvia Firefox. Fai clic suModifica/Preferenze.Seleziona la scheda"Avanzate". Nella parte

inferiore si trova l'opzione "Controllasempre all'avvio se Firefox è ilbrowser predefinito". Fai clic sulpulsante "Controlla ora". Seleziona"Si".

D Sonoun commercialista. Imiei bambini hannobisognodi usare ilmiocomputer per fare i

compiti e io vorrei bloccare i foglielettronici per proteggere ilcontenuto delmio lavoro.

RNonpuoi impedire lorol'esecuzione deiprogrammi,mapuoiimpedirgli di accedere ai

tuoi file. Configura un utente nonamministratore per i bambini, poi nel

terminale esegui:

chmod 750 /home/yourusername

Assicurati di avere una passworddifficile che loro non la possanosapere!

D Mio fratello ha pasticciatocon l'ambiente graficoUnity e ora c'è un'ombrastramba sul cursore del

mouse.Odio la posizione dell'ombra evoglio reimpostarla alla sua posizionepredefinita.

RHo trovato. Si trova nelleimpostazioni nVidia pertutte le posizioni.

D Vorrei sapere come fareper vedere l'anteprimalocale dei siti incostruzione quandouso

Kompozer.

RInstalla LAMP (in aggiuntaa Linux: Apache,Mysql ePHP), un serverwebcompleto. la posizione del

sito è in /var/www. Copia lì i tuoi filephp e html daKompozer(javascript+immagini+altri contenutiweb). Potrai connetterti con ilbrowser attraverso 'localhost' o

127.0.0.1.

Suggerimenti e TecnicheQuanto caldo, versione 2.0

N ell'edizione 43 ho rivelatouna dellemie fissazioni:Voglio sapere quantosono calde le cose,

dannazione! Poi è arrivatoUnity (permeun ambiente di testing, non ilmiosistemadi produzione) e gli appletssembrano essersene andati. Conky insoccorso!

Più facile a dirsi che a farsi. Sequalcuno volesse proporre un "Top 5Guide per Conky", penso che sarebbeunottimo contributo per Full CircleMagazine. È stato facile trovare leistruzioni su come cambiare il bordo eil colorema, onestamente, nonmifrega un fico secco di queste cose.Alla fineGooglemi ha condotto adalcune informazioni importanti,manon è stato facile. Inoltre ho anchescaricato ilmanuale ufficiale di Conkye l'ho copiato in un file di testo perleggerlo attentamente quando sonooffline.

Primadi tutto ho installato "lm-sensors".

Ho incluso ilmio file .conkyrc. Fino

full circle magazine n. 51 41 indice ^

D & Ralla parola "TEXT" ho semplicementescopiazzato tutto da qualche sitowebe sembra aver funzionato. Lavisualizzazione del tempodi attività edella versione del kernel li ho presidalla stessa fonte emi sono sembratiOK. Poi sono andato al cuore delproblema. Condiversi tentativi ederrori "Hwmon temp1" si è rivelatoessere la temperatura del chipset.Speravo ci fossero altre variabili"temp",ma così non è stato.

"Hddtemp" è la temperaturariportata dal disco rigido. Perottenerla ho dovuto installare"hddtemp" e l'ho eseguito comedemone: hddtemp -d /dev/sda (o ilnomedel vostro disco rigido).

Ho una scheda videoNvidia di cuiho installato il driver proprietario eapparentemente era tutto ciò chemiserviva per far funzionare "nvidiatemp".

Per la temperatura della CPU sonostate necessarie unamiriade di pipe."Sensors" è parte del pacchetto lm-sensors. "cut" estrae solo leinformazioni necessarie e "sed" liformatta.

Ilmio feticismoper la temperaturanon si limita solo al computer, vogliosapere anche la temperature esterna.Se cercate suGoogle "conkyforecast",troverete un sito dove potretescaricare ciò che risulta essere il nomedi un repository che è stato aggiuntoa Synaptic o aUbuntu SoftwareCenter. A questo punto poteteinstallare il programmaaggiornatoconkyforecast e, se siete inNordAmerica, registrarvi comecollaboratori aweather.com (scusate,non ho idea di come fare se siete fuoridal NordAmerica. Inviate delle lettereper cortesia!). Riceverete unidentificativo e una chiave di licenza.Create un file .conkyForecast.config

nella vostra home, seguite loschema che ho inclusomacon il vostro partner id,chiave di licenza e localitàpredefinita (i partnerpossonomostrare ilmeteosul proprio sitoweb,manoinon faremoquesto adesso).

Hodirottato ancoral'output da conkyForecast a

cut poiché l'output grezzo includevauna brutta "A" con un accento.

Le altre cose sullamiaconfigurazione di Conky sonoabbastanza noiose: frequenza eutilizzo della CPU, uso dellamemoriae della swap eutilizzo dello spazio deldisco.

L'intero testo per Conky che èstato discusso qui (emostrato sotto)può essere visto su:http://pastebin.com/hSQwBPpT

.conkyForecast.config

CACHE_FOLDERPATH = /tmp/CONNECTION_TIMEOUT = 5EXPIRY_MINUTES = 30TIME_FORMAT = %H:%MDATE_FORMAT = %Y-%m-%dXOAP_PARTNER_ID = XXXXXXXXXXOAP_LICENCE_KEY = YYYYYYYYYYYDEFAULT_LOCATION = CAXX0504

full circle magazine n. 51 42 indice ^

IILL MMIIOO DDEESSKKTTOOPP

Ho scattato questa foto qualche tempo fa. Non è propriol'idea del mio desktop perfetto, ma mi sono divertito nelcrearlo.

Software usati: emerald theme manager, compiz, AWN,screenlets (con installato un applet per le cartelle veloci) esenza dimenticare, Cairo Dock, tutto gira su Ubuntu 11.10, conGNOME 2.32.

Cairo Dock è pesante e bisogna avere un buon computer perpoterlo eseguire, o si finisce nel avere un sistema lentissimo.

Specifiche hardware del computer: Compaq presarioCQ42203AU, RAM 3GB, scheda video ATI radeon 1GB, discorigido da 320GB.

Ihsan Jaffar

Questa è la tua occasione per mostrare al mondo il tuo desktop estroso o il tuo PC. Mandale tue schermate e foto a: [email protected] . Includi una breve descrizione deltuo desktop, le caratteristiche del tuo PC e altre curiosità sulla tua configurazione.

Ho catturato questa schermata prima di effettuare l'aggiornamentoalla versione 11.04, poiché non so cosa accadrà con la configurazioneesistente del mio desktop da quando la 11.04 utilizza Unity comeambiente predefinito.

La barra in fondo allo schermo è AWN e ho vari screenlets sulla partedestra dello schermo e 2 sticker screenlets verso la parte sinistra delloschermo, per provare e far sembrare che siano appesi al muro.

Il mio computer è un Toshiba Satellite L655-S5157, con un processoreIntel i3, 4 GB di RAM (sebbene sto eseguendo Ubuntu 32-bit perassicurare che i driver dei dispositivi funzionino con il mio hardware;devo ancora far qualcosa per far si che il mio adattatore wireless e iljack per le cuffie funzionino) e ho aumentato il disco rigido a 750 GB.

Scott M. Keeth

full circle magazine n. 51 43 indice ^

IL MIO DESKTOP

A proposito di "Il netbook non è ancora morto" di Allan J.Smithie nel numero 49 di Full Circle, il mio desktop gira su unAsus EEE-PC 900E e gira che è una meraviglia. Sentendo lamusica usando anche Audacious (angolo in alto a destra) oBanshee Media Player, il player predefinito, è semplicementeperfetto. Lo sfondo è da:

http://lalitpatanpur.deviantart.com/art/GNU-Linux-quot-Starbuck-s-quot-logo-141284973

Sono sempre su "deviantart" per cercare sfondi per Ubuntu;un sito stupendo per questo. Il tema è "elementary" e ilpacchetto per l'icona è "Faenza-Dark".Ramon Barros

Questo è il mio Ubuntu desktop 10.10. Mi piace questaimpostazione per la sua semplicità e per sentimento dellaclassicità che provo tutt'ora. Ho scaricato lo sfondo da:http://linuxhub.net/2010/01/top-35-handpicked-ubuntu-wallpapers/, ho usato il tema Dust, sistemato la risoluzionedello schermo a 1280x1024 e ho impostato la trasparenzadei pannelli (tasto destro > proprietà...). Sotto c'è la barraCairo. Le specifiche del mio PC sono:

• Dual-core 2.5 GHz• 2GB RAM• Grafica integrata 256 MB

Eyob Fitwi

full circle magazine n. 51 44 indice ^

TTOOPP 55Scritto da Andrew Min

Ekiga

Homepage: http://ekiga.org/

Ekiga, originariamente scritto da Damien Sandras e presentato cometesi di laurea, è uno dei più famosi software opensource pertelefonare, specialmente dopo l'acquisizione e la successiva chiusuradi Gizmo5 da parte di Google. Una delle ragioni è la semplicità d'uso.Tanti client VoIP per esempio, richiedono la registrazione a unservizio esterno. Mentre normalmente usate un server di terze parti,Ekiga offre un servizio integrato, aiutando i nuovi utenti a sentirsicome a casa. Ma non fatevi ingannare, Ekiga non è solo per utentinovizi, l'applicazione offre molte caratteristiche avanzate incluso ilsupporto per una lista di codec e una funzione di ricerca per unarubrica LDAP. Gli utenti che pensano di passare stabilmente a Ekigasaranno felici di scoprire Ekiga Call Out, che consente di effettuarechiamate verso telefoni "reali" a tariffe davvero economiche.

Per installare Ekiga usate il pacchetto ekiga nel repository universe.

QuteCom

QuteCom (già noto comeWengoPhone e usato dal servizio VoIPfrancese Wengo) è un altro famoso client SIP. Come Ekiga supportacomunicazioni voce e video chat. La cosa in cui eccelle è il supporto peri protocolli di terze parti. Gli sviluppatori hanno implementato ilsupporto per la libreria libpurple, la libreria che fa funzionare il notoprogramma multipiattaforma Pidgin. Come risultato gli utenti diQuteCom possono chattare con MSN, AIM, ICQ Yahoo, Jabber,Facebook, MySpace e Skype (anche se il supporto per Skype ha dei buge delle conseguenze legalmente discutibili).

Per installare QuteCom usate il pacchetto qutecom nel repositoryuniverse.

CClliieenntt VVOOIIPP

full circle magazine n. 51 45 indice ^

TOP 5 - CLIENT VOIP

Linphone

Homepage: http://www.linphone.org/

Se volete un client SIP leggermente più configurabile (con unainterfaccia molto meno user-friendly) provate Linphone. Ha una granquantità di impostazioni avanzate, inclusa la scelta fra IPv6 e IPv4,porte RTP/UTP manuali, configurazione dell'unità massima ditrasmissione e via dicendo. In più è multipiattaforma e potete usarel'applicazione su Android, Blackberry o sul vostro iPhone, una bellacaratteristica se desiderate una interfaccia uniforme. Infine, per idrogati del terminale, c'è una interfaccia a riga di comando integrata.

Per installare Linphone usate il pacchetto per Ubuntu nella pagina didownload ufficiale.

Twinkle

Homepage: http://www.twinklephone.com/

Twinkle è sempre stato ilmio client SIP preferito per KDE. Tanto per iniziareè incredibilmente user-friendly. La sua interfaccia di creazione guidata degliaccount comprendeun supporto integrato per FreeWorldDialup, sipgate,SIPPhone (sebbene SIPPhone, gestito daGizmo5, sia attualmentesorpassato) eDiamondcard che vi consente di fare chiamate verso fissinazionali e altri numeri "reali". Ci sono anche una serie di integrazioni di KDE,di particolare rilievo è l'integrazione di KAddressBook (anche se poteteusare la rubrica integrata qualora nonusiate quella di KDE). Infine per iprogrammatori di tutto ilmondoTwinkle offre script per gli eventi. Poteteconfigurare diversi script Bash quandodeterminati eventi si verificano(chiamata in arrivo, chiamata in uscita, chiamata terminata ecc...).

full circle magazine n. 51 46 indice ^

Skype

Homepage: http://www.skype.com/

Nessuna lista di client VoIP sarebbe completa senza Skype, il nonno ditutti i telefoni software, recentemente acquistato daMicrosoft per 8miliardi emezzo di dollari. Sfortunatamente, anche prima dell'acquistoda parte di Microsoft, il supporto per Linux era ritardato. Mentre sia gliutentiWindows che quelli Mac avevano accesso alle versioni 5.x, gliutenti Linux erano obbligati a usare la 2.2 con la conseguenza che un belpo' di caratteristiche, incluse chiamate video di gruppo, non eranopresenti. Non riuscirete a liberarvi di una interfaccia leggermente datatae questo, se avete visto le più recenti versioni dell'interfaccia diWindows, potrebbe tuttavia non essere unmale. Sfortunatamente più ditutto Skype usa il suo protocollo proprietario, dovete avere un profiloSkype e non potete usare ufficialmente altri client di terze parti.Per installare Skype scaricate il pacchetto .deb per Ubuntu dallahomepage ufficiale di Skype.

Il podcast Ubuntu UK è presentato da membri della comunità diUbuntu Linux del Regno Unito.

Il nostro obiettivo è di fornire informazioni aggiornate e attualisugli e per gli utenti di Ubuntu Linux di tutto il mondo. Trattiamotutti gli aspetti di Ubuntu Linux e del Software Libero e cirivolgiamo a tutti, dai nuovissimi utenti ai più espertiprogrammatori, dalla linea di comando fino all'ultima GUI.

Dato che la trasmissione è prodotta dalla comunità di Ubuntu UK, ilpodcast rispetta il Codice di Condotta di Ubuntu ed è quindi adattoa tutte le età.

Available in MP3/OGG format inMiro or iTunes, or listen to itdirectly on the site.

http://podcast.ubuntu-uk.org/

Top 5 - FINEPurtroppo Andrew non ha più tempo per continuare ascrivere la Top 5 e sta lasciando FCM. È stato un piacerelavorare con lui negli ultimi quattro anni e spero che tutti viunirete a me nell'augurargli un grosso bocca al lupo.

TOP 5 - CLIENT VOIP

full circle magazine n. 51 47 indice ^

Siamo sempre in attesa di vostri nuovi articoli da pubblicare nella rivista Full Circle.Per articoli, guide, idee e per le traduzioni della rivista , date un'occhiata al nostrowiki: http://wiki.ubuntu.com/UbuntuMagazineInviateci i vostri articoli a: [email protected]

Se desiderate inviarci delle notizie, scrivete a: [email protected]

Inviate i vostri commenti o esperienze Linux a: [email protected]

Le revisioni Hardware/software vanno inviate a: [email protected]

Le domande sulle interviste future vanno inviate a: [email protected]

Le schermate deiDesktop vanno inviate a: [email protected]

... oppure visitate il nostro forum a: www.fullcirclemagazine.org

FULL CIRCLE HA BISOGNO DI VOI!Una rivista non è una rivista senza degli articoli e Full Circle non è un'eccezione.

Abbiamo bisogno delle vostre Opinioni, Desktop e Storie. Desideriamo anche le vostre

Recensioni (giochi, applicazioni & hardware), articoli How-To (su ogni soggetto

K/X/Ubuntu) e qualsiasi domande, o suggerimenti, che possiate avere.

Inviateli a: [email protected]

CCOOMMEE CCOONNTTRRIIBBUUIIRREE

Termine per il n. 52:Domenica 07 agosto 2011.

Pubblicazione del n. 52:Venerdì 26 agosto 2011.

Gruppo Full Circle

Capo redattore - Ronnie [email protected] - Rob [email protected] comunicazioni - [email protected] - Robin [email protected]

Editing e correttori di bozzeMike KennedyDavid HaasGord CampbellRobert Orsino

Il nostro ringraziamento va aCanonical, ai molti gruppi ditraduzione nel mondo e a ThorstenWilms per il nuovo logo Full Circle.

full circle magazine n. 51 48 indice ^

IILL GGRRUUPPPPOO FFCCMM IITTAALLIIAANNOO

Traduttori:Alessandro LosavioBianca KweyFabrizio NicastroGianluca SantoroGiulio TaniGiuseppe CalàGiuseppe D'AndreaIrene BontaMarco BuonoMarco LetiziaRoald De Tino

Revisori:Alessandro LosavioDavide MiceliGiuseppe D'AndreaMarco BuonoRiccardo VianelloValerio Salvucci

Impaginatori:Aldo LatinoDavide MiceliFabrizio NicastroMarco BuonoPaolo GarbinRiccardo Vianello

Edizione audio/video:Paolo Rotolo

Edizione eBook:Aldo LatinoDavide Miceli

Hanno collaborato alla realizzazione di questo numero:

Coordinatore del gruppo: Cristiano Luinetti

EENNTTRRAA AANNCCHHEE TTUU NNEELL GGRRUUPPPPOO FFCCMM!!La rivista Full Circle nasce da una idea della Comunità degliutenti di Ubuntu e vive del lavoro di coloro che hanno scelto didedicare parte del loro tempo libero alla riuscita di questoprogetto. È un progetto veramente aperto: tutti possonocollaborare, in un modo o nell’altro. C’è chi scrive gli articoli,chi li corregge, chi li traduce, chi li impagina e così via.

Anche tu puoi collaborare attivamente alla continua crescita diquesta rivista, il cui unico scopo è la diffusione della culturadel Software Libero.

Se conosci l'inglese e il Software Libero è la tua passione, puoicollaborare:• scrivendo articoli in inglese;• traducendo in italiano i testi;• revisionando i testi;• impaginandoli con Scribus.

Se vuoi saperne di più, visita la pagina Partecipare del nostrowiki.

Oggi partecipare e' ancora piu' facile! Questa rivista è stata tradotta dal Gruppo FCM della comunità Ubuntu-it.

Per ogni altra informazione visitate il nostro sito web: http://wiki.ubuntu-it.org/Fcm.

I collegamenti per scaricare tutti i numeri di Full CircleMagazine in italiano li trovi nel nostro Archivio.

Cerchi un articolo pubblicato su FCM?Nel wiki trovi anche l'Indice generale di tutti i numeri

pubblicati, comprensivo di titolo, autore e pagina

dell'articolo. Fai clic qui per consultarlo!