XGL Gentoo sistemoje (NVIDIA)

31 sausio, 2007 – 11:11

Gentoo logotipas XGL – X serverio architektūra, kuri yra pritaikyta didesniam vaizdo plokščių galimybių išnaudojimui per OpenGL (DirectX analogas, bibliotekos, kurių pagalba dirbama su 2D ir 3D grafika).
Šiame straipsnyje sužinosite, kaip paprasčiausiu būdu susiinstaliuoti xgl ir Compiz/Beryl Gentoo sistemoje. Manau šis straipsnis šiuo metu gana aktualus, nes daugelis įdieginėja XGL. Naujokai, kurie neseniai išbandė Linux taip pat bando suinstaliuoti XGL. Deja, dažnai jiems tai nepavyksta.

Iš karto turiu nuvilti ne GNOME ar KDE vartotojus – XGL ant šių sistemų veikia, bet joms nėra manager’io, kuris rodytų „pagražinimus“. Turiu pasakyti, kad prieš kompiliuodami NVIDIA tvarkykles, NVIDIA modulį turite iš kernel’io išmesti (geriau padarykite tai dabar, kad vėliau nereikėtų terliotis), jeigu jūs jį ten įkompiliavote.

$ cd /usr/src/linux
# nano -w .config

Susiraskite (Ctrl+W ir rašote ko ieškote…) AGP_NVIDIA opciją ir ją užkomentuokite t. y. eilutės pradžioje parašykite # simbolį. Išsaugokite ir sukompiliuokite kernel’į.
Dabar kai jūs jį iškompiliavote ir užkrovėte sistemą su naujai kompiliuotu branduoliu, galime pradėti dirbti.

XGL’ui reikalingas modularinis X.Org’as. Kaip jį suinstaliuoti rasite adresu http://gentoo-wiki.com/HOWTO_Modular_Xorg.
Cairo – paketas su vektorinės grafikos bibliotekom. Sukompiliuokime Cairo:

# emerge -1av x11-libs/cairo

Norėčiau dar pakomentuoti šiuo metu naudojamas opcijas. Tai 1, a ir v. Dar vėliau naudosime n. 1 – analoginė opcija –oneshot opcijai. Ji nurodo, kad paketo neįdėtumėme į world profilį ir su komanda emerge world jis neatsinaujintų, o atsinaujintų tik kompiliuojant priklausomybes (dependencies). a – analoginė opcija –ask opcijai. Ji nurodo, kad prieš siunčiantis paketus, jūsų paklaustų ar juos siųstis ir parodytų jų sąrašą bei kitą su jais susijusią informacią (USE flag’us ir pan.). v – analoginė opcija –verbose opcijai. Ji nurodo, kad būtų išvedama į ekraną daugiau informacijos negu paprastai. n – analoginė opcija –noreplace. Jeigu dirbama su šia opcija tai visi paketai, kuriuos norėsite instaliuoti dar kartą ir jie jau bus sistemoje, bus nekompiliuojami.
Toliau perkompiliuokime gtk+ (Gimp’ui skirtas įrankių rinkinys) ir pango (teksto tvarkymo bibliotekos) su naujai sukompiliuotu Cairo:

# emerge -1av x11-libs/pango x11-libs/gtk+

Siūlau naudoti -doc flag’ą (instaliavimas praeis žymiai greičiau):

# USE=“-doc“ emerge -1av x11-libs/pango x11-libs/gtk+

Patikrinkime ar neturime ir kompiliuokime glproto (X.Org GL protokolo header’iai (iš angl. k. būtų antraštės)) ir libdrm:

# emerge -1avn x11-proto/glproto libdrm

