# A Compiz Fusion telepítése és használata

### Manolis Kiagias

`<manolis@FreeBSD.org>`

$FreeBSD: doc/hu_HU.ISO8859-2/articles/compiz-fusion/article.sgml,v 1.3 2008/06/25 11:28:03 gabor Exp $

Copyright © 2008 Manolis Kiagias

A FreeBSD a FreeBSD Foundation bejegyzett védjegye.

A gyártók és terjesztők által használt megnevezések közül sok védjegy jogot követel. Ahol ilyen megnevezés tűnik fel ebben a dokumentumban, és a FreeBSD Projektnek tudomása volt a védjegyről, a megnevezést a “™” vagy a “®” szimbólum követi.

A Linux világában manapság mindenki az új divatról, a háromdimenziós asztali effektekről beszél. Noha ennek tényleges hasznosságát sokan vitatják, az így életrekeltett munkakörnyezetek gyönyörűen néznek ki. Több megoldás is született ezen a téren, ilyen többek között a Compiz, a Beryl, és a manapság megjelent Compiz Fusion. Szerencsére a FreeBSD használata esetén sem kell lemondanunk ezekről az effektekről. A most bemutatott utasítások ugyanis segítenek telepíteni és beállítani rendszerünkön a Compiz Fusion legfrissebb változatát és a működéséhez szükséges nVidia meghajtókat (amennyiben ilyen kártyával rendelkezünk).

Fordította: Páli Gábor `<pgj@FreeBSD.org>`

[ Fejezetekre darabolt dokumentum / Teljes dokumentum ]

## 1. Bevezetés

A Compiz Fusion könnyedén telepíthető a Portgyűjteményből, de a beállításához a port dokumentációjában megadott utasításokon túl még meg kell tennünk néhány lépést. Ebben a cikkben igyekszünk segíteni az Xorg szerver megfelelő támogatásának konfigurációjában, az nVidia grafikus kártya meghajtójának beállításában, és végül a `compiz` elindításában.

A cikk elolvasása során megismerjük:

- hogyan állítsuk be a legfrissebb nVidia meghajtókat a rendszerünkön (amennyiben szükségünk van rá);

- hogyan állítsuk be az `xorg.conf` állományunkban az asztalok kompozícióját;

- hogyan telepítsük és állítsuk be a Compiz Fusion alkalmazást a Portgyűjtemény felhasználásával;

- hogyan bánjunk el az asztali effektekhez kapcsolódó leggyakoribb hibákkal.

## 2. A FreeBSD nVidia meghajtójának beállítása

Az asztalon megjelenő különböző effektek igen nagy terhelést rónak a grafikus hardverünkre. Ezért ha nVidia gyártmányú chippel rendelkező kártyánk van, érdemes telepítenünk rendszerünkre a hozzátartozó zárt forráskódú meghajtó legfrissebb változatát. Ha nem ilyen kártyánk van, de tudjuk, hogy képes lesz megbirkózni ezekkel az effektekkel, akkor nyugodtan lépjük át ezt a szakaszt és folytassuk az `xorg.conf` állomány beállításával.

### 2.1. A megfelelő meghajtó kiválasztása

Az nVidia meghajtók több különböző verziója található meg a Portgyűjteményben. Leginkább a grafikus kártyánk típusa (és kora) alapján tudjuk eldönteni, hogy közülük melyiket válasszuk:

- A legújabb nVidia kártyákat az `x11/nvidia-driver` port támogatja.

- A GeForce 2MX/3/4 sorozatú nVidia kártyákat a meghajtó 96`XX` sorozata támogatja, amely a `x11/nvidia-driver-96xx` porton keresztül érhető el.

- Az ezeknél is régebbi kártyákat, mint például a GeForce vagy RIVA TNT típusokat, a meghajtó 71XX sorozata támogatja, és `x11/nvidia-driver-71xx` porton keresztül telepíthetjük.

Az nVidia honlapján megtalálhatjuk, hogy az egyes meghajtók pontosan milyen kártyákat is támogatnak: http://www.nvidia.com/object/IO_32667.html.

### 2.2. Az nVidia meghajtó telepítése

Miután kiválasztottuk a kártyánk számára megfelelő meghajtót, onnantól a telepítés ugyanolyan egyszerű, mint akármelyik port esetében.

> Megjegyzés: Mielőtt azonban bármit is telepítenénk a portok közül, ne felejtsük el valamilyen módszerrel frissíteni a portfát (például a csup, CVSup vagy a portsnap használatával). A grafikus meghajtók és az asztali effektek ugyanis gyorsan fejlődnek, ezért gyakran frissítik a hozzájuk tartozó portokat.

Például így tudjuk telepíteni a meghajtó legújabb változatát:

    # cd /usr/ports/x11/nvidia-driver
    # make install clean

A meghajtó telepítése során létrejön egy modul a rendszermaghoz, amelyet a rendszer indításakor kell betöltenünk. Ehhez mindössze a következő sort kell elhelyeznünk az `/boot/loader.conf` állományban:

    nvidia_load="YES"

> Megjegyzés: Megpróbálkozhatunk azzal is, hogy a `kldload nvidia` parancs kiadásával a modult közvetlenül a port telepítése után betöltjük a futó rendszermagba, azonban az Xorg legfrissebb változatai esetén gondot okozhat, ha a meghajtót nem a rendszerindítás során töltjük be. Ezért a `/boot/loader.conf` módosítása után mindenképpen javasoljuk a rendszer újraindítását.

A modul sikeres betöltését követően az `xorg.conf` állományban mindössze egyetlen sor átírásával engedélyezni tudjuk a zárt forráskódú meghajtó használatát.

Keressük meg az alábbi sort az `/etc/X11/xorg.conf` állományban:

    Driver      "nv"

és változtassuk meg erre:

    Driver      "nvidia"

Indítsuk el a megszokott módon a grafikus felületet és ekkor megjelenik az nVidia logója. Innentől minden a megszokottak szerint működik. Ilyenkor azonban még csak annyit állítottunk be, hogy az Xorg használja az nVidia meghajtóját, és a háromdimenziós asztali effektusok tényleges megjelenítéséhez további beállításokat is el kell végeznünk. Ezekről a következő szakaszokban lesz szó.

> Megjegyzés: Habár nem feltétlenül szükségesek, az `x11/nvidia-xconfig` és `x11/nvidia-settings` portok telepítését is ajánljuk. Ez előbbivel parancssorból tudjuk elvégezni az `/etc/X11/xorg.conf` állományhoz tartozó módosításokat, illetve az utóbbival a működő Xorg rendszerünkön belül tudjuk módosítani a képernyő beállításait.

## 3. Az asztali effektek beállítása az `xorg.conf` állományban

A következő apró módosításokat kell még elvégeznünk az `/etc/X11/xorg.conf` állományban, mielőtt telepítenénk és elindítanánk a Compiz Fusion ablakkezelőjét.

Hozzunk létre egy szakaszt az összetett effektek engedélyezéséhez:

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

Keressük meg a “Screen” szakaszt, amely nagyjából így néz ki:

    Section "Screen"
    Identifier     "Screen0"
    Device         "Card0"
    Monitor        "Monitor0"
    ...

Egészítsük ki ezzel a két sorral (például a “Monitor” beállítás után):

    DefaultDepth    24
        Option         "AddARGBGLXVisuals" "True"

Keressük meg azt a “Subsection” részt, amely a használni kívánt képernyőfelbontásokat tartalmazza. Például 1280x1024 esetén az alábbi szakaszra lesz szükségnünk. Ha a megfelelő felbontást nem találnánk meg, akkor azt akár manuálisan is pótolni tudjuk:

    SubSection     "Display"
    Viewport    0 0
    Modes      "1280x1024"
    EndSubSection

A 24 bites színmélység fog kelleni az asztalok kompozíciójához, ezért a fenti beállításokat így kell átírnunk:

    SubSection     "Display"
    Viewport    0 0
    Depth       24
    Modes      "1280x1024"
    EndSubSection

Végezetül ellenőrizzük a “glx” és az “extmod” modulok betöltését a “Module” szakaszban:

    Section "Module"
    Load           "extmod"
    Load           "glx"
    ...

> Megjegyzés: Ha telepítettük a korábban ajánlott `x11/nvidia-xconfig` portot, akkor a fenti beállítások közül a legtöbbet (`root` felhasználóként) így is el tudjuk végezni:

>     # nvidia-xconfig --add-argb-glx-visuals
>     # nvidia-xconfig --composite
>     # nvidia-xconfig --depth=24

> Az `nvidia-xconfig -A | more` parancs kiadásával a program által felkínált további lehetőségeket is lekérdezhetjük.

## 4. A Compiz Fusion telepítése és beállítása

A Compiz Fusion a legtöbb porthoz hasonlóan pillanatok alatt telepíthető:

    # cd /usr/ports/x11-wm/compiz-fusion
    # make install clean

A felbukkanó párbeszédablakban mindenképpen válasszuk ki az “EXTRA” bővítmények és az “EMERALD” ablakdekorátor telepítését. Amennyiben GNOME-ot használunk vagy már eleve van a rendszerünkben `gconf` támogatás, érdemes megfontolnunk a “gconf support” kiválasztását is. Ennek köszönhetően az effektek beállításai beágyazódnak az asztalhoz tartozó többi beállítás közé és megnézhetőek a `gconf-editor` használatával. Ha nincs szükségünk erre, akkor a Compiz Fusion természetesen egyszerű állományokba is el tudja menteni a beállításait. Ilyenkor a felhasználói könyvtárunkban létrejön egy `.compizconfig` könyvtár.

A telepítés befejeztével indítsuk el a grafikus felületet és (normál felhasználóként) adjuk ki egy terminálban a következő parancsot:

    % compiz --replace --sm-disable --ignore-desktop-hints ccp &
    % emerald --replace &

Ezt követően a képernyő néhány pillanatig vibrálni fog, ahogy az ablakkezelőnk (például a GNOME esetén a Metacity) lecserélődik a Compiz Fusion-re. Ekkor az Emerald veszi át az ablakok díszítésének szerepét (tehát a bezárás, a tálcára rakás, teljes képernyős mód, az ablakok feliratának stb. kezelését).

Az iménti parancsból akár egy apró szkriptet is készíthetünk, amelyet aztán automatikusan le tudunk futtatni (például úgy, ha felvesszük a GNOME alapú munkakörnyezetünk “Sessions” részébe):

    #! /bin/sh
    compiz --replace --sm-disable --ignore-desktop-hints ccp &
    emerald --replace &

Mentsük a felhasználói könyvtárunkba például `start-compiz` néven és tegyük futtathatóvá:

    % chmod +x ~/start-compiz

Ezután a grafikus felületen a GNOME asztalon vegyük fel a Startup Programs menühöz (System, Preferences, Sessions).

A megfelelő effektek kiválasztásához és azok beállításához (ismét normál felhasználóként) indítsuk el a Compiz Config Settings Manager alkalmazást:

    % ccsm

> Megjegyzés: A GNOME munkakörnyezeten belül ugyanez a System, Preferences menüből is elérhető.

Ha a fordítás előtt a “gconf support” opciót is kiválasztottuk, akkor ezeket a beállításokat a `gconf-editor` programban az `apps/compiz` kategóriában is meg tudjuk tekinteni.

## 5. A Compiz Fusion használatával kapcsolatos gondok megoldása

Ebben a szakaszban a Compiz Fusion használata során felmerülő gyakran ismételt kérdéseket és válaszokat tekintjük át.

5.1. A Compiz Fusion telepítése és a megadott parancsok futtatása után eltűnt a keret az ablakokról. Mi lehet a gond?
5.2. A Compiz Fusion indításakor az X szerver összeomlik és visszajön a konzolt. Mi lehet a gond?

5.1. A Compiz Fusion telepítése és a megadott parancsok futtatása után eltűnt a keret az ablakokról. Mi lehet a gond?

Valószínűleg kihagytuk valamelyik beállítást az `/etc/X11/xorg.conf` állományból. Figyelmesen olvassuk át újra az állományt, különösen a `DefaultDepth` és `AddARGBGLXVisuals` beállításokat.

5.2. A Compiz Fusion indításakor az X szerver összeomlik és visszajön a konzolt. Mi lehet a gond?

Ha megnézzük az `/var/log/Xorg.0.log` állományt, akkor abban találunk valószínűleg valamilyen hibaüzenetet, amit az X indítása során kaptunk. Ez általában a következő szokott lenni:

    (EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X
    (EE) NVIDIA(0):     log file that the GLX module has been loaded in your X
    (EE) NVIDIA(0):     server, and that the module is the NVIDIA GLX module.  If
    (EE) NVIDIA(0):     you continue to encounter problems, Please try
    (EE) NVIDIA(0):     reinstalling the NVIDIA driver.

Ez többnyire olyankor következik be, amikor frissítjük az Xorg szervert. Telepítsük újra az `x11/nvidia-driver` portot, így a glx is illeszkedni fog hozzá.

Ha kérdése van a FreeBSD-vel kapcsolatban, a következő címre írhat (angolul): <freebsd-questions@FreeBSD.org>.
Ha ezzel a dokumentummal kapcsolatban van kérdése, kérjük erre a címre írjon: <gabor@FreeBSD.org>.