28 settembre 2008

iodellavitanonhocapitouncazzo

No, non proprio io, beh sì va bene magari un po' daccordo, e comunque nemmeno Caparezza.

Quello che stavolta non ha capito molto della vita è tale Yanike Mann (yanikem_at_gmail_dot_com).

Exhibit A

My name is Yanike Mann. I'm fixing to start an new BSD Operating System project with a team of developers and I was wanting to know how much would modifications cost? I have plans of using this office suite because it's already on the core OS we are building the new OS on, but I want to change it up some, add new features and let my graphic designers and template makers create loads of templates for it, exclusively for my OS. So, pretty much it's going to be a new Office suite and I was wondering how much will it cost to get it done? Also, how much does your company charge to build new apps?

Exhibit B

My name is Yanike Mann. Love Rhythmbox!!! I'm contacting you to get permission to have Rhythmbox as the default media player for my Operating System. Also, I wanted to know how much your company will charge to have an exclusive version of your Rhythmbox made for my Operating System?

References

Please

Se ne trovate altre, vi prego, mettetemele nei commenti. Ah, comunque appena pronto io passo a BSD, sia chiaro!

Quello che le note dimenticano e non riscrivono - parte x di y

Al solito, la mole delle informazioni che le note di rilascio di GNOME dimenticano di riportare è smisurata. E stavolta Davyd ne è coscente e se ne scusa.

Proviamo a metterci una pezza per gli affezionatissimi utenti italiani di questo un ambiente desktop molto diffuso e multi-piattaforma (sic. cit.).

Dipendenze esterne

Come ogni utente di GNOME sa, anche quelli che lo usano solo per chattare su internet con aMSN, con la dicitura "dipendenze esterne" si intendono quelle librerie di programmazione o framework o cosi del genere non direttamente inclusi in GNOME, ma su cui le applicazioni di e per GNOME possono fare affidamento (complicato, astratto, quasi dechirico, ma è utile e logico, fidatevi).

A quanto pare sia le note di rilascio che la relativa pagina sul Wiki si sono dimenticati di far notare che, oltre ai citati telepathy-glib, libempathy e libempathy-gtk per le comunicazioni tipo instant messaging e in parte audio/video e libcanberra per i temi sonori, nelle dipendenze esterne ufficiali hanno trovato spazio:
  • Clutter - Clutter! Porca miseria, vi siete dimenticati di dire che Clutter è ora ufficiale. Ma vi pare cosa da poco? OK, va bene, non c'è alcuna applicazione che al momento ne faccia uso (si era parlato del gioco tipo Tetris, ma non s'è visto nulla; Emmanuele "io so tutto" Bassi avrebbe dovuto scrivere un paio di plugin per EyeOfGnome e _soprattutto_ qualcosa tipo Coverart per Rhythmbox [che non serve a nulla, ma fa tanto figo] e invece si è dato alla macchia), e questo magari pregiudica un po' il test, però dire che ora è virtualmente possibile scrivere codice che abbia animazioni in 2D-e-mezzo, ben pensata e ben progettata per integrarsi con la sintassi e la logica di Glib e GTK+ magari sarebbe risultato utile visto che è una mancanza dell'attuale stack fornito.
  • PolicyKit - secondo "porca miseria!". Anche in questo caso si tratta di un componente abbastanza utile e abbastanza essenziale per un ambiente desktop moderno. È pur vero che PolicyKit, framework per l'autenticazione e l'autorizzazione a compiere determinate e ben definite azioni che magari richiedono i permessi di amministratore, era stato introdotto in modo ufficioso già con GNOME 2.22, però, anche in questo caso, sprecare due paragrafi per dire che ora è ufficialmente possibile usarlo e che altre applicazioni fanno uso delle sue caratteristiche, non sarebbe stata una cattiva idea.
  • Conduit - dimenticato da tutti anche lui (o lei? forse esso, ma non volevo fare pubblicità a compagnie petrolifere), è stato ufficialmente rifiutato come programma da includere nel desktop - sviluppatori di Conduit, siamo seri: ma voi veramente pensate che quella cosa lì sia veramente chiara e comprensibile a chi abbia la necessità di sincronizzare qualcosa??!!??? - ma altrettanto ufficialmente accettato come dipendenza esterna. Questo significa che le singole applicazioni possono appoggiarsi alle caratteristiche offerte da Conduit per proporre delle funzioni di sincronizzazione. Non mi viene in mente un esempio che sia uno (magari Rhythmbox? Crea la playlist speciale "Lettore mp3" e sincronizzala con i file presenti sul lettore quando viene connesso. Ha senso?), però avere un framework flessibile ed efficace di riferimento per fare qualcosa di particolare può sempre risultare utile, no? Specie se serve, specie per evitare la riscrittura delle stesse logiche.
  • SQLite - sempre più lacunoso, ma o mi ricordo male io oppure anche SQLite è stato ufficialmente tirato dentro le dipendenze esterne. Quanto meno adesso è utilizzato in evolution-data-server per salvare l'indice delle vostre cartelle di posta (no, purtroppo la copia interna di libdb è ancora compilata, Giove solo sa perché).

