# Jak w Linuxie zainstalować XFree86

## Autor: Eric S. Raymond, esr@snark.thyrsus.com
v4.2, 16 styczeń 1997
Wersja polska: Piotr Tęczyński pteczyn@hum.amu.edu.pl
w.1.0, 05 marzec 1997

Niniejszy dokument opisuje, jak uzyskać, zainstalować i skonfigurować wersję 3.2 XFree86, która stanowi wersję X Window System (X11R6) przeznaczoną dla systemów Linuxowych. Ten przewodnik krok po kroku wyjaśnia, jak skonfigurować w Twoim systemie XFRee86.

## 1. Wstęp

X Window System stanowi wielkie i potężne (niektórzy mogliby powiedzieć, iż zbyt wielkie i nadmiernie złożone) graficzne środowisko dla systemów UNIXowych. Oryginalny kod X Window System opracowano w MIT; od tego czasu komercyjni sprzedawcy uczynili z X'a przemysłowy standard dla platform UNIXowych. Faktycznie, na wszystkich UNIXowych stacjach roboczych na świecie chodzi jakiś wariant systemu X Window.

Pochodzący z MIT i rozprowadzany bez opłat X Window System wersja 11 wydanie 6 (X11R6) przystosowany dla systemów UNIXowych opartych o 80386/80486/Pentium pierwotnie rozwijał zespół programistów pod kierownictwem Davida Wexelblata <dwex@XFree86.org>. Wersja ta, znana jako XFree86, dostępna jest dla Systemu V/386, 386BSD i innych implementacji UNIXa opartych na platformie x86, włączając w to Linuxa. Zawiera ona wszystkie potrzebne binaria, pliki pomocnicze, biblioteki i programy narzędziowe.

Wyczerpujące informacje o XFree86 dostępne są na stronie Pajęczyny poświęconej XFree86 pod adresem http://www.XFree86.org.

Niniejszym dokument krok po kroku opisujeq, jak zainstalować i skonfigurować XFree86 dla Linuxa, chociaż niektóre szczegóły trzeba będzie samodzielnie uzupełnić czytając dokumentację dostarczoną z samym XFree86. (Dokumentacja ta zostanie omówiona poniżej.) Jednakże używanie i dostosowanie do własnych potrzeb X Window System wykracza daleko poza zakres tego dokumentu -- w tym celu zaopatrz się w jedną z wielu dobrych książek na temat używania X Window System.

## 1.1 Inne źródła informacji

Jeśli zupełnie nie orientujesz się, czym jest Linux, istnieje kilka źródeł informacji o tym systemie. Najlepszym miejscem jest strona Pajęczyny z Dokumentacją Linuxa dostępna pod adresem http://sunsite.unc.edu/mdw/linux.html. Tam też, pod adresem http://sunsite.unc.edu/mdw/HOWTO/XFree86-HOWTO.html, znajdziesz najnowszą, aktualną wersję tego dokumentu.

## 1.2 Nowe wersje niniejszego dokumentu

Nowe wersje Linux XFree86 HOWTO są okresowo rozsyłane na grupy dyskusyjne comp.os.linux.help, news:comp.os.linux.announce i news.answers. Są one również zamieszczane w rozmaitych miejscach Pajęczyny i archiwach ftp poświęconych Linuxowi, włączając w to stronę LDP.

Najnowszą wersję zawsze możesz znaleźć w Pajęcznie pod adresem URL http://sunsite.unc.edu/mdw/HOWTO/XFree86-HOWTO.html.

## 1.3 Kontakt z autorem i poprawki

Jeśli masz jakiekolwiek pytania czy uwagi na temat niniejszego dokumentu, proszę nie krępuj się i wyślij pocztę elektroniczną do Erica S. Raymonda na adres esr@thyrsus.com. Jestem otwarty na wszelkie sugestie i krytykę. Daj mi proszę znać, jeśli znajdziesz jakiś błąd w tym dokumencie, tak bym mógł go poprawić w następnej wersji. Dzięki.

