xorg-server fordítása Git-ből

Címkék

A napokban vált nyilvánossá az X.org következő kiadásába (Xorg-7.4, tervek szerint 2008 május) kerülő komponensek fejlesztői verziójának Gentoo overlay-e, így a bátrabbak próbálkozhatnak a stabilizálás korai fázisában levő X.org szoftverekkel.

Aki nem fél összedönteni pár órára Gentoo rendszerét, annak álljon itt útmutatásképp egy rövid leírás arról, hogy telepíthetjük az xorg-server és a hozzá tartozó komponensek (libdri, mesa) hivatalos, Git-ben levő verzióját.

Először is adjuk hozzá az "x11" nevű overlay-t a layman segítségével. Majd, ha eix-et használunk akkor érdemes frissíteni az eix keresési adatbázisát:


# layman -a x11
# update-eix

Az x11 overlay-ben elérhetőek az xorg-server git verziójához szükséges függőségek, és maga az xorg-server is. Az scm-ből telepítendő csomagok gentoo-s hagyomány szerint a -9999 verziószámot kapják.

Következő lépésként az xorg-server-9999 (git) verzióját ki kell "maszkolnunk", ugyanis alapértelmezésképp nem engedi feltelepíteni a csomagkezelő: (Mind a hardmaszk, mind a ~x86 "testing" maszkot feloldjuk)


# echo "=x11-base/xorg-server-9999" >> /etc/portage/package.unmask 
# echo "=x11-base/xorg-server-9999 ~x86" >> /etc/portage/package.keywords

TIPP: mivel nem akarjuk egyesével kézzel felderíteni a kimaszkolandó függőségeket, a portage pedig nem ad automatizált eszközt erre, ezért használjuk a 'mass unmask' toolt:
http://gentoo-wiki.com/TIP_Mass_Unmasking , oldal vége felé levő perl szkript :)


# /usr/local/sbin/unmask xorg-server
Unmasking x11-proto/inputproto-9999 in package.unmask
Unmasking x11-proto/inputproto-9999 in package.keywords
[...]

Szükségünk lesz még a legfrissebb "testing" egér és billentyűzet driverre...


# echo x11-drivers/xf86-input-keyboard ~x86 >> /etc/portage/package.keywords
# echo x11-drivers/xf86-input-mouse ~x86 >> /etc/portage/package.keywords

És videódriverre, szintén a git repóból...


# echo "=x11-drivers/xf86-video-i810-9999" >> /etc/portage/package.unmask
# echo "=x11-drivers/xf86-video-i810-9999 ~x86" >> /etc/portage/package.keywords

A legfrissebb mesa csomag összeakad a régi driproto-val, ezért ebből is a git-es verzió kell:


# echo "=x11-proto/xf86driproto-9999" >> /etc/portage/package.unmask 
# echo "=x11-proto/xf86driproto-9999 ~x86" >> /etc/portage/package.keywords

A jelenleg fent levő csomagokból készítünk bináris verziót, ha esetleg újra kell rakni a régit akkor ne kelljen újrafordítani: (ezeket az emerge -k opcióval tudjuk feltenni, és a /usr/portage/packages könyvtárszerkezetben találhatóak tbz2 formátumban)


# quickpkg --include-config=y --include-unmodified-config=y \
 inputproto libdrm mesa xorg-server xf86-input-mouse \
 xf86-input-keyboard xf86-video-i810

Indulhat a telepítés! Közben főzzünk egy hosszú teát :)


# emerge xorg-server

These are the packages that would be merged, in order:

Calculating dependencies \
... done!
[ebuild     U ] x11-proto/inputproto-9999 [1.4.2.1] 
[ebuild     U ] x11-libs/libdrm-9999 [2.3.0] 
[ebuild     U ] x11-proto/xf86driproto-9999  [2.0.3]
[ebuild  N    ] x11-libs/libpciaccess-9999  USE="-debug" 
[ebuild     U ] media-libs/mesa-9999 [7.0.2] 
[ebuild     U ] x11-base/xorg-server-9999 [1.4.0.90-r3] 
[ebuild     U ] x11-drivers/xf86-input-mouse-1.3.0 [1.2.3] 
[ebuild     U ] x11-drivers/xf86-input-keyboard-1.3.0 [1.2.2] 
[ebuild     U ] x11-drivers/xf86-video-i810-9999 [2.2.1_pre20080125] 

Ha szépen lassan lecsorgott a hivatalos freedesktop.org - gitből az összes csomag és le is fordultak mind, akkor megkockáztathatunk egy X újraindítást... :)

UI: a friss xorg probléma nélkül fut eddig (kopp-kopp), x11perf szerint és érzésre is némileg jobb teljesítményt nyújt mint elődje, benchmarkokba nem szívesen mennék bele, egyszerűen örülök, hogy működik...

Hozzászólások

Hétvégén lehet, hogy kipróbálom. A notebook-omon most úgy is permanens ~amd64 van.

Mik a tapasztalataid? Mennyivel jobb vagy gyorsabb?
Egyáltalán a kalandon kívül miért éri meg bedönteni a rendszert pár órára?

Zárójelben jegyzem meg, hogy pár napja raktam át két desktopomat ACCEPT_KEYWORDS="~x86" -ra és meg vagyok elégedve az eredménnyel :)

-- "Bízzál Istenben és tartsd szárazon a puskaport!" - Cromwell --
-- Sayusi Ando - http://sayusi.hu --

Nem lényegesen gyorsabb (placebó-faktort beszámítva)... Viszont úgy néz ki hogy kezd életre kelni az EXA -volt olyan x11perf teszt ahol 3-4x sebességnövekedés adódott (-aaftext). Hozzá kell tenni hogy az előző, 1.4-es xorg-server az csúnyán lassú volt nálam, akárhogy is konfigoltam. Visszafelé már nem akartam váltani, ezért döntöttem úgy hogy kipróbálom a -git verziókat.

Viszont a legfrissebb, szintén git-es pixman/cairo/glitz csomagok feltelepítésekor több probléma is adódott fordításkor, és ezek kiküszöbölése után csúnyán performancia regressziós lett a rendszer.

Még bőven van mit dolgozni rajta :)

[szerk] épp most jött meg a hír xorg listára, hogy a dri2 infrastruktúra utolsó eleme is kommitolásra került :) ezt az intel-batchbuffer branchben levő inteles driverrel ki is lehet próbálni. teljesítményről / használhatóságról még nem érkeznek nagyon hírek [/szerk]

Olvastam a Fedora 9 kapcsán az 1 másodpercen belül induló X -ről. Már ez is tudja, vagy az a Fedora saját fejlesztése?
A másik ami érdekel, hogy az XVMC támogatás javult-e vagy az mindig is jó volt, csak az nVidia és az ATI driver rossz vagy esetleg a lejátszók vacakolnak?

------------------------------------

Si vis pacem, para bellum!
Ha békét akarsz, készülj a háborúra!