Jeigu viskas susikompiliavo sėkmingai tai galime kompiliuoti XGL su Mesa (tai tarsi OpenGL analogas; daugiau apie Mesa galite sužinoti http://mesa3d.sourceforge.net):

# emerge -av1n mesa
# emerge -av xgl

Dabar kompiliuojame NVIDIA tvarkykles (bet kokiu atveju jas reikia perkompiliuoti, nesvarbu, kad jau esate jas sukompiliavę ir tai naujausia versija):

# emerge x11-drivers/nvidia-drivers media-video/nvidia-settings

Redaguojame X11 konfigą:

# nano -w /etc/X11/xorg.conf

Susirandame Section „Device“ ir šioje sekcijoje pakeičiame Driver reikšmę į „nvidia“. Dabar naudosime nvidia modulį.

Laikas pasirinkti Compiz arba Beryl manager’į. Siūlau Compiz, bet kartu aprašysiu ir Beryl.

Pirmiausiai apie startx. Pasidarykime startx kopiją, kad galėtume atskirai paleisdinėti X’us: be XGL ir su XGL.

# cp /usr/bin/startx /usr/local/bin/startxgl
# nano -w /usr/local/bin/startxgl

Susiraskime userclientrc kintamąjį ir jo reikšmę pakeiskime į .xglinitrc:

userclientrc=$HOME/.xglinitrc

Taip pat nepamirškime redaguoti xinit $clientargs eilutės. Vietoje jos įrašykime:

xinit $clientargs — /usr/bin/Xgl :1 $serverargs -ac -accel xv -accel glx:fbo -deferglyphs 16 &

Dabar sukurkime .xglinitrc paprastam vartotojui (vėliau tą patį galėsite padaryti kitiems vartotojams):

$ nano -w /home/vartotojovardas/.xglinitrc

Į šį failą įrašykite šias eilutes:

sleep 2
DISPLAY=:1 WINDOW_MANAGER=beryl-manager exec startfluxbox

Vietoje „startfluxbox“ įrašykite komandą, kuri paleidžia jūsų naudojamą DM, o vietoje WINDOW_MANAGER įrašykite manager’io, kurį naudosite, pavadinimą („compiz-decorator“ arba „beryl-manager“).

Jeigu esate KDE vartotojas tai naudokite KDEWM reikšmę vietoje WINDOW_MANAGER.

Dabar instaliuokime Compiz (jeigu norite naudoti Beryl tai praleiskite šią skiltį):

# echo "x11-wm/compiz" >> /etc/portage/package.keywords
# emerge x11-wm/compiz

Dabar norint, kad išnaudotume Compiz’ą, mes turime įjungti jo priedus:

gconftool-2 -s /apps/compiz/general/allscreens/options/active_plugins "[gconf,decoration,wobbly,fade,minimize,cube,switcher,move,resize,place,rotate,zoom,scale]" -t list –list-type=string

Žinoma priedų sąrašą galite redaguoti savo nuožiūra. Čia buvo išvardinti ne visi priedai.

Sukuriame paleidimo failą:

# nano -w /usr/local/bin/compiz-decorator

Į jį įrašome:

LD_LIBRARY_PATH=/usr/lib/opengl/xorg-x11/lib/ compiz –replace gconf & gtk-window-decorator &

Taip pat nepamirškime suteikti leidimą vykdyti šį failą:

# chmod +x /usr/local/bin/compiz-decorator

Ir vykdom apl. atnaujinimo komandą env-update.

Instaliuosime Beryl:

# echo "~x11-misc/beryl-settings-0.1.4 ~*" >> /etc/portage/package.keywords;echo "~x11-apps/xlsclients-1.0.1 ~*" >> /etc/portage/package.keywords; echo "~x11-misc/beryl-manager-0.1.4 ~*" >> /etc/portage/package.keywords; echo "~x11-themes/emerald-themes-0.1.4 ~*" >> /etc/portage/package.keywords; echo "~x11-plugins/beryl-dbus-0.1.4 ~*" >> /etc/portage/package.keywords; echo "~x11-plugins/beryl-plugins-0.1.4 ~*" >> /etc/portage/package.keywords; echo "~x11-wm/beryl-core-0.1.4 ~*" >> /etc/portage/package.keywords; echo "~x11-wm/emerald-0.1.4 ~*" >> /etc/portage/package.keywords; echo "~x11-wm/beryl-0.1.4 ~*" >> /etc/portage/package.keywords
# emerge =x11-wm/beryl-0.1.4

Dabar galime paleisti Beryl rankiniu būdu:

$ beryl-manager

Galutinis variantas turėtų atrodyti maždaug taip:
Alt+Tab pakeitimas Kubas Mplayer ant XGL

Tai buvo straipsnis „XGL instaliacija Gentoo sistemoje (NVIDIA)“.

Jeigu kas nors nepavyko tai galite pagalbos ieškoti šiais adresais:
http://forums.gentoo.org/
http://gentoo-wiki.com/
Paveikslėliai paimti iš gentoo-wiki.com.

2007 m. sausio 31 d., Pixel

Sorry, comments for this entry are closed at this time.