Prosze, nie wysyłaj mi pytań jak zrobić, by Twoja karta video czy monitor działał z X'em. Niniejsze JTZ ma być w zamierzeniach stanowić szybki i bezbolesny przewodnik dla normalnej instalacji przy użyciu nowego, interakcyjnego programu konfigurującego. Jeśli wpadniesz w tarapaty przejrzyj the Hitchiker's Guide to XFree86 Video Timing, http://www.ccil.org/~esr/xconfig/video-modes.html. (Jest to aktualna, w formacie HTML, wersja pliku `Videomodes.doc'z XFree86.) Dokument ten zawiera całą moją wiedzę na temat rozwiązywania problemów związanych z konfiguracja; jeśli on nie jest w stanie Tobie pomóc, ja również.

## 2. Wymagania sprzętowe

XFree w wersji 3.2 wprowadzono w październiku 1996 roku. Poniżej opisano obsługiwane zestawy układów video. Dokumentacja dostarczona z Twoją kartą video powinna określać zastosowany zestaw układów scalonych. Kiedy zamierzasz kupić nową kartę video lub też kupujesz nową maszynę z jakąś kartą video, niech sprzedawca dokładnie określi markę, model i zestaw układów scalonych owej karty. Może to wymagać od niego zadzwonienia w tej sprawie do działu wsparcia technicznego; generalnie będą oni uszczęśliwieni mogąc to zrobić. Wielu sprzedawców sprzętu PC stwierdzi, iż dana karta video jest ,,standardową kartą SVGA'', która ,,powinna pracować'' w Twoim systemie. Wyjaśnij wówczas, że Twoje oprogramowanie (wspomnij Linuxa i XFree86!) nie obsługuje wszystkich zestawów układów video oraz że musisz posiadać szczególowe informacje.

Możesz również samodzielnie określić zestaw układów karty video uruchamiając program `SuperProbe` zawarty w dystrybucji XFree86. Poniżej całą sprawę przedstawiono bardziej szczegółowo.

Obsługiwane są następujące standardowe zestawy układów SVGA:

- Tseng ET3000, ET4000AX, ET4000/W32, ET6000
- Western Digital/Paradise PVGA1
- Western Digital WD90C00, WD90C10, WD90C11, WD90C24, WD90C30, WD90C31, WD90C33
- Genoa GVGA
- Trident TVGA8800CS, TVGA8900B, TVGA8900C, TVGA8900CL, TVGA9000, TVGA9000i, TVGA9100B, TVGA9200CX, TVGA9320, TVGA9400CX, TVGA9420, TGUI9420DGi, TGUI9430DGi, TGUI9440AGi, TGUI9660XGi, TGUI9680
- ATI 18800, 18800-1, 28800-2, 28800-4, 28800-5, 28800-6, 68800-3, 68800-6, 68800AX, 68800LX, 88800GX-C, 88800GX-D, 88800GX-E, 88800GX-F, 88800CX, 264CT, 264ET, 264VT, 264VT2, 264GT
- NCR 77C22, 77C22E, 77C22E+
- Cirrus Logic CLGD5420, CLGD5422, CLGD5424, CLGD5426, CLGD5428, CLGD5429, CLGD5430, CLGD5434, CLGD5436, CLGD5440, CLGD5446, CLGD5462, CLGD5464, CLGD6205, CLGD6215, CLGD6225, CLGD6235, CLGD6410, CLGD6412, CLGD6420, CLGD6440
- OAK OTI067, OTI077, OTI087
- Avance Logic ALG2101, ALG2228, ALG2301, ALG2302, ALG2308, ALG2401
- Chips & Technologies 65520, 65530, 65540, 65545, 65520, 65530, 65540, 65545, 65546, 65548, 65550, 65554
- MX MX68000, MX680010
- Video 7/Headland Technologies HT216-32
- SiS 86C201, 86C202, 86C205
- ARK Logic ARK1000PV, ARK1000VL, ARK2000PV, ARK2000MT
- RealTek RTG3106
- Alliance AP6422
- Matrox MGA2064W
- NVidia/SGS Thomson NV1, STG2000

Obsługiwane są również akceleratory SVGA oparte o następujące układy zestawów:

- 8514/A (i prawdziwe klony)
- ATI Mach8, Mach32, Mach64
- Cirrus CLGD5420, CLGD5422, CLGD5424, CLGD5426, CLGD5428, CLGD5429, CLGD5430, CLGD5434, CLGD5436, CLGD5440, CGLD5446, CLGD5462, CLGD5464.
- S3 86C911, 86C924, 86C801, 86C805, 86C805i, 86C928, 86C864, 86C964, 86C732, 86C764, 86C765, 86C868, 86C968, 86C325, 86C988
- Western Digital WD90C31, WD90C33, WD90C24A
- Weitek P9000
- IIT AGX-014, AGX-015, AGX-016
- IBM XGA-2
- Tseng ET4000/W32, ET4000/W32i, ET4000/W32p, ET6000
- Ark Logic ARK1000PV, ARK1000VL, ARK2000PV, ARK2000MT
- MGA2064W

Karty video, które stosują powyższe zestawy układów, obsługiwane są na wszystkich typach magistral, włączając w to VLB i PCI.

Zestawy układów oparte o Avance Logic, MX i Video 7 obsługują wyłącznie tryb 256 kolorów. Wszystkie pozostałe karty oparte o powyższe zestawy układów obsługują zarówno tryb 256 kolorów, jak i monochromatyczny. Wiele z powyższych zestawów układów będzie obsługiwać tryb 16 i 32 bitów na pixel (zwłaszcza niektóre karty oparte o układy Mach32, P9000, S3 i Cirrus), o ile tylko masz zainstalowaną na karcie wystarczającą ilość DRAM. Zwykła konfiguracja to 8 bitów na pixel (to znaczy 256 kolorów).

Serwer monochromatyczny obsługuje również standardowe karty VGA, monochromatyczną kartę Hercules oraz monochromatyczne karty Hyundai HGC1280, Sigma LaserView i Apollo. Dla karty Compaq AVGA obsługuje on jedynie 64k pamięci video. Nie testowano karty GVGA zawierającej więcej niż 64k.

Bez wątpienia lista ta powiększy się wraz z upływem czasu. Stosowne uwagi dałączane do aktualnych wersji XFree86 powinny zawierać kompletną listę obsługiwanych zestawów układów video.

Twórcy XFree86 napotykają na pewien problem, bowiem niektórzy producenci kart video stosują niestandardowe mechanizmy określania częstotliwości zegara używane do sterowania kart. Niektórzy z nich albo nie publikują specyfikacji opisujących jak zaprogramować kartę, albo wymagają od twórców podpisania oświadczenia o zachowaniu w tajemnicy otrzymanych informacji. To oczywiście ograniczałoby możliwość nieodpłatnej dystrybucji XFree86 -- coś, czego zespół twórców XFree86 bynajmniej nie chce zrobić. Przez długi czas stanowiło to problem odnośnie pewnych kart video produkowanych przez firmę Diamond. Jednakże począwszy od wersji 3.1 XFree firma Diamond zaczęła współpracować z zespołem twórców nad dostarczeniem bezpłatnych sterowników dla tych kart.

Sugerowany system dla XFree86 pod Linuxem to maszyna 486 z przynajmniej 8 megabajtami RAM i kartą video z zestawem układów wymienionym powyżej. Dla osiągnięcia optymalnej wydajności sugerujemy zastosowanie karty z akceleratorem, na przykład jakiejś karty z zestawem układów S3. Zanim podejmiesz ostateczną decyzję i nabędziesz kosztowny sprzęt, sprawdź w dokumentacji, czy XFree86 obsługuje Twoją wybraną kartę. Porównania testów wydajności dla rozmaitych kart video pod XFree86 są regularnie rozsyłane na grupy dyskusyjne USENETu comp.windows.x.i386unix i comp.os.linux.x.

Tak na marginesie, prywatny system Linuxowy Matt Welsh'a (pierwotnego twórcy niniejszego FAQa) chodził na maszynie 486DX2-66 z 20 megabajtami RAM, wyposażonej w kartę VLB z 2 megabajtami DRAM i zestaw układów S3-864. Matt przeprowadził test wydajności X'a dla swojej maszyny oraz dla stacji roboczej Sun Sparc IPX. System Linuxowy był w przybliżeniu 7 razy szybszy niż ów Sparc IPX. (Dla ciekawości, XFree86-3.1 pod Linuxem z tą kartą video osiągnął wynik około 171000 xstonów, Sparc IPX około 24000.) Generalnie rzecz biorąc, XFree86 na systemie Linuxowym zaopatrzonym w kartę SVGA z akceleratorem jest znacznie wydajniejszy niż uruchomiony na jakiejś karcie stosowanej w komercyjnych UNIXowych stacjach roboczych, które zwykle stosują obsługują grafikę za pomocą prostych ramek.

