Posts Tagged “gtk”

Che MONO sia un progetto tanto promettente quanto contrastato e criticato all’interno del poliedrico e polemico mondo del sorgente libero non c’è bisogno di ripeterlo. Tutti, o quasi ci ricordiamo la sua storia fatta da un Miguel de Icaza additato di essere in combutta con Microsoft, della diatriba di NOvell come “backdoor” di Microsoft, della gente che odia a prescindere Mono e .Net e C Sharp e co. e di quella che solo a “vedere l’estensione .exe nella sua box” gli prende l’orticaria.

Fortunatamente ci sono anche persone, e sviluppatori, un po’ sani di mente in giro. Infatti, nel giro di poco tempo, sono apparse diverse applicazioni degne di nota scritte in Mono e GTK. Tra le più famose potrei citare Banshee, Gnome DO, Tomboy, Tasque e tante altre.
E’ facile notare come il ciclo di sviluppo di queste sia stato particolarmente rapido e efficace. Si può senza dubbio affermare che siano tutte applicazioni al TOP in ambiente Gnome e GTK. Questo dimostra sicuramente la bontà del progetto mono e quantomeno che sviluppare in mono sia semplice e redditizio tanto quanto sviluppare in C o C++ o altri linguaggi di alto livello.

Per quale motivo si deve criticare un software,interprete,compilatore o qualunque cosa sia se questo è completamente opensource e libero da qualunque vincolo con Microsoft? Solo perché produce degli eseguibili con estensione exe e delle librerie con estensione dll?. Alla fine tutti sappiamo che in ambiente Unix-like l’estensione non ha alcun significato particolare ma è il contenuto di un file a determinarne le caratteristiche.
Che cambia avere “.dll” al posto di “.so”?

Ma lasciamo perdere e veniamo al dunque.

Fino ad oggi Mono è stato esclusiva di Gnome e GTK. Fino ad oggi…
Infatti il team di KDE ha creato, da qualche tempo, degli appositi bindings QT sotto il mone di Qyoto.

Qyoto makes it possible to develop Qt and KDE applications using C#, or any other .NET language. Qyoto uses SMOKE, and offers access to almost all Qt and KDE classes.

E oggi abbiamo la prima applicazione opensource scritta con questa tecnologia.
Si trata di un software di Instant Messaging basato su XMPP. Si chiama Synapse e a prima impressione (è ancora in uno stato di pre-alpha) promette molto bene.
Se volete potete scaricarlo per Ubuntu Intrepid aggiungendo questa riga al vostro sources.list

deb http://ppa.launchpad.net/firerabbit/ppa/ubuntu intrepid main

Tag:, , , , , , , , , ,

Comments 5 Commenti »

Leggo sul blog di Cimi la sua proposta molto interessante.

Molti di voi conosceranno sicuramente Gnome-do e quello che fa.
Per essere meno tecnici possibile si tratta di un piccolo software che non fa altro che intercettare ciò che digitate da tastiera e restituire una serie di comandi/azioni che potete compiere sui vostri files/programmi.

Che ne direste ora se qualcosa del genere fosse integrato nelle GTK+ (o QT perché no!) e tutto il vostro Gnome rispondesse ai comandi che digitate da tastiera? E che ne direste se anziché dover ricordare a memoria le millemila scorciatoie da tastiera (eg. Ctrl+Alt+Shift+A+Backspace+Vattelappesca) Bastasse scrivere quello che volete fare?

Sicuramente si tratterebbe di una grande innovazione nel campo dell’usabilità.
L’esempio di Cimi non fa una grinza.

sometimes keyboard shortcuts are something so complicated to use: how can I remember alt+g, alt+k, alt+y, alt+s, ctrl+alt+h, ctrl+alt+h+super+t+f12+enter+backspace (omg I’m not playing the piano :D I just want to use my computer!!!) ?
Typing “fullscreen” is easier than remembering totem is using “F11″, Banshee “F”, another application could use “Ctrl+Alt+F” and so on… And while “fullscreen” is something known and famous, what about exotic shortcuts that almost each application has? Those are just useless… and dangerous! Imagine if I press “Ctrl+W” on an important document because I forgot the right command…

A volte le scorciatoie da tastiera sono qualcosa di veramente complicato: come si può ricordare alt+g, alt+k, alt+y, alt+s, ctrl+alt+h, ctrl+alt+h+super+t+f12+enter+backspace (per l’amor di dio non sto’ suonando un pianoforte :D voglio solo usare il mio computer!!!)
E mentre scrivere “fullscreen” è qualcosa di conosciuto e facile, cosa ne dite delle strane scorciatoie che quasi tutte le applicazioni hanno? Queste sono praticamente inutili… e pericolose! Immaginate di premere “Ctrl +W” su un documento importante poiché mi sono dimenticato la scorciatoia giusta…

Secondo me è un ottima idea, e anzi mi voglio sbilanciare ancora di più.
Che ne direste se il tutto fosse uno standard Free Desktop o qualcosa del genere? :D

Tag:, , , , , ,

Comments 6 Commenti »

E’ passato qualche mese da quando per la prima volta vi parlai di qgtkstyle.

Nel tempo questo ottimo tool, che permette alle applicazioni QT 4 (ad esempio quelle di KDE 4) di integrarsi perfettamente con lo stile GTK di Gnome in uso, si è costantemente migliorato fino al punto che verrà integrato di default nelle prossime librerie QT 4.5.

Ho inoltre scoperto che esistono ben 3 repository su launchpad all’interno dei quali c’è il suddetto pacchetto, per cui… chi non digerisce sorgenti compilazioni e dipendenze varie o semplicemente come si dice in toscana “gli pesa i culo” può semplicemente aggiungere questi repository al proprio sources.list:

deb http://ppa.launchpad.net/lovesyao/ubuntu intrepid main
deb-src http://ppa.launchpad.net/lovesyao/ubuntu intrepid main

L’ho provato ora ora, nessun problema… ecco come appare il mitico VLC su tema NewWave.
Screenshot VLC

Tag:, , , , , , , , , ,

Comments 2 Commenti »

E’ qualche tempo che sembra che le GTK abbiano perso la propria spinta innovativa come toolkit grafico e che al contrario le QT abbiano guadagnato molto terreno sia tecnologicamente che come immagine che come base per lo sviluppo di software multipiattaforma di alto livello.
E’ sotto gli occhi di tutti quello che è successo negli ultimi mesi.

Nokia aquisisce Trolltech, la famosa azienda che ha creato le librerie QT, probabilmente con l’intenzione di farne largo uso nei suoi telefoni cellulari della serie s40 e s60. La recente strategia opensource per quanto riguarda Symbian, il sistema operativo mobile attualmente più diffuso, sembra favorire fortemente questo processo evolutivo nell’ottica di contrastare anche l’imminente progetto Android di Google.
Maemo invece sembra lasciata in disparte, e anche se la stessa Nokia assicura che Maemo resterà basata sull’accoppiata Gnome/GTK temo che questa proposta rimarrà molto di nicchia e non riuscirà a penetrare profondamente il mercato.

Openmoko passa a QT + Enlightenment dopo aver sperimentato, con non molto successo l’accoppiata Gnome + GTK.

Due dei più grandi software opensource/multipiattaforma GTK di sempre quali Firefox in primis e VLC decidono di creare interfacce grafiche per i loro software in QT parallelamente alle ormai consolidate GTK.

KDE 4 con la release 4.1 matura eccellentemente e le sue applicazioni sono portabili anche su Windows e OSX. Gnome invece continua il suo lento sviluppo fatto di passi molto piccoli e qualcuno (Mr. Ubuntu) parla addirittura di Gnome scritto in QT!.

