XGL Gentoo sistemoje (NVIDIA)
31 sausio, 2007 – 11:11 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:
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.
Sorry, comments for this entry are closed at this time.