Potrzebujesz co najmniej 4 megabajty fizycznej RAM i 16 megabajtów wirtualnej RAM (przykładowo, 8 mega fizycznej i 8 mega pliku wymiany). Pamiętaj, że im więcej masz fizycznej RAM, tym mniej system będzie przy małej pamięci wymieniał dane. Ponieważ wymiana jest z definicji powolna (dyski są bardzo wolne w porównaniu z pamięcią), wiec aby XFree86 chodził komfortowo posiadanie co najmniej 8 megabajtów RAM jest koniecznością. Jeszcze lepiej zainstalować 16 megabajtów. System z 4 megabajtami fizycznej RAM mógłby chodzić dużo (do 10 razy) wolniej od takiego, który posiada co najmniej 8 mega.

## 3. Instalacja XFree86

Prawdopodobnie masz już XFree86 jako część dystrybucji Linuxa -- w tym przypadku nie jest konieczne oddzielne ściąganie oprogramowania. W takim przypadku możesz pominąc tę sekcję.

Binarną dystrybucję XFree86 dla Linuxa można znaleźć w wielu archiwach ftp. Oryginalne archiwum XFree86 jest pod ardesem ftp://ftp.xfree86.org/pub/XFree86/current/binaries/Linux (w czasie qpisania niniejszego tekstu aktualna wersja oznaczona była numerem 3.2; okresowo wypuszczane są nowsze wersje).

Na `sunsite.unc.edu` XFree86 można znaleźć w katalogu `/pub/Linux/X11`.

Kiedy bezpośrednio ściągasz XFree86, przyda się Tobie poniższa poniższa tabela. Wyszczególnia ona pliki zawarte w dystrybycji XFree86-3.2.

Wymagany jest jeden z następujących serwerów:

X328514.tgz

  Serwer dla kart opartych o 8514.

X32AGX.tgz

  Serwer dla kart opartych o AGX.

X32I128.tgz

  Serwer dla Number Nine Imagine 128.

X32Mach32.tgz

  Serwer dla kart opartych o Mach32.

X32Mach64.tgz

  Serwer dla kart opartych o Mach64.

X32Mach8.tgz

  Serwer dla kart opartych o Mach8.

X32Mono.tgz

  Serwer dla monochromatycznych trybów video.

X32P9K.tgz

  Serwer dla kart opartych o P9000.

X32S3.tgz

  Serwer dla kart opartych o S3.

X32S3V.tgz

  Serwer dla S3 ViRGE i ViRGE/VX (wersja beta).

X32SVGA.tgz

  Serwer dla kart opartych o Super VGA.

X32W32.tgz

  Serwer dla kart opartych o ET4000/W32.

Jeśli nie wiesz, który serwer wybrać, wybierz VGA16, plik X32VGA16.tgz. Tak czy inaczej zechcesz go ściągnąc, ponieważ w następnym kroku instalacji będzie on potrzebny do uruchomienia programu autokonfigurującego.

Wymagane są wszystkie następujące pliki:

preinst.sh

  Skrypt przedinstalacyjny.

postinst.sh

  Skrypt poinstalacyjny.

X32bin.tgz

  Pozostałe binaria X11R6.

X32cfg.tgz

  Pliki konfiguracyjne dla `xdm`, `xinit` i `fs`.

X32doc.tgz

  Dokumentacja i strony podręcznika.

X32fnts.tgz

  Pliki dla 75dpi, misc i PEXa.

X32lib.tgz

  Dzielone biblioteki X i pliki pomocnicze.

X32set.tgz

  Program narzędziowy XF86Setup.

X32VG16.tgz

  Serwer dla kart opartych o VGA/EGA.

Następujące pliki są opcjonalne:

X32f100.tgz

  Fonty 100dpi.

X32fcyr.tgz

  Fonty cyrylicy.

X32fnon.tgz

  Inne fonty (chińskie, japońskie, koreańskie, hebrajskie).

X32fscl.tgz

  Fonty skalowalne (Speedo i Type1).

X32fsrv.tgz

  Fonty serwera i pliki konfiguracyjne.

X32prog.tgz

  Pliki nagłówkowe X, pliki konfiguracyjne i biblioteki kompilacyjne.

X32lkit.tgz

  LinkKit dla serwera X.

X32lk98.tgz

  LinkKit dla serwera PC98 X.

X32nest.tgz

  Zagnieżdżony serwer X.

X32vfb.tgz

  Wirtualny serwer X.

X32ps.tgz

  Dokumentacja w PostScripcie.

X32html.tgz

  Dokumentacja w HTMLu.

Katalog XFree86 powinien zawierać plik `RELNOTES` zawierający uwagi odnośnie aktualnej wersji. Zajrzyj tam odnośnie szczegółów związanych z instalacją.

Wszystko, co potrzeba, by zainstalować XFree86, to zdobyć powyższe pliki, utworzyć (jako `root`) katalog `/usr/X11R6` i rozpakować owe pliki z `/usr/X11R6` następującą komendą:

> `

>     gzip -dc X32bin.tgz | tar xfB -

> `

Pamiętaj, iż te starowane pliki są spakowane relatywnie do katalogu `/usr/X11R6`, taki więc ważne jest ich rozpakowanie właśnie tam.

Upewnij się, iż katalog `/usr/X11R6/bin` znajduje się na Twojej ścieżce dostępu. Możesz to zrobić edytując domyślne ustawienia Twojego systemu zawarte w pliku `/etc/profile` lub `/etc/csh.login` (zależnie od typu powłoki, jaką stosujesz Ty czy inni użytkownicy Twojego systemu). Możesz też po prostu dodać ten katalog do Twojej osobistej ścieżki modyfikując plik `/etc/.bashrc` lub `/etc/.cshrc`, zależnie od rodzaju Twojej powłoki.

Upewnij się również, iż `ld.so` (konsolidator), potrafi zlokalizować katalog `/usr/X11R6/lib`. Aby to zapewnić, dodaj linię

> `

>     /usr/X11R6/lib

> `

do pliku `/etc/ld.so.conf` i, jako `root`, uruchom `/sbin/ldconfig`.

Uwaga: Odkryłem, po zainstalowaniu wszystkich następujących części:

X32Ma64.tar X32cfg.tar X32fnts.tar X32html.tar X32prog.tar X32VG16.tar X32doc.tar X32fscl.tar X32lib.tar X32set.tar X32bin.tar X32f100.tar X32fsrv.tar X32man.tar

że żadna z nich nie zawierała wsparcia dla Xpm (stanowi to problem, ponieważ, przynajmniej w mojej konfiguracji, sam serwer X'a wymaga Xpm'a -- Twoje potrzeby mogą być inne). Musiałem przekopiować biblioteki Xpm z mojej starej dystrybucji X'a. Tak więc pakiet nie jest jeszcze doskonały.

## 4. Konfiguracja XFree86

## 4.1 Normalna konfiguracja

Do niedawna skonfigurowanie XFree86, tak by używał Twojej myszy, klawiatury, monitora i karty video, zwykło być czymś w rodzaju czarnej magii, wymagającej sporego grzebania w złożonym pliku konfiguracyjnym. To już jednak historia. Wersja 3.2 uczyniła cały ten proces prawie trywialnym. Wszystko co robisz, to odpalasz program `XF86Setup`.

Działanie tego programu opiera się na fakcie, iż obecnie cały nowy sprzęt PC posiada monitory EGA/VGA. Program ów uruchamia serwer SVGA16 i używa go do przywołania X'a w trybie 640x480, co stanowi najmniejszy wspólny mianownik. Potem uruchamia interakcyjny program, który poprowadzi Cię przez serię pięciu menu konfiguracyjnych -- dla myszy, klawiatury, karty (video), monitora i ,,pozostałych'' (rozmaite opcje serwera). Cały proces przebiega prawie bezboleśnie.

Warto również pamiętać o drobnym fakcie, mianowicie iż jeśli jak większość ludzi używasz rozpowszechnionego peceta, to Twoja klawiatura jest obecnie raczej tym, co XF86Setup nazywa `Generic 102-key PC (intl)' niż domyślną `Generic 101-key PC'. Jeśli wybierzesz domyślną (101), wówczas klawisze znajdujące się po prawej stronie Twojej klawiatury (klawiatura numeryczna i obszar przyległy) mogą przestać działać.

Jeśli żywisz wątpliwości odnośnie typu swojego monitora, możesz po kolei wypróbować wylistowane opcje. Przejdź z góry listy na dół (wyższe opcje dają niższe prędkości taktowania zegara i są mniej szkodliwe dla sprzętu). Wycofaj się, jeśli zobaczysz śnieżący lub poważnie zniekształcony obraz. Pomniejsze zniekształcenia (obraz lekko za duży, za mały czy lekko zdecentrowany) nie stanowią problemu -- za moment będziesz mieć szansę skorygować je w trybie dostrajania.

A kiedy program przywołuje `xvidtune`, dając Tobie możliwość dostrojenia Twojego trybu video, nie daj się wyprowadzić z równowagi pojawiającym się na początku napisom ostrzegawczym. W ten sposób nie jest łatwo uszkodzić współczesne wieloczęstotliwościowe monitory (inaczej niż ich przodków o stałej częstotliwości).

## 4.2 Radzenie sobie w kłopotach

Może się czasem tak zdarzyć, iż kiedy po raz pierwszy odpalisz X serwer nie wszystko będzie w całkowitym w porządku. Prawie zawsze jest to spowodowane jakimś problemem w Twoim pliku konfiguracyjnym. Zwykle wyłączone są wartości synchronizacji monitora są lub też niepoprawnie ustawione są częstotliwości taktowania zegara Twojej karty video. Drobniejsze problemy można poprawić używając programu `xvidtune`. Naprawdę zniekształcony ekran zwykle oznacza, iż musisz powrócić do XF86Setup i wybrać typ monitora posiadający mniejsze możliwości.

Jeśli ekran wydaje się falować lub ma rozmyte brzegi, to jest to jasna wskazówka, iż złe są wartości synchronizacji monitora lub częstotliwości taktowania zegara. Upewnij się również, że właściwie został ustawiony zestaw układów karty video, jak również i inne opcje w sekcji `Device` w `XF86Config`. Miej absolutną pewność, że używasz właściwego X serwera i że `/usr/X11R6/bin/X` jest połaczeniem symbolicznym do tego serwera.

Jeśli wszystko to zawiedzie spróbuj wystartować ,,gołego'' X'a. W tym celu wydaj podobne do poniższego polecenie:

> `

>     X > /tmp/x.out 2>&1

> `

Możesz potem zabić X serwer (używając kombinacji klawiszy `ctrl-alt-backspace`) i przestudiować zawartość pliku `/tmp/x.out`. X serwer zapisze tam jakieś ostrzeżenia czy błędy -- na przykład, że częstotliwość taktowania Twojej karty video nie koresponduje z trybem obsługiwanym przez monitor.

Pamiętaj, iż aby przełączyć się pomiędzy trybami video kreślonymi w linii `Modes` w sekcji `Screen` w pliku `XF86Config` możesz użyć `ctrl-alt-numeryczne +` i `ctrl-alt-numeryczne -`. Jeśli tryb najwyższej rozdzielczości nie wygląda poprawnie, spróbuj przełączyć się na niższe rozdzielczości. Pozwoli to Tobie stwierdzić, że przynajmniej te fragmenty Twojej konfiguracji X'a działają poprawnie.

Sprawdź również pokrętłami na monitorze pionową i poziomą wielkość obrazu. Podczas startowania X'a w wielu przypadkach konieczne jest takie dostrojenie. Na przykład, jeśli ekran wydaje się być lekko przesunięty w jedną stronę, zwykle możesz to skorygować używając panelu kontrolnego monitora.

Grupy dyskusyjne USENETu `comp.windows.x.i386unix` i `comp.os.linux.x` poświęcone są dyskusjom o XFree86. Dobrym pomysłem mogłoby być przypatrzenie się tym grupom w poszukiwaniu wiadomości związanch z Twoją konfiguracją video -- możesz tam spotkać kogoś z identycznymi jak Twoje własne problemami.

## 4.3 Dostosowywanie X'a do własnych potrzeb

1280x1024 jest najwyższą wbudowaną rozdzielczością jaką obsługuje XF86Setup. Jeśli Twój monitor potrafi obsłużyć 1600x1200, wówczas by uzyskać optymalną wydajność będziesz musieć pogrzebać w swojej konfiguracji X'a.

Jeśli z tego czy dowolnego innego powodu chcesz grzebać w swojej konfiguracji video, zapoznaj się najpierw z dokumentem the Hitchiker's Guide to XFree86 Video Timing dostępnym pod adresem http://ww.ccil.org/~esr/xconfig/video-modes.html. (Jest to najnowsza, w formacie HTML, wersja pliku `Videomodes.doc' zawartego z XFree86.)

## 4.4 Używanie koloru 16 bitowego

X domyślnie używa koloru 8 bitowego, co daje paletę 256 barw. Aby ominąć to ograniczenie wiele aplikacji umieszcza swe własne mapy kolorów. Jednak kiedy kursor przemieszcza się pomiędzy dwoma oknami, z których każde ma swą własną mapę kolorów, powoduje to nagłe przeskoki kolorów. w ten sposób zachowuje się przeglądarka Pajęczyny Arena.

Kiedy zechcesz używać zaawansowanych aplikacji graficznych 256 kolorów przestaje wystarczać. Możesz użyć koloru 16 bitowego z paletą 65K różnych barw startując po prostu X'a jak niżej

> `

>         startx -- -bpp 16

> `

lub wpisując

> `

>         exec X :0 -bpp 16

> `

w swój plik .xserverrc. Uważaj jednak, bowiem nie wszystkie aplikacje będą działać z 16 bitowym kolorem.

Większa ilość kolorów powoduje, iż Twoja karta video transferuje więcej danych w tej samej jednostce czasu. Jeśli Twoja karta video nie potrafi temu podołać, wówczas trzeba zredukować albo rozdzielczość, albo prędkość odświeżania. Domyślnie XFree redukuje rozdzielczość. Jeśli chcesz zachować rozdzielczość a zredukować prędkość odświeżania, musisz umieścić nowe stosowne paramery w linii Modeline w swoim pliku XqF86Config. Określi to tę rozdzielczość z niższą prędkościa odświeżania. Przykładowo zastąp starą wartość

> `

>     Modeline "1024x768" 75 1024 1048 1184 1328 768 771 777 806 -hsync -vsync

> `

na

> `

>     Modeline "1024x768" 65 1024 1032 1176 1344 768 771 777 806 -hsync -vsync.

> `

Magiczne liczby 75 i 65 odpowiadają prędkościom zegara. Znajdziesz je zapisane przez X'a w swoim pliku .X.err. Sprawdź w dokumentacji X'a plik odnoszący się do monitorów. Znajdziesz tam parametry Modelines stosowne dla maksymalnej prędkości zegara, jaką Twoja karta video potrafi obłużyć przy kolorze 16 bitowym.

## 5. Uruchamianie XFree86

Kiedy masz już skonfigurowany plik `XF86Config` spokojnie możesz odpalć X serwer i odbyć krótką przejażdżkę. Po pierwsze upewnij się, że katalog `/usr/X11R6/bin` znajduje się na Twojej ścieżce dostępu.

Aby wystartować XFree86 wydaj polecenie

> `startx`

Stanowi to front dla `xinit` (w przypadku, jeśli kiedykolwiek zdarzyło się Tobie używać `xinit` na innych systemach UNIXowych).

Polecenie to wystartuje X serwer i uruchomi komendy znalezione w pliku `.xinitrc` znajdującym się w Twoim domowym katalogu. `.xinitrc` jest zwykłym skryptem powłokowym, który zawiera przeznaczonych do uruchomienia X klientów. Jeśli plik ten nie istnieje, zostaną użyte domyślne wartości systemu z pliku `/usr/X11R6/lib/X11/xinit/xinitrc`.

Standardowy pliki `.xinitrc` wygląda podobnie jak poniższy:

> `

>     #!/bin/sh

>     xterm -fn 7x13bold -geometry 80x32+10+50 &
>     xterm -fn 9x15bold -geometry 80x34+30-10 &
>     oclock -geometry 70x70-7+7 &
>     xsetroot -solid midnightblue &

>     exec twm

> `

Skrypt ten wystartuje dwóch kilientów `xterm`, `oclock` oraz ustawi kolor tła okna root'a na `midnightblue`. Następnie wystartuje menadżer okien `twm`. Zauważ, iż `twm` wykonuje się z powłokowego wyrażenia `exec`. W ten sposób proces `xinit` zostanie zastąpiony przez `twm`. Kiedy tylko proces `twm` zostanie powołany do życia, X serwer wyłączy się. Możesz wyjść z `twm` używając głównego menu. W tym celu naciśnij na tle pulpitu klawisz myszy 1 -- wyświetli to rozwijalne menu, które pozwoli Tobie uaktywnić opcję `Exit Twm`.

Upewnij się, że ostatnia komenda w pliku `.xinitrc` startuje z `exec` i że nie jest ona umieszczona w tle (żadnego znaku & na końcu linii), w przeciwnym bowiem razie X serwer wyłączy się zaraz po tym, jak tylko wystartuje klientów z pliku `.xinitrc`.

Alternatywnie możesz wyjść z X'a wciskając kombinację klawiszy `ctrl-alt-backspace`, co bezpośrednio zabija X serwer i wychodzi z X Window System.

Powyżej zaprezentowano bardzo, ale to bardzo prostą konfigurację pulpitu. Wkładając trochę pracy w swój plik `.xinitrc` możesz osiągnąć wiele wspaniałych programów i konfiguracji. Przykładowo, menadżer okien `fvwm` może umożliwiać używanie pulpitu wirtualnego. Możesz również ustawić kolory, czcionki, wielkość i pozycje okien i tak dalej, co tylko dusza zapragnie.

Jeśli dopiero zaczynasz poznawać środowisko X Window System, gorąco polecamy zapoznanie się z jakąs książką z tego zakresu, np. The X Window System: A User's Guide. Używanie i konfiguracja X'a są o wiele nazbyt złożone, by je tutaj omawiać. Wskazówek na sam początek poszukaj na stronach podręcznika odnoszących się do `xterm`, `oclock` i `twm`.

## 5.1 Warunki użytkowania niniejszego dokumentu

Copyright (c) 1996 by Eric S. Raymond. Niniejszy dokument możesz używać, rozpowszechniać i reprodukować w dowolny sposób o ile:

- Nie pominiesz lub nie zmienisz niniejszej uwagi odnośnie prawa autorskiego.
- Nie pominiesz lub nie zmienisz numeru wersji i daty.
- Nie pominiesz lub nie zmienisz namiaru na aktualną wersję w WWW.
- Jasno i wyraźnie zaznaczysz wszelkie skróty, zmiany lub wersje.

Powyższe restrykcje mają na celu ochronę potencjalnych czytelników przed starymi lub niekompletnymi wersjami. Spytaj się mnie jeśli przypuszczasz, iż masz jakiś ważny powód dla uczynienia Tobie wyjątku.

## 5.2 Podziękowania

Niniejszy dokument powołał do życia Matt Welsh w zacofanych czasach, gdy panował mętny pierwotny chaos. Dzięki Matt!

## 5.3 Od tłumacza

Copyright (c) for the Polish translation by Piotr Tęczyński, 1997.

- Warunki użytkowania polskiej wersji niniejszego dokumentu są identyczne z tymi wymienionymi przez autora wersji oryginalnej.
- Najnowsza wersja tekstu oryginalnego dostępna jest zawsze pod adresem http://sunsite.unc.edu/mdw/HOWTO/XFree86-HOWTO.html.
- Najnowsza wersja tłumaczenia dostępna jest zawsze pod adresem http://www.jtz.org.pl/ lub nie zapomnij o dużych literach! ;) a wkrótce również pod moim nowym namiarem.

Jeśli masz jakiekolwiek pytania czy uwagi odnośnie tłumaczenia bądź też zwyczajnie znajdziesz byka nie krępuj się i wyślij do mnie wiadomość pocztą elektroniczną. W ten sposób następna wersja będzie lepsza, ku pożytkowi nas wszystkich. Hmm, możesz też przesłać mi komplementy i pochwały... ;) Tak czy inaczej -- dzięki.

Podziękowania

Dzięki za nieocenioną pomoc przy powstawaniu i dalszej dystrybucji niniejszego dokumentu oryginalnemu jego twórcy, czyli Ericowi S. Raymondowi, całej fantastycznej i tryskającej humorem grupie JTZ (Jak To Zrobić), oraz uroczemu kociakowi ;) o imieniu Danka. No i oczywiście twórcy samego Linuxa, czyli Linusowi Torvaldsowi, torvalds@cs.helsinki.fi, przez którego mamy tyle świetnej zabawy.