Beryl su openSuse 10.2

Sab, 13/01/2007 - 12:21

Beryl su openSuse 10.2

Inviato da JJ_Kame_R 48 commenti

Come installare e configurare beryl su openSuSE 10.2 e schede video nVidia o Intel.

ATTENZIONE! Non rispondo di eventuali danni.



Comincio la guida con una piccola premessa.

Premessa:

Questa guida vi permette di utilizzare Beryl con supporto AiGLX su schede nVIdia o Intel.
I possessori di schede ATi, al momento, non godendo del supporto AiGLX possono fruire di Beryl solo tramite XGL.
Per la natura di XGL le prestazioni su queste schede non sono tali da permettere un uso "quotidiano" di beryl, inoltre l'attivazione di XGL porta a perdere l'utilizzo da parte di Xorg dei driver di accelerazione 3d.
Il risultato è che qualsiasi applicazione 3d dirà che l'accelerazione 3d nn è presente.
Esistono dei modi per ovviare questo problema (lanciare 2 server X o creasi un file che disabilita XGL per una data applicazione), ma poiché i risultati non sono soddisfacenti per ora ho deciso di nn trattare l'istallazione e l'utilizzo di Beryl su schede ATi.
Spero di poter presto aggiornare la guida con la bella notizia di supporto AiGLX anche per Amd/Ati.

Esiste una guida ufficiale di SuSE 10.2 per beryl che trovate a questo indirizzo:
http://en.opensuse.org/Beryl

Vi permette di installare e usare Beryl.

Personalmente preferisco però una strada differente.


Installazione drivers VGA:


Per prima cosa scarichiamo i drivers per la nostra scheda video ed installiamoli assicurandoci di avere i pacchetti relativi agli Header del Kernel(kernel-source gcc gcc++ make).

Una volta completata la procedura e configurato Sax2 possiamo partire.

Dobbiamo aggiungere varie righe al file /etc/X11/xorg.conf

Il file è composto in varie sezioni. Aprendolo con mc o altro dobbiamo aggiungere:

Alla sezione "ServerLayout"
Option "AIGLX" "true"


Alla sezione "Extensions"
Option "Composite" "Enable"


Alla sezione "DRI"
Group VIDEO
Mode 0666


Alla sezione "Device"
Option "XAANoOffscreenPixmaps" "true"
Option "DRI" "true"



I possessori di nVidia possono poi ispirarsi al mio file xorg e aggiungere alcune ottimizzazioni. Quelle evidenziate sono obbligatorie per il corretto funzionamento di beryl.

Section "Device"
BoardName "NVIDIA GeForce 7600GT XXX"
BusID "2:0:0"
Driver "nvidia"
Identifier "Device[0]"
Option "NvAGP" "1"
Option "AGPMode" "8"
Option "AGPFastWrite" "True"
Option "RenderAccel" "true"
Option "AllowGLXWithComposite" "true"

Option "EnablePageFlip" "true"
VendorName "VESA"
Option "XAANoOffscreenPixmaps" "true"
Option "DRI" "true"
Option "AddARGBGLXVisuals" "true"

Option "TripleBuffer" "true"
EndSection


Section "ServerLayout"
Identifier "Layout[all]"
InputDevice "Keyboard[0]" "CoreKeyboard"
InputDevice "Mouse[1]" "CorePointer"
Option "Clone" "off"
Option "Xinerama" "off"
Screen "Screen[0]"
Option "AIGLX" "true"
EndSection


Section "DRI"
Group "video"
Mode 0666
EndSection

Section "Extensions"
Option "Composite" "Enable"
EndSection




Ora tutto è configurato a puntino... si tratta di installare beryl.


Istallare Beryl - pacchetti devel:


Ci sono due modi basilari.
Quello illustrato dalle faqs di suse ci permette di installare la versione stable di beryl 0.1.4.
Personalmente non mi ha soddisfatto, è lenta e con poche opzioni.

Vi consiglio vivamente di installare la versione svn.

La procedura è banale ma richiede un minimo di dimestichezza con le dipendenze.
Se come me siete compilatori folli avrete già tutti i pacchetti necessari.
Se durante la compilazione si bloccherà per mancanza di dipendenze dovrete ricercare il pacchetto mancante in Yast/Smart e sopperire alla mancanza.

I pacchetti devel fondamentali che dovete avere installato sono selezionabili da Yast.
Selezionate in gestione pacchetti come "Filtro" "modelli" e nella sezione "Sviluppo" selezionate:


Sviluppo di Base
Sviluppo GNOME
Sviluppo KDE
Sviluppo C/C++


Istallare Beryl - download & compile:


Scaricare la versione svn è decisamente semplice.

Aprite un terminale, passate a root e scrivete:



La seconda parte ("/home/beryl/" rappresenta la cartella nella quale volete scaricare i sorgenti.
Il processo di download vi porterà via qualche minuto al massimo. Fatto questo avrete i sorgenti pronti per la compilazione.

Per compilare digitate:
$ cd /home/beryl
$ ./makeall


E andate a prendervi un bel thè con biscotti mentre compila il tutto.

Una volta andata a buon fine la compilazione, se non avete avuto problemi di dipendenze vi troverete con il compilatore arrabbiato perché non può compilare le dipendenze di "heliodor".
Lasciate perdere, queste dipendenze non esistono ancora. Se siete arrivati a vedere questo messaggio avete completato la parte più difficile della guida.

Ora beryl è installato... funzionerà?


Provare e configurare Beryl:


Assicuratevi di aver disabilitato XGL.
in /etc/sysconfig/displaymanager il WM deve essere Xorg.

Fate ripartire il server x (ctrl+alt+backspace) ed entrate in una console da utente.

Digitate:

$ emerald --replace & beryl


Se tutto va positivamente dovreste vedere scritto:

[1] 5121
XGL Absent, checking for NVIDIA
Nvidia Present
Relaunching beryl with __GL_YIELD="NOTHING"
XGL Absent, checking for NVIDIA
Nvidia Present
Initial splash


Se tutto è andato a buon fine state usando emerald come windows manager e avrete già gli effetti attivi.

Se non dovesse partire, riavviate X e digitate invece:

$ beryl --use-copy


Così dovrebbe proprio andare.

Passiamo alla configurazione.

Avete compilato anche "beryl-manager", utility di gestione per beryl e "beryl-settings" utility di configurazione.

Purtroppo al momento beryl-manager crea conflitti con kpager e altro per cui vi sconsiglio di lanciarlo.

Al contrario digitando in console:

$ beryl-settings


Si aprirà il pannello di gestione plugin e varie.

Nella prima schermata per migliorare le prestazione togliete la spunta a:


Sync to VBlank
Find Refresh Rate


C'è un cursore che vi consente di impostare il refresh rate del monitor, settate il massimo: 200.

Ora potete sbizzarrirvi ad attivare e disattivare effetti.

Non attivate mille plugins, scegliete quelle che più vi piacciono. Molte sono pacchiane e pesanti. Tenete conto che tutto pesa sulla fluidità del vostro server X


Attivare beryl all'avvio:


Personalmente sconsiglio vivamente di attivare beryl all'avvio.
Ho notato che va meglio se caricato a sistema avviato e in "idle".

Comunque se voleste avviarlo con X potete aggiungere in /utente/.kde/autostart (o l'equivalente su gnome) uno script a beryl.


Considerazioni Finali:


Nel complesso trovo beryl decisamente stabile. Non mi ha mai dato problemi ne con applicazioni 3d ne video o altro.
Quello che ancora non è perfettamente soddisfacente è l'altalenarsi delle prestazioni.
Si passa da giornate intere di fluidità assoluta a momenti di reattività unica. Il lavoro di rifinitura del codice è in atto.
Promette molto bene anche per l'utilizzo quotidiano.
Personalmente lo uso sempre.


Per ogni dubbio o consiglio o ulteriore spiegazione non esitate a contattarmi.





Commenti

Ritratto di JJ_Kame_R
#1

Inviato da JJ_Kame_R il Mar, 23/01/2007 - 14:33.

Re: Bene ci voleva per voi smanettoni...

Si. Smile

Da ieri pome c'è un tool di check della configurazione in beryl core. Questo spiega i primi messaggi.

Per quelli dopo possono essere dovuti a due cose:

1) Nn hai disinstallato un vecchio beryl tramite rpm presente
2) Nn sono stati sovrascritti dei file.

Ti consiglio di far così:

1) rm -r /usr/lib/beryl
2) rm -r /home/beryl
3) rm -r /home/nomeutente/.beryl

Fatto questo... riscarichi l'svn e lo ricompili.
Partirà con impostazioni di default e avrai eliminato i vecchi file.

"Do or Do Not. There is No Try." - Master Yoda
Sabayon 3.3 (gentoo 4 president) - xp2400@3400+ - 7600gt XXX - 1,5gb RAM
"Penguin Prevails && Overruns!!!" - JJ_Kame_R



Ritratto di JJ_Kame_R
#2

Inviato da JJ_Kame_R il Mer, 24/01/2007 - 11:47.

Re: Bene ci voleva per voi smanettoni...

Se da Yast installate control-center2 devel compilerete anche Heliodor.
Nn che se ne senta effettivamente il bisogno... emerald è già sufficiente...

"Do or Do Not. There is No Try." - Master Yoda
Sabayon 3.3 (gentoo 4 president) - xp2400@3400+ - 7600gt XXX - 1,5gb RAM
"Penguin Prevails && Overruns!!!" - JJ_Kame_R



Ritratto di dfrincon
#3

Inviato da dfrincon il Mer, 24/01/2007 - 19:31.

Re: Bene ci voleva per voi smanettoni...

O fatto tutto quello che ai detto o rimosso tutte le cartelle e ricompilato nuovamente ma non e' cambiato niente.
sempre lo stesso errore, altre soluzioni.



Ritratto di JJ_Kame_R
#4

Inviato da JJ_Kame_R il Mer, 24/01/2007 - 19:52.

Re: Bene ci voleva per voi smanettoni...

Se ti da questi:

libberylsettings: Couldn't get vtable from '/usr/lib/beryl/xxxxxxxxxx.so' plugin

E' perchè la versione delle plugins che tenti di usare nn è la stessa di beryl.

Sei sicuro di nn avere pacchetti di beryl, emerald o altro istallati tramite yast/smart/zen?
Sei sicuro di aver cancellato la cartella /usr/lib/beryl?
Hai riscaricato l'svn cancellando la cartella di download?

Quello che hai è un "problema" noto e le soluzioni sono quelle che ti ho dato.

Se reputi che sia un baco scrivi sul forum di beryl (c'è una sezione ita):
http://forum.beryl-project.org/

Dammi qualche info in + sul tuo sistema in pm... che cerco di darti una mano...

"Do or Do Not. There is No Try." - Master Yoda
Sabayon 3.3 (gentoo 4 president) - xp2400@3400+ - 7600gt XXX - 1,5gb RAM
"Penguin Prevails && Overruns!!!" - JJ_Kame_R



Ritratto di dfrincon
#5

Inviato da dfrincon il Mer, 24/01/2007 - 21:23.

Re: Bene ci voleva per voi smanettoni...

la prima volta che o compilato il pacchetto e' andato tutto bene e a funzionato. Invece dopo aver aggiornato la seconda volta la cartella a iniziato a dare questo errore e non a piu' funzionato.
o eseguito alla lettera quello che ai detto ma il problema persiste.



Ritratto di Frag91
#6

Inviato da Frag91 il Mer, 24/01/2007 - 21:39.

Funziona ma in parte

Salve, bella guida, complimenti, ma come sempre, ho qualche problema:
Ad un certo punto, si blocca la compilazione, perchè mi chiede acquamarine, dato che non ho installato kde, nn ce l'ho.
Il fatto è che beryl mi funziona lo stesso, anche egregiamente per il pc che ho.
Il problema è che se do beryl-manager, lo schermo diventa tutto bianco e devo riavviare il server X.
Con beryl-settings, posso settare on/off i vari effetti, ma non posso scegliere i tasti, fortunatamente, me li ricordo perchè precedentemente avevo già installato beryl.

La compilazione doveva continuare?
Avete anche voi il problema di beryl-manager?



Ritratto di JJ_Kame_R
#7

Inviato da JJ_Kame_R il Gio, 25/01/2007 - 12:09.

Re: Funziona ma in parte

Beryl manager da problemi con xorg.
Ho avuto problemi del genere finchè nn ho editato bene il file xorg.

Hai aggiunto tutti i parametri in rosso?
La profondità di colore è 24?
Se si, prova con 16 e dimmi se va.

Per i problemi di vtable è che hai varie versioni di plugin.
Possibile che tu abbia compilato da user e non root?
Per risolvere devi eliminare fisicamente tutto e rimettere tutto per bene con un ./makeall --force.

"Do or Do Not. There is No Try." - Master Yoda
Sabayon 3.3 (gentoo 4 president) - xp2400@3400+ - 7600gt XXX - 1,5gb RAM
"Penguin Prevails && Overruns!!!" - JJ_Kame_R



Ritratto di Frag91
#8

Inviato da Frag91 il Gio, 25/01/2007 - 19:11.

Re: Funziona ma in parte

mmm.. si, i parametri in rosso li ho aggiunti tutti.
Cosa intendi per eliminare fisicamente tutto?
Se rifaccio il makeall, mi darà di nuovo il problema di aquamarine, fa niente?



Ritratto di JJ_Kame_R
#9

Inviato da JJ_Kame_R il Gio, 25/01/2007 - 22:10.

Re: Funziona ma in parte

All'atto pratico no. Cmq se istalli i pacchetti devel di kde lo compili.

Riguardo al ricompilare nn era per te.

Tu hai provato a settare il desktop a 16 bit?

Il baco dello schermo bianco è un baco che aveva la 0.1.4, tra oggi e domani faccio una piccola ricerca al riguardo...

"Do or Do Not. There is No Try." - Master Yoda
Sabayon 3.3 (gentoo 4 president) - xp2400@3400+ - 7600gt XXX - 1,5gb RAM
"Penguin Prevails && Overruns!!!" - JJ_Kame_R



Ritratto di vittorio
#10

Inviato da vittorio il Dom, 28/01/2007 - 17:18.

Re: Errore durante la compilazione

Dopo poche secondi di compilazione questo è l'errore che mi viene restituito dalla shell:

Please add the files
codeset.m4 gettext.m4 glibc21.m4 iconv.m4 isc-posix.m4 lcmessage.m4
progtest.m4
from the /opt/gnome/share/aclocal directory to your autoconf macro directory
or directly to your aclocal.m4 file.
You will also need config.guess and config.sub, which you can get from
ftp://ftp.gnu.org/pub/gnu/config/.

./autogen.sh: line 11: intltoolize: command not found
BUILD FAILED for beryl-core

Il problema è che quei file che mi chiede in /opt/gnome/share/aclocal neanche li ho...
Suggerimenti?