Piattaforma di sviluppo

Nella diabolica suddivisione logica di GNOME, a questa sezione vanno ascritte quelle librerie di programmazione che sono mantenute, sviluppate e aggiornate direttamente dallo GNOME Project.

Per la verità la caratteristica più interessante è nel fatto che l'elenco di moduli inclusi in questa categoria si va piano piano assottigliando. Al momento infatti 13 moduli su 22 sono ufficialmente dichiarati deprecati (inclusi per retro-compatibilità, ma da non usare in nuovo codice).

La novità - saltata nelle note ufficiali, ovvio, mica sto qui a ripetere le cose nuove in GTK+ e Glib - più evidente, ma anche oscura da leggere come un grimorium, è nell'integrazione di DBus e PolicyKit in GConf (ve l'avevo detto che era oscura, no). Cercando di fare luce, con integrazione di DBus credo s'intenda il fatto che ora GConf usa DBus come sistema interno di scambio di messaggi (invece di una sua implementazione privata) e come sistema per agganciarsi alla sessione utente; l'integrazione con PolicyKit riguarda invece la possibilità di autorizzare (con tutte le fiatures che PolicyKit si porta dietro) sia la modifica delle chiavi predefinite che quelle mandatory (che per l'occasione abbiamo ribattezzato nella traduzione italiana vincolanti, ma è sperimentale). Sarebbe interessante provare se, una volta attivata un'autorizzazione, l'autorizzazione stessa viene ereditata senza problemi anche nelle interfacce grafiche tipo GConf-Editor o Pessulus, ma al momento non posso fare prove con quanto installato sotto /opt/gnome2.

Desktop

I nuovi moduli inclusi ve li hanno già esaltati sulle note di rilascio.

A me resta solo il lavoro sporco di andare a leggere i changelog in cerca di tutte le molte nuove caratteristiche, miglioramenti, correzioni di bug (sic. cit.) che non hanno trovato spazio altrove. In ordine sparso:
  • gdm - come punto di partenza, il login è perfetto, no? Ecco, nessuno in fin dei conti sa che novità ci siano per un semplice motivo: fino a una settimana dal rilascio si era tutti convinti che si dovesse per l'ennesima volta usare la vecchia versione 2.20. Quindi se mi concedete 10 minuti mi vado a informare anche io. [attendere 10 minuti prima di continuare la lettura per onestà intellettuale] Fatto! Allora quello che è certo è che il nuovo GDM è una quasi totale riscrittura, che fa incetta di tutti i framework, dipendenze esterne e librerie ufficiali come ConsoleKit, PolicKit, DBus e GConf per gestire al meglio comunicazioni con il resto del sistema e autorizzazioni, che dovrebbe ora essere in grado di avviare e interagire con demoni abitualmente attivi solo durante la sessione utente come gnome-settings-daemon (per la gestione del tema, ma anche l'uso di mouse, tastiera e le funzioni di accesso universale) e gnome-power-manager (per la gestione dell'alimentazione), che la riscrittura è stata effettuata nella prospettiva di una futura espandibilità in ogni direzione (tema per il greeter, integrazione con le applicazioni utente, e tanto tanto altro), ma che tutto ciò potrebbe essere un pelo incompleto o non testato. Insomma, il nuovo gdm nelle intenzioni ha le carte in regola per essere il Chuck Norris del sistemi grafici di autenticazione ma non è detto che il suo triplo calcio volante sia ugualmente efficace. Non ho avuto voglia di approfondire cosa sia stato implementato e cosa no e perché non si sia decisa la sua inclusione fino alla fine. Pensateci da soli, magari partendo da qui. Oppure chiedete a qualche amico che usa Fedora: loro lo stanno usando già da sei mesi, prima ancora che fosse rilasciato come stabile.
  • gnome-session - altro modulo completamente riscritto, altro modulo completamente ignorato nelle note. Meglio per me che ho di che scrivere, altrimenti mi metto a gridare forte più forte al vento, gridando una dieci volte cento, sono riuscito a farmi del male.... OK mi sono ripreso. Dicevamo totale riscrittura anche di gnome-session, ma stavolta sono un po' più informato. Di questi tempi "totale riscrittura" vuole dire una sola cosa: usare DBus per la comunicazione tra i processi. Via il vecchio codice risalente ai tempi di GNOME 1.x e dentro nuove interessanti caratteristiche come la possibilità di dialogare con i processi che si occupano di sospendere il sistema e di cambiare utente, ma soprattutto la possibilità per le applicazioni di inibire il termine della sessione se necessario, che se state masterizzando o direi che vi può risultare decentemente utile (c'è anche un simpatico dialogo, ma non è possibile catturare in schermata... in realtà io l'ho provato con gedit, mica lo so se brasero inibisce; di certo se l'applicazione non lancia l'opportuno segnale, gnome-session mica può fare l'indovino). Già che erano in ballo, è stato riscritto anche il sistema di avvio automatico delle applicazioni e il ciclo vitale delle applicazioni stesse all'interno della sessione (per esempio se l'applicazione deve essere riavviata qualora termini, oppure se debba essere avviata solo in particolari condizioni), il tutto sfruttando solo delle semplici chiavi GConf (anche se hanno duplicato una chiave e non so quale sia quella giusta...) e i file .desktop installati dalle applicazioni. Tutte le informazioni necessarie per capire come funge la cosa ed eventualmente per aggiornare la vostra applicazione, sono qui. Lettura consigliata a chiunque volesse capire meglio come funziona GNOME 2.24 e obbligata per chiunque stia scrivendo applicazioni per GNOME/GTK+ che in qualche modo sono integrate con la sessione.
  • nautilus - anche se le note di rilascio non lo dicono, la vera novità è nella possibilità di aprire schede nelle finestre di esplorazione... Eh? Davvero? Lo dicono? Ah, ma non quello che intendevo io. Cioè, non l'ho inteso bene neanche io, ma anche qui siamo di fronte alla ennesima riscrittura del codice, anche se questa volta limitatamente alla gestione delle viste (in fondo solo sei mesi fa lo avevamo riscritto portandolo da gnome-vfs a gio, accontentatevi). Così nel codice di Nautilus fanno la loro comparsa le view slot (che riprendendo loopback hanno richiesto solo quattromilacinquecentosette righe di codice aggiunte e millesettecentosettanta righe di codice rimosse), curiosi e astratti elementi concettuali chiari solo al loro creatore Christian Neumair che in pratica rendono possibile il "multiview" alla base delle schede sopra citate. In teoria potrebbero rendere possibile, come dice loopback, le viste "split", ma qui andiamo veramente oltre. Da segnalare, sempre ad opera di Neumair, la riscrittura - ancora! uff, più ubiquo di miglioramenti (sic. cit.), magari stavolta esagero io e si tratta solo di consolidamento - della gestione dei livelli di zoom e di un complicatissimo sistema di limitazione del numero di righe della didascalia delle icone (nella vista a icone): in pratica, ora, in presenza di quei nomi di file lunghi lunghi lunghi lunghi lunghi lunghi che vi sballano tutta l'ordinata disposizione delle icone, Nautilus elide il nome e mostra solo le prime N righe (con N ampissimamente -pure troppo- configurabile via solita oscura e invisibile chiave GConf), almeno finché non ci passate sopra col mouse. Dicono anche di aver risolto il problema delle icone che si sovrappongono sulla scrivania, ma visto che è la quarta volta che lo risolvono e non ho ancora provato dal vivo, io non mi fido. Di certo la funzione "Ripristina" dal cestino funziona. A meraviglia.
  • gnome-panel - niente di sconvolgente, giusto miglioramenti (sic. cit.), specie nell'Orologio (che però era stato riscritto nella precedente versione), nell'uso di GIO, di DBus e nell'adeguamento al nuovo gnome-session. Perché ho scritto questo paragrafo allora? Ma che vi frega, mi sta simpatico gnome-panel, va bene?
  • gnome-settings-daemon - oltre ai soliti miglioramenti e correzioni di bug (sic. cit.), oltre all'adeguamento alle nuove dipendenze e lo smaltimento di quelle deprecate, è da segnalare il plugin housekeeping, che si fa carico di tenere sotto controllo la dimensione della directory $HOME/.thumbnails e di rimuovere le miniature più vecchie quando la dimensione della directory supera una certa soglia. Faico!
  • gvfs - epico ed epocale (ma le allitterazioni sono cosa buona o fanno pena? dite la vostra nei commenti, nel caso le aumento o le riduco) il passaggio dalla versione 0.2 di sei mesi fa all'attuale 1.0. In effetti di miglioramenti e correzioni di bug (sic. cit.) ce ne sono stati parecchi, ma per l'ovvia natura di gestore di file system virtuali non appaiono come fisicamente visibili. Tutti i backend (fuse, hal, ftp, http, trash) dovrebbero ora funzionare in modo corretto o meglio non ci si dovrebbe proprio accorgere che esistono per il semplice motivo che funzionano e non creano problemi, in particolare il backend gphoto (che non è vero che non serve a niente perché tutte le macchine fotografiche digitali usano il mass storage, serve anche per i lettori musicali basati su MTP, che ora¹ vi compariranno nella finestra Computer e si potrà con semplicità copiare e spostare file per mezzo del file manager). Inoltre hanno deciso di usare potenze di 10 invece che di 2 per dimensioni di file/cartelle/volumi (oppure solo per i volumi?) in modo da non trovarsi con una chiavetta USB che sulla scatola riporta 64MB e sul computer vi appare come da 61,7MB. Si potrebbe obiettare che a sbagliare è la scatola, ma d'altro canto... è il mercato, baby!
Per ora la pianto perché devo fare cose, vedere gente, rileggere log, cavalcare orche assassine (mai nome fu più azzeccato, la traduzione di orca a volta è uno stillicidio) e perché altrimenti mi si viene a dire che voglio monopolizzare lo spazio sui planet che mi ospitano (???!!!?? Ok l'ho scritto ma non lo penso. _Voglio_ monopolizzare quegli spazi, fare la superstart e finire su pollycoke, ovvio) ma magari in un futuro non troppo lontano, prima di 6 mesi per lo meno, trovo il tempo e la voglia per un secondo post con le maggiori novità presenti nelle altre applicazioni incluse nello GNOME Desktop.

PS - dai, seriamente, ma non preferite quando scrivo solo due righe ermetiche e allusive che non ci capisce niente nessuno? A volte nemmeno io? Tipo, che so...
Certo, l'Uomo Ragno. Da grandi poteri derivano grandi responsabilità. Che magari esagero a farlo diventare rinuncia e abnegazione, magari era più eccitante Diabolik, ma comunque è sempre meglio che prendere ispirazione da Tex Willer, no?
[1] in realtà era così anche sei mesi fa, ma c'era qualche problema, per cui distribuzioni come Ubuntu avevano disattivato il backend.

24 settembre 2008

We apologize for eiaculatio precox

Lo ammettiamo: eravamo stanchi, eravamo distratti, eravamo impegnati, eravamo distratti (l'ho già detto? in tal caso "di nuovo"), eravamo dirottati, eravamo con le dita intrecciate (sulla tastiera, quelle dei portatili sono scomodissime per me), eravamo a corto di caffeina, eravamo senza cellulare.

Comunque sia, ci siamo dimenticati che l'ora precisa per il rilascio di GNOME 2.24 era... mmhh... 2 ore fa.

Ora, a parte il fatto che a me sembrava di ricordare che doveva essere domani, al limite a notte fonda, a parte il fatto che tu non mi vai ad aggiungere 3 (o 4?) nuove immagini a due ore dal rilascio, a parte gli errori di battitura, il team ristretto di revisione e traduzione delle note di rilascio di GNOME, versione 2.24, intente precisare quanto segue:
  • ci dispiace, non c'era materiale per fare un nuovo contest "trova la cosa misteriosa che ci piace tanto"
  • ci abbiamo provato lo stesso, ci sono due accenni "misteriosi" (poi mica tanto), ma uno è difficilissimo da trovare perché ci siamo dimenticati di fare il commit di una delle schermate (tradotte, per cui ne avete solo l'altra dove non è che è immediato)... vebbè vabbè, dai, aspettate la schermata di hamster-applet tradotta, vi aiuto
  • sì, come note di rilascio non annotano un benemerito, ma non le abbiamo scritte noi
  • sì, di novità anche interessanti ce ne sarebbero altre
  • no, la tizia sulla schermata di Ekiga non ve la da dà e nemmeno ci parla con voi, è la fidanzata dello sviluppatore "primus inter pares" di Ekiga stesso
  • forse, chissà, magari ci penso
Update!! le schermate dovrebbero ora essere tutte tradotte, così ora è più facile trovare il secondo accenno misterioso. Il primo, stupidisssssimo, era "Gnometto Band"

21 settembre 2008

Pioggia, caldo, curve, mente vuota

Condizioni perfette per fare il punto della situazione, per quadrare il cerchio, per svolgere l'uruboro o cose simili. E per tirare le somme, ovvio.

Totale: ci sono tre cose che attualmente non capisco e mi turbano.
  1. Ma siamo sicuri sicuri sicuri che sia veramente l'unica alternativa, non colpevole di tutto 'sto casino e veramente intenzionato all'acquisto? Il Club Alpino Italiano, intendo.¹
  2. Perché nessuno si è ancora cosparso il capo di cenere per la defezione, o per lo meno rammaricato fino all'hara kiri? Ah, non sapete di cosa? Non importa, chi poteva capire credo abbia capito²
  3. Nel caso in cui ci si trovi all'improvviso con un'esponenziale aumento della presenza maschile, e quindi di rimbalzo testosteronica, a un certo evento nel futuro, magari nel pomeriggio del sabato, magari dalla parti della rimorchiona e piacione riviera, ecco, in tale evenienza, mi domando, proporre un cineforum potrebbe essere una valida, fresca e innovativa soluzione al problema "che gli facciamo fare?"? Cioè, con "W la foca" come film proposto, ovviamente...³
Ovviamente non ho capito neanche tutto il resto e magari non lo comprenderò mai. Quindi mi sa che rinuncio allo sforzo e metto il pilota automatico.

Ora ritondiamo il cerchio e riavvolgiamo l'uruboro.

[1] anche se ho letto acronimi migliori, per lo meno più fantasioni
[2] secondo me è peggio per voi che restare senza, poi ognuno è libero di vederla come vuole
[3] mmmmmhhhhhhhhhh

15 settembre 2008

On Kissing, Tickling and Being Bored

Un repertorio potrebbe rivelarsi più utile di una convinzione, soprattutto se si tiene presente che esiste più di un modo valido di vivere la vita. (Adam Phillips)
Saggi psicoanalitici sulla vita inesplorata.

Magari dovrei prima comprarlo, poi leggerlo, poi comprare altre opere del succitato Adam e leggere anch'esse prima di parlare.

Magari la citazione succitata è tra quelle che uno si dovrebbe imparare a memoria (come un repertorio, in effetti è molto più utile) da tirare fuori al momento giusto (tipo se volete fare colpo con una a cui piacciono le piante potreste provare con «Ehi, lo sai che so tutto su come far avere alle tue piante un discreto senso dell'humus?!?»), però, suvvia, che razza di titolo è?

Come a dire: guardate che un giorno anche a voi andranno a noia attività come il kissing e il tickling, specie in zone inesplorate? O che nella mia psiche profonda non sono così intriganti come credo e come crede la mia corteccia? Poi, se questo libro non spiega come migliorare le mie capacità di kissing e tickling, come fare in modo che, dio ce ne scampi e liberi, non risultino noiose, che motivo ci sarebbe di comprarlo?

7 settembre 2008

La Congettura del Pan Carrè

I tre (3) messaggi seguenti, estratti dalla traduzione di Evolution, contengono, a mio modestissimo, poi mica tanto, parere, 4 (quattro) errori¹.

Saprebbe il candidato sviluppatore di GNOME indicare quali?

Messaggio numero 1
#: ../mail/evolution-mail.schemas.in.h:62
msgid ""
"Initial height of the \"Send and Receive Mail\" window. "
"The value updates as the user resizes the window vertically."
Messaggio numero 2
#: ../mail/evolution-mail.schemas.in.h:64
msgid ""
"Initial width of the \"Send and Receive Mail\" window. "
"The value updates as the user resizes the window horizontally."
Messaggio numero 3
#: ../mail/evolution-mail.schemas.in.h:63
msgid ""
"Initial maximize state of the \"Send and Receive Mail\" window. "
"The value updates when the user maximizes or unmaximizes the "
"window. Note, this particular value is not used by Evolution "
"since the \"Send and Receive Mail\" window cannot be "
"maximized. This key exists only as an implementation detail."

Soluzione

Non sbirciate prima di averci pensato.
  1. le chiavi GConf non dovrebbero essere usate per memorizzare la larghezza di una finestra
  2. le chiavi GConf non dovrebbero essere usate per memorizzare la larghezza di una finestra
  3. le chiavi GConf non dovrebbero essere usate per memorizzare lo stato di massimizzazione di una finestra
  4. le chaivi GConf non dovrebbero essere aggiunte se non fanno niente e sono lì solo come dettaglio di implementazione
Insomma, ma sono solo io a capire che le frasi "GConf is a system for storing application preferences. It is intended for user preferences; not configuration of something like Apache, or arbitrary data storage." e "The root motivation for GConf is to make application preferences more manageable for system administrators." stanno a significare che non si può usare GConf per memorizzare di ogni opzione o valore di cui voglio tenere traccia tra un'esecuzione e l'altra? Anche se al momento non esistono soluzioni altrettanto comode?

Caspiterina, la dimensione di una finestra non è una preferenza utente, o se la vogliamo considerare tale non è di certo tra quelle un amministratore di sistema possa, voglia o debba modificare direttamente o renderla impositiva/obbligatoria...

[1] L'uso eccessivo e inutile delle incise non è mio, questa estate ho letto robaccia... Chi sa che fine hanno fatto i buoni autori di una volta...²
[2] Magari stanno raccogliendo funghi o coltivando fiori, come il buon Grigorij Jakovlevič Perel'man che ha ispirato il titolo del post, che a sua volta mi è stato ispirato da altre inattese e sgradite notizie³
[3] Sì, la cosa mi fa incazzare, non dovrei, non potrei e non vorrei, ma mi fa incazzare.