That’s my blog… Life and Linux

Da compiz a beryl, di nuovo a compiz… E poi?

Compiz e Beryl uniti nei loghi! Normalmente, come avrete notato, seppur segua da vicinissimo le vicende dei desktop 3D (stando anche sempre a contatto con gli sviluppatori) non posto molte notizie che li riguardano, visto che di solito in poco tempo rimbalzano nella blogosfera, preferisco magari rendere disponibili queste novità a tutti in formato .deb :P, ma ultimamente, dopo la fusione tra Compiz e Beryl tutto sembra essersi fermato… Ma ve lo dico subito, non è così!

Facendo un passo indietro e nel tentativo di rendere pieno il senso del titolo, facciamo una mini-storia fino ai tempi non lontani in cui Beryl era un progetto vivo: il mio primo composite manager è stato xcompmgr (che esiste già dal 2004) anche se a causa di problemi di supporto hardware l’esperienza finì molto brevemente; poi grazie all’avvento di Xgl, il serverone 3D, passai al primo composite con la "C" maiuscola: Compiz :P, ma – come molti sanno – dopo il rilascio del codice da parte di Novel, per diversi mesi il suo sviluppo sembrava essersi interrotto, fu così che in seno alla comunità Ubuntu, e ad opera di QuinnStorm, nacque Compiz-Quinn ossia una versione modificata di compiz che risolveva diversi problemi ed aggiungeva alcune funzionalità; la comunità si spostò quindi in massa a questa nuova versione patchata che poi col tempo assunse sempre più una sua fisionomia fino ad essere “costretta” al fork; magari più per incomprensioni che per motivi reali, però l’incapacità di parlarsi portò ad una divisione tra Compiz di freedesktop e Beryl; la mia scelta fu in beryl, anche perché nella sua fase iniziale la comunità era davvero parte integrante dello sviluppo come in pochi altri progetti; come ebbi a dire in altri post: «ti faceva sentire importante e vivo nello sviluppo».

Tuttavia, questa divisione ha dato origine a due cose: una positiva, l’altra meno… Ossia, il fork ha dato slancio al “gruppo” di freedesktop (= David Raveman) che ha riniziato a mettere le mani seriamente sul codice di compiz e, come altra conseguenza, sono nati anche i flame che tutti conosciamo e che se da una parte dimostrano che la comunità è viva più che mai, dall’altra ritengo che si siano spinti davvero troppo oltre.

Ad ogni modo, quando ormai i due progetti sembravano essere sempre più lontani tra di loro (a livello "ideologico", s’intende…), la ragionevolezza ha preso il sopravvento e si è deciso da una parte di aprirsi un po’ di più (compiz), mentre dall’altra si è rinunciato alla propria indipendenza ed a diverse righe di codice, magari ben condito di hack, ma quantomai funzionante e facile da gestire (beryl) per arrivare ad un progetto comune, sviluppato però da due reparti principali:

  • Compiz, quello vero, ha il compito di progettare ed implementare il codice del core e di alcuni plugin di base che già garantiscono il perfetto funzionamento del composite manager (anche se limitato in funzionalità e facilità di configurazione); il tutto in un team abbastanza ristretto e composto dai migliori sviluppatori del campo capitanati da David Raveman.
  • OpenCompositing / CompComm / CoCo / ??? (c’è già quasi tutto, tranne che un nome ufficiale) ha il compito di creare una comunità attiva nel supporto, la configurazione e lo sviluppo che riunisca gli sviluppatori (e gli utenti) più sfarfalloni di Beryl e Compiz-extra per produrre plugin aggiuntivi ed un sistema di installazione, avvio e  configurazione a prova di niubbo usando però come base sempre e solo il core ufficiale di Compiz per cui questi tool sono solo un aggiunta tutt’altro che indispensabile.

Fin qui, niente di nuovo (a parte i nomi provvisori) visto che sostanzialmente ho riscritto quanto indicato nelle roadmap ormai da due mesi e passa, ma nel tempo che è trascorso dall’ultima release (assoluta) di Beryl e dall’ultima stabile di Compiz (la 0.3.6) ad oggi entrambi i progetti non sono stati con le mani in mano.

Sul lato di Compiz, ci sono stati diversi cambiamenti sostanziali al nucleo che seppur non cambino molto la vita degli utenti, senza star ad entrare in superflui tecnicismi, toccano molto l’approccio di programmazione visto che è stato modificato il sistema con cui sono definite le opzioni del core e dei plugin passando da un sistema hardcoded nei sorgenti in C ad uno che sfrutta dei files xml esterni (metadata) da cui vengono poi generate le opzioni con cui si dovranno interfacciare sia lo sviluppatore (per definire i comportamenti a livello di codice) che gli utenti (per impostare compiz, ovviamente tramite software di configurazione appositi). Ad esse si uniscono il già noto supporto per l’input redirection che Xorg 7.3 supporterà, l’aggiunta di alcune feature importate da beryl (più che altro sui plugin) altre al bugfixing di routine.
Modifiche quindi piuttosto importanti, ma appunto, non troppo appetibili (immagino) per la maggior parte della platea.

E sul lato della comunità di OpenCompositing (per ora chiamiamola CompComm), invece?
Beh… Si dice che un immagine valga più di molte parole, per ora, vi lascio a questa:

CompComm settings manager

A presto, per altre brucianti novità 🙂

  • davide

    attendo nuove, soprattutto i deb di compiz 0.4…

    e qualche novità per gli ati, fig-ati…

    ciao d

  • WonderLand

    ma a quando compiz-extra funzionante (0.5 ovviamente …) :?????
    Ciao e grazie per l’impegno costante che rivolgi alla comunità

  • Suppongo si passerà direttamente a CoCo…

  • Beh, Trev, che dire, sono un po’ confuso e con me credo lo siano tante altre persone….

    Sono sempre stato Beryl-Sided ed ultimamente avevo anche cominciato a ficcare il naso affondo nei forum e così via per aiutare, se potevo, ma proprio quando avevo cominciato mi è morto Beryl.

    Ora, io uso i tuoi repository (Trev1 eyecandy) ed aggiorno compiz non appena esce qualche cosa nuova, idem per beryl-dev. Problema. Leggo sul forum di compiz che compiz-extra sta tirando fuori una marea di plugin nuovi anche rispetto a Beryl. Il compiz-extra che ho io dalla tua repo è veramente scarno ed ha meno plugin di Beryl. Tra l’altro, vedo uno screenshot di un software forse finalmente decente per configurare compiz come si faceva con Beryl… ma non lo trovo da nessuna parte e non trovo un software decente per configurare compiz adesso come adesso.

    Esempio: il plugin 3d fa schifo rispetto a quello di Beryl. Sembra una versione vetusta. Le finestre si alzano in 3D ma non hanno spessore e se una sovrasta l’altra, quella sotto si vede solo in parte e non viene renderizzata per la parte sovrastata! Ma che schifezza è sto coso? :_( 

    Insomma, non capisco, sono confuso. Che sono sti compiz-extra che ci sono nei tuoi repos? Sono molto vecchi o non vengono toccati dal team di Beryl on tutte e due le cose? QUando si avranno pacchetti extra con i plugin spettacolo che avevamo con Beryl? Io uso ancora Beryl, con i pacchetti che ci sono ora nei tuoi repo il passaggio a compiz è impossibile. Fa veramente schifo. Basta provare a curvare una finestra dalla zona centrale in alto per rendersi conto della differenza di qualità: la finestra si curva a pezzettoni segmentati!! Bleargh…. :_(

    Mi puoi fare luce su questi argomenti e spiegarmi cosa sta succedendo? Se bisogna solo avere pazienza, pazienza sia. Ma con Beryl non aggiornavi molto più spesso? Insomma, non ci capisco un cacchio… spero risponderai presto! Ciao! 

  • Ehm… ho letto l’ultimo post che fa un po’ di luce in merito. QUindi aspetti un nome per impacchettizzare tutto in qualcosa di carino? Quantomeno siamo arrivati al momento dello sblocco. Nel senso, finalmente Beryl e Compiz stanno ricominciando a camminare. Il periodo di fermo sembra essere durato meno del previsto, dopotutto. Speriamo bene… anche se con la community di Beryl alle spalle c’è veramente poco da preoccparsi riguardo lo sviluppo sfrenato di nuove tecnologie 🙂

  • Si, sto attendendo il nome per quanto riguarda compcomm (quasi sicuramente sarà Coral), mentre per compiz (e ccs) sto terminando uno script di setup, dopo averlo testato lo pubblicherò nel repository 🙂

  • blatto

    oddio, tutto ma non "fusion"!

    ricorda troppo quel caotico simil application server che è Coldfusion a.k.a. "Confusion", "sbolognato" da una ditta all’altra

     

    Compiz e beryl sono progetti troppo avvincenti!! 

  • Io ho votato per Coral perchè non c’erano altre alternative decenti ma… il nome doveva restare Beryl. Sia perchè Beryl è più famoso di Compiz (Sulle riviste si parla SOLO di Beryl) che perchè OSX ha Aqua, Vista ha Aero e Linux doveva avere Beryl, un Rubino, cioè una rappresentazione dell’elemento Terra. E comunque, cambiare il nome è stata una mossa veramente sciocca e denota grande infantilità da parte di ambo i gruppi. Compiz alla fine l’ha sempre vinta solo perchè dietro c’è mamma Novell che finanzia e protegge e dietro ancora indovina chi c’è? M$…. E questos econdo me spiega perchè Compiz non si evolve mai e migliora alla lentezza di un bradipo. Scusate ma sono frustrato… spero solo che Ravemann smetta di fare il bambino ed implementi cosucce carine come il cubo trasparente.

  • Beh, diciamo che il comportamento di Raveman lo posso capire, non credo ci sia tutto questo "complotto" di Novell, semplicemente si vuole fare una versione "upstream" che funzioni usando sistemi puliti, mentre si lascia agli impacchettatori il (triste?!) ruolo di aggiungere le patch che vengono postate via, via nella ML per rendere il tutto usabile ovunque…

    Per esempio, ieri ho postato divese patch nella ML di compiz:

    E, mentre la prima è stata accettata senza grossi problemi, la seconda e la terza non penso troveranno mai posto in compiz ufficiale, visto che come mi ha risposto David (trovate tutto nei link sopra, e rapresenta un esempio eclatante di come funzioni), non spetta a compiz risolvere tali problemi, quanto ai software buggati. Verissimo, ma intanto che aspettiamo i tempi biblici di Firefox e Java, noi non possiamo far altro che applicare quelle patch per rendere il tutto usabile!

    Per quanto riguarda la quarta patch, invece, io ci credo, ma la vedo un po’ dura; resta il fatto che la ritengo importante! 😛 

    Cmq, tornando al sondaggio ho votato pure io per Coral, penso che si potranno avere i pacchetti prima dell’11 (deadline ufficiale) visto come sta andando il voto 😉 

  • APpunto, sicuramente finisce in Coral ma…. e le patch che comunque per la comunità sono secondo me vitali? Che fai, le inserisci comunque nella versione dei tuoi repos? Perchè secondo me dovresti farlo anche se David non le vuole inserire in Compiz ufficiale che, comunque, mi sa che a parte Felipe e qualche altro sporadico purista, nessuno utilizzerà nudo e crudo una volta che Coral uscirà con almeno la prima versione ufficiale….

     D’altronde, chiunque usi ora Beryl passerà per forza di cosr a Coral e quasi tutti usavano Beryl o COmpiz con i pacchetti Extra…. Compiz da solo lo usavano veramente in pochi. E non valeva la pena secondo me.

    Magari non ci son complotti, magari vedo tutto nero per via del mio nicname ( ;P ) ma chi lo sa…. fatto sta che COmpiz prevale secondo me solo per Novell dietro. Ciao ciao. 

  • Tranquillo, le patch di cui sopra (a parte quella che "divide" il decorator), sono tutte incluse nei miei pacchetti, insieme ad altre che poi posterò più dettagliatamente!

  • Pingback: Compiz e CompComm: pacchetti GIT per Ubuntu « .: AleXit :.()

  • Pingback: CompComm Kubuntu Feisty 7.04 « Divilinux Lost Blog()

  • Pingback: Treviño’s Blog » Archives » CompComm, il desktop fiammante!()