Gli sviluppatori GTK sono rimasti pochi, forse anche a causa della politica di sviluppo un po’ troppo rigida del team, non so. Fatto sta’ che attualmente i core developper delle GTK sono circa una decina e non hanno dietro una azienda del calibro di Trolltech (Nokia) che contribuisce enormemente con soldi e sviluppatori all’evoluzione del toolkit. Il mito delle QT come software proprietario e chiuso alla comunità ormai è defunto da molto tempo. Le QT sono sotto GPL v3 e, a detta della maggior parte degli sviluppatori necessitano di un minor numero di righe di codice per ottenere un risultato uguale o migliore delle GTK.

Alla luce di questi eventi è impossibile non notare che in atto c’è un progressivo decadimento delle GTK e un progressivo aumento di interesse verso le QT in generale. La proposta di Shuttleworth mi ha fatto in un primo momento sorridere… “Gnome con QT :D naaa…” poi pensandoci bene invece ho realizzato che probabilmente adesso forse non sarei ritornato a KDE se fosse successo.

Tag:, , , , , , , , , , , , , ,

Comments 5 Commenti »

Ormai chiunque nella nostra frenetica società, sia che lavori sia che studi, ha la necessità di darsi degli obiettivi da raggiungere nel minor tempo possibile e per farlo è necessario pianificare le attività, gli impegni o qualunque cosa si renda necessaria nel minimo dettaglio.

Per fortuna che viene in nostro aiuto Tasque!
Si tratta di un piccolo programmino in GTK+ – e Mono – perfettamente integrabile in Gnome (Evolution Data Server) e altri servizi (anche web come RTM, Remember The Milk) che ci permette di sincronizzare e tenere sempre sott’occhio lo stato delle nostre cose da fare :)

Tasque

E’ gia presente nei repository di Intrepid ma per chi volesse provarlo su Hardy ne esiste anche uno gentilmente ospitato su Launchpad

Personalmente (apparte la solita questione dell’utilizzo di Mono) lo trovo estremamente utile e funzionale, io che mi scordo anche di mangiare a volte :D

Tag:, , , , , , , , ,

Comments Nessun Commento »

Quasi tutti quelli che leggono questo blog e quelli che trattano argomenti inerenti a GNU/Linux e opensource sicuramente saranno al corrente dell’esistenza di Pidgin (Gnome) e Kopete (KDE).

Si tratta di due software di Instant Messaging multiprotocollo, ovvero due software che permettono di tenersi in contatto con tutti i propri amici contemporaneamente attraverso vari protocolli quali MSN, Gtalk, Jabber, IRC, ICQ etc.

Oltre a questi due ormai famosi e apprezzati software ne esiste un terzo, da poco avviato, ma il cui sviluppo procede a ritmi molto spediti. Si tratta di Galaxium.

Galaxium

Il software, e qui sono sicuro che molti storceranno il naso, è sviluppato in C# e quindi utilizzando Mono, l’implementazione opensource del .NET di Microsoft. E’ stata rilasciata da poco l’ultima versione stabile la 0.7.1 e per ora solo il protocollo MSN è supportato, ma è in progresso il lavoro su Jabber, IRC, AIM/ICQ, Gtalk e GaduGadu.

Se volete potete installare comodamente dei pacchetti precompilati per Ubuntu Hardy aggiungendo questi due repository al vostro sources.list e installate il pacchetto galaxium o alternativamente galaxium-svn se volete qualcosa di più recente ma instabile :) :

deb http://ppa.launchpad.net/galaxium/ubuntu hardy main
deb-src http://ppa.launchpad.net/galaxium/ubuntu hardy main

Personalmente non mi sembra che la versione 0.7.1 sia granché ancora come impostazione. Ma da una prova sulla ultima release prelevata da svn

svn checkout http://galaxium.googlecode.com/svn/trunk/ galaxium-read-only

posso dire che i progressi si vedono a vista d’occhio, e devo ammettere che la velocità e la facilità con cui vengono implementate caratteristiche che altri software ancora lamentano attraverso la piattaforma .NET è veramente impressionante. Vedi anche il caso del player audio Banshee ad esempio!

Le caratteristiche implementate attualmente sono:

  • Lista contatti completamente personalizzabile
  • Interfaccia completamente customizzabile
  • Client multiprotocollo con possibilità di addin di terze parti
  • Personalizzazione delle immagini personali, emoticon e messaggi personali
  • Cronologia conversazioni
  • Supporto temi Adium
  • Supporto audio tramite Gstreamer
  • Comunicazione con contatti Yahoo tramite MSN
  • MSN su protocollo HTTP
  • Trasferimento files indiretto
  • Chat di gruppo
  • Messaggi offline
  • Profili di roaming

Sono allo studio features molto interessanti oltre all’implementazione di molti altri protocolli:

  • Trasferimento diretto dei files (MSN, Gtalk, Jabber, IRC)
  • Conversazioni Audio/Video
  • Supporto a NAT e uPNP
  • Integrazione con player musicali come Banshee o Rhytmbox
  • Integrazione con Gnome, Nautilus etc…
Tag:, , , , , , , , , ,

Comments 7 Commenti »

Bene bene… era un pezzo che non riscrivevo sul blog.

Non ero a corto di idee o di ispirazione come spesso capita non vi preoccupate (e chi se ne frega direte voi :P ) ero solo in vacanza in Repubblica Dominicana. Ma non divaghiamo, ne parlerò prossimamente!

Oggi vi presento un piccolo ma utilissimo engine per le famosissime QT4.

Si chiama Qgtkstyle e permette come forse potete intuire di trasformare (almeno visivamente) una applicazione QT in una GTK. Il codice non fa altro che tradurre le chiamate QT nelle corrispettive GTK permettendo cosi di avere pulsanti, scrollbar, menu e quant’altro in “quasi” perfetto stile GTK.

Qgtkstyle

Non sembra proprio un software scritto in QT! :O

Per recuperare il codice è necessario avere installato il tool subversion per cui se non lo avete gia fatto provvedete ad installarlo tramite apt o synaptic.

INSTALLAZIONE

  • ottenete il codice sorgente:

    svn co svn://labs.trolltech.com/svn/styles/gtkstyle
    cd gtkstyle

  • Installate tutto il necessario per una corretta compilazione (E’ importante che la vostra versione delle QT4 sia maggiore o uguale alla 4.3):

    sudo aptitude install libgtk2.0-dev libqt4-dev qt4-qtconfig

  • Procedete alla compilazione e all’installazione del software:

    qmake-qt4 && make && sudo make install

  • Impostazione del tema QT4:

    recatevi a Sistema -> Preferenze -> Impostazioni QT 4 e selezionate il tema GTK.

Ecco fatto. Godetevi le vostre applicazioni QT in perfetto stile GTK :)
Personalmente l’ho provato col tema Human-murrine e tutto sembra funzionare molto bene. solo Pokerth sembra non digerire perfettamente le nuove impostazioni.

Tag:, , , , , , , , ,

Comments 8 Commenti »

Tempo fa vi avevo parlato di Blueman, un gestore di connessioni bluetooth per Gnome.
Mi sono accorto tentando recentemente di aggiornare il suo repository svn che questo non esisteva più. Come mai?

Perché il progetto si è spostato ed ha ora un nuovo sito internet che potete trovare a questo indirizzo.

Le novità dell’ultima versione in via di sviluppo sono interessanti e finalmente il software è localizzato anche in italiano!

Se volete installare la versione 0.3 stabile allora eseguite questi semplici comandi da terminale.

~$ echo 'deb http://download.tuxfamily.org/blueman ubuntu bluetooth' | sudo tee /etc/apt/sources.list.d/blueman.list
~$ wget http://download.tuxfamily.org/blueman/repository.gpg -O- | sudo apt-key add -
~$ sudo apt-get install blueman

Se invece desiderate provare la versione 0.4 in via di sviluppo scrivete:

~$ echo 'deb http://download.tuxfamily.org/blueman ubuntu bluetooth blueman-svn' | sudo tee /etc/apt/sources.list.d/blueman.list
~$ wget http://download.tuxfamily.org/blueman/repository.gpg -O- | sudo apt-key add -
~$ sudo apt-get install blueman blueman-i18n

Se invece preferite aggiornare da svn eccovi il repository:

svn co svn://svn.tuxfamily.org/svnroot/blueman/svn/trunk blueman

Le dipendenze per poter installare blueman sono le seguenti per cui se non le avete procuratevele tramite apt:

python-pyrex
python2.5-dev
libbluetooth-dev >= 3.20
bluez-utils >= 3.20
gtk >=2.12
gnome-bluetooth
gnome-vfs-obexftp

P.S. all’interno della directory dei sorgenti trovate un piccolo script capace di generare automaticamente un pacchetto deb.
Per eseguirlo puntate alla directory dove avete i sorgenti ed eseguite ./bulid-deb, lo script si occuperà di tutto per voi ;)

Tag:, , , , , , ,

Comments Nessun Commento »

Premetto che non voglio far polemica con nessuno ma esprimere semplicemente il mio punto di vista su due delle comunità più grandi e importanti nel panorama del software libero ovvero quelle di Gnome e di KDE. Aggiungo che non essendo direttamente coinvolto nello sviluppo di questi progetti non posso capire fino in fondo chi è dalla parte della ragione e chi del torto (nel caso che presenterò in questo articolo), mi permetto di dare un giudizio soltanto come utente e come appassionato di tecnologia e di software libero quindi spero che nessuno consideri quello che dico come una provocazione o altro.

E’ venuta alla luce in tempi abbastanza recenti una incompatibilità tra le applicazioni GTK+ e la system tray del futuro KDE 4.
Tutto è dovuto al fatto che apparentemente le applicazioni GTK+ non riescono a gestire correttamente le visuali ARGB, estremamente importanti per la futura piattaforma KDE in quanto su di esse si basano molti degli effetti grafici di Plasma come trasparenze, animazioni etc…

L’11 gennaio verrà rilasciata la versione stabile di KDE 4 e dovrà in un modo o nell’altro ovviare a questo problema. Le alternative sono 2, continuare sulla strada che si è scelto di percorrere (ottima a mio avviso) e “ignorare” questo bug causando qualche problema con le applicazioni GTK+ oppure riscrivere parte del codice di plasma castrando però alcune delle features più interessanti e visibili ad occhio nudo di KDE 4. Nel primo caso si spera in un rilascio di una patch o di qualsiasi altra cosa da parte del team GTK+ in tempi brevi, nel secondo caso… beh speriamo che non succeda, lascerebbe delusi molti, me compreso.
Queste le parole di A. Seigo

so now i’m conflicted.

do i release plasma in all its shining glory and show the toolkits to be buggy when it comes to handling argb visuals?

or do i retreat, like probably every other serious app that may have gone before me, and make plasma look less hot (excuse the pun ;) but work properly?

Nel frattempo lo stesso Seigo (presidente di KDE) ha comunicato tramite bugzilla questo problema sperando di ricevere una risposta sensata. In parte lo è stato, tuttavia non so’ perché ma mi sembra sempre di notare una certa sufficienza (anche in questo caso)nelle risposte date da parte del team di Gnome/Gtk nei confronti dei bug reports o dei feature request provenienti da persone estranee alla loro cerchia.

In sostanza non mi aspetto che questo bug o feature che dir si voglia venga corretto o implementato nel prossimo futuro da parte degli sviluppatori GTK. Probabilmente mi sbaglierò, forse neanche di troppo, ma la comunità Gnomesca mi è sempre sembrata abbastanza riluttante verso grandi progressi tecnologici, preferiscono piccoli passi e a volte si perdono in diatribe assurde tipo quale deve essere il posizionamento corretto del pulsante “OK” oppure il colore di sfondo di una icona, insomma cose davvero di poco conto. Poi invece lasciano indietro cose importanti come questa: la compatibilità delle loro applicazioni con gli altri DE.

Ciò non toglie che il lavoro che svolgono sia egregio altrimenti non mi sarei mai deciso di passare da KDE a Gnome.
E’ anche vero che questa “lentezza” può essere vista come una sorta di accuratezza, di ricerca della perfezione che forse i ragazzi di KDE hanno di meno.
Insomma KDE preferisce i grandi salti generazionali, Gnome i piccoli aggiornamenti incrementali. Non mi è dato sapere quale sia la soluzione migliore ma sinceramente mi piacerebbe vedere un po’ più di collaborazione tra i due ambienti; questa volta si dovrebbero adattare gli Gnomi, in futuro magari saranno i Kdeiani a dover fare lo stesso. E’ inutile giocare a scaricabarile perdendo di vista i veri obbiettivi. Sarebbe meglio che tutti si dirigessero verso un obbiettivo comune, ovvero il progresso tecnologico e per come la penso io la scelta di KDE di adottare pienamente il supporto alle visuali ARGB è la strada giusta.

Nessuno dei toolkit odierni le supporta pienamente, anche le Qt soffrono di qualche piccolo problema e non sono da meno i driver Nvidia (da notare che la stessa Nvidia ha rilasciato una patch per i propri driver in tempi record!) ma se nessuno si decide a percorrere una strada nuova il progresso non c’è.

Sono fiducioso che tutto si sistemerà nel migliore dei modi ;)

Tag:, , , , , , , , , , ,

Comments Nessun Commento »

Tempo fa vi ho parlato di Spring, un motore per RTS (Real Time Strategy) ovvero videogiochi di strategia in tempo reale utilizzato principalmente come evoluzione del celeberrimo Total Annihilation.
Se c’è una cosa che gli si può rimproverare è che non possiede un minimo di interfaccia grafica. Per questo sono state create diverse “Lobby” ovvero delle interfacce grafiche che permettono di avviare partite in multiplayer, single player e di configurare alcuni aspetti di gioco.

Ne esistono diverse, tuttavia quella che preferisco io si chiama semplicemente SpringLobby: è scritta in C++ utilizzando il toolkit grafico WxWidgets,è quindi multipiattaforma e prende un look perfettamente integrato con il vostro tema GTK. Eccovi una schermata.

Spring Lobby

Se volete installare Spring e la Spring Lobby potete tranquillamente aggiungere questi repository per Gutsy contenenti le ultime versioni nel vostro /etc/apt/sources.list

deb http://buildbot.no-ip.org/~yokozar/apt gutsy main #Spring Project – Ubuntu 7.10 “Gutsy Gibbon”
deb-src http://buildbot.no-ip.org/~yokozar/apt/ gutsy main #Spring Project – Ubuntu 7.10 “Gutsy Gibbon”

importare la chiave del repository

wget -q http://buildbot.no-ip.org/~yokozar/apt/387EE263.gpg -O- | sudo apt-key add -

ed installare il necessario:

sudo apt-get update && sudo apt-get install spring spring-lobby-springlobby

alternativamente potete recuperare il codice sorgente direttamente da svn col comando

svn co http://svn.springlobby.info/trunk springlobby

e procedere alla compilazione da sorgenti coi seguenti comandi da terminale:

sudo apt-get install build-essential libwxbase2.8-dev libwxgtk2.8-dev
cd springlobby
./autogen.sh
./configure --prefix=/usr
make
sudo make install

Tag:, , , , , , , , , , ,

Comments Nessun Commento »