next up previous contents index
Volgende: 14.3 Window managers en Omhoog: 14 X Vorige: 14.1 X Windowing System   Inhoudsopgave   Index


14.2 X configureren

Er zijn verschillende programma's om X te configureren, naast de mogelijkheid om /etc/X11/XF86Config handmatig aan te passen (de lokatie van dit bestand kan verschillen per distributie). Xconfigurator en xf86config zijn de meest gebruikte. Een derde programma is XF86Setup. X kun je kaal starten met Xinit.

Gebruik startx om X ''normaal'' op te starten. Je kunt X een tweede keer starten met startx -- :1 (die is dan op te roepen met alt-F8). De 1 staat hierin voor het displaynummer. Een derde keer kan ook met 2, etc.

Wanneer je onder X een programma opstart vanuit een menu, dan zullen meldingen van dat programma verschijnen in de console waar je X gestart hebt. Je moet dus op ctrl-alt-f1 (als je X vanuit de eerste console startte tenminste) drukken om die meldingen te zien. Er is echter nog wel een andere manier. Om die meldingen (en meldingen bij het starten van X) in een bestand te laten opslaan, kun je startx $>$ x.log 2$>$&1 gebruiken. (Door de 2&$>$1 wordt ook de stderr naar x.log gestuurd.) Je kunt dan onder X dat bestand bekijken of met tail -f x.log de hele tijd meevolgen.

Als je verschillende versies van X naast elkaar houdt (bijv. 3.3.6 en 4.0.1), kun je bepalen welke er gestart moet worden door de symlink /etc/X11/X te laten wijzen naar de binary van de X-server die je wilt gebruiken.

Als de window manager niet normaal afgesloten kan worden of als er iets fout gaat, kun je X afsluiten door tegelijk ctrl, alt en backspace in te drukken.

Na X werkend gekregen te hebben, zijn de volgende aanpassingen aan /etc/X11/XF86Config erg handig. Het configuratiebestand voor XFree86 versie 4.x is /etc/X11/XFree86Config-4 en kan naast die voor 3.3.x gehouden worden.

  1. Zet in Screen Section net boven Subsection Display de regel DefaultColorDepth 16. Verander de 16 in de kleurendiepte die je standaard wilt hebben (dus bijvoorbeeld 8, 16, 24 of 32 bits). Gebruik om X in een andere kleurendiepte dan de standaard te starten startx -- -bpp 32 bij X 3.3.x of startx -- -depth 32 bij X 4.x met i.p.v. 32 de gewenste kleurendiepte.
  2. De waarde die vooraan staat in de rij met Modes is de standaardresolutie. Dus als je 1024x768 vooraan zet, start X standaard op in 1024x768. Je kunt in X met ctrl+alt+ +/- van resolutie veranderen.
  3. Als er regels staan met virtual, dan kun je daar een # voor zetten om ze uit te schakelen. Als je achter virtual een hogere resolutie zet dan je eigenlijk hebt, dan verschuift je desktop als je met de muis bij de randen komt. De hoogste resolutie in de reeks modes blijft altijd de virtuele resolutie als je naar een lagere resolutie switcht.

Als het beeld niet goed gecentreerd is, moet je de getallen in de modelines uit /etc/X11/XF86Config aanpassen. Van links naar rechts stellen ze voor: dotclock, htimings (hdispay, hsyncstart, hsyncend, htotal), vtimings (vdisp, vsyncstart, vsyncend, vtotal). De dotclock kun je met rust laten. De overige getallen kun je bepalen m.b.v. het programma xvidtune. Klik op de knoppen left, right, wider, narrower, up, down, shorter en taller totdat je tevreden bent en noteer de getallen (of edit XF86Config vanuit een xterm ernaast). Als je auto aanzet, hoef je niet na elke verandering op apply te klikken. Haal geen al te gekke dingen uit met xvidtune. Als je monitor er geen beveiliging tegen heeft, kun je hem daar namelijk mee beschadigen.

In XF86Config staat bij XFree 3.3.x een partij modelines van standaardresoluties. Bij XFree 4.x zijn die niet per se nodig, maar je kunt ze er ook nog wel gebruiken. Modelines die niet goed zouden werken, worden door XFree86 genegeerd. Voor meer informatie over modelines zie http://www.nl.linux.org/HOWTO. Daar staat een Nederlandstalige HOWTO.

Maak in je home directory een bestand voor startx aan genaamd .Xclients als dat nog niet bestaat. Daar gaat een script in staan en moet daarom uitvoerbaar gemaakt worden met chmod +x .Xclients. Andere voorkomende namen voor dit script zijn .xinitrc en .xsession. Al deze bestandsnamen worden door het startx-script geprobeerd. (Open hem met vim `which startx` als je precies wilt weten wat het doet.)

Door het script .Xclients te gaan veranderen kun je bepalen wat er moet gebeuren als X start. Een voorbeeld van een .Xclients-bestand:

#!/bin/sh

# Instellingen
xset s off
xmodmap ~/.Xmodmap

# Start een terminal van 120x40 op schermpositie 300,30
nxterm -bg black -fg white -geometry 100x30+300+30 &

# Gebruik Tiny Window Manager, een window manager die bij X 
# zit en waar je niks aan hebt
# twm

# Gebruik KWM
# startkde

# Gebruik WindowMaker
# exec wmaker

# Gebruik Enlightenment
# /usr/bin/enlightenment

# Gebruik Gnome
# Let op! Gnome start zelf de window manager die is ingesteld
# via het configuratiemenu (van Gnome). Laat daarom geen
# window manager starten vanuit dit bestand!
exec gnome-session

De eerste regel is altijd nodig in een script. Er moet een bepaalde shell worden aangeroepen. De kernel herkent de #! vooraan het bestand en voert het script uit met wat erna staat. Andere regels die met een # beginnen zijn remarks, regels met commentaar dat wordt overgeslagen. Een # voor de regel zetten is handig om iets te laten overslaan of een opmerking voor jezelf neer te zetten. De eerste paar regels zijn hier om de screensaver uit te zetten en het bestand .Xmodmap te laten gebruiken voor toetsenbordinstellingen.

Dan start het script nxterm met als achtergrondkleur zwart en witte letters. In een terminal kun je net als in de console tekst typen. Deze regel heeft een & achteraan om hem in de achtergrond te starten. Doe je dat niet, dan pikt nxterm de shell in en komt het script nooit bij de onderste regels aan. Xset en xmodmap doen dat niet, waardoor er geen & nodig is achter die regels. Met de laatste regels start je een window manager. Je kunt er maar één tegelijk starten. Gnome is geen window manager, maar een zogenaamde desktop environment. Je moet hem in combinatie met een window manager gebruiken. Gnome zorgt op zich alleen maar voor een panel onderin het beeld en iconen op de desktop.

Wat ook wel leuk is om eens te doen is geen enkele window manager starten, maar alleen een terminal. Als je dan startx intikt wordt X opgestart en zie je de terminal zonder randen. Je kunt hem dan niet van grootte veranderen of verplaatsen. Als je dan echter een window manager start in die terminal (bijv. door wmaker in te tikken), dan verschijnen er ineens randen! Je kunt die window manager dan ook weer afsluiten en een andere opstarten zonder dat X of de programma's die onder X gestart zijn afsloten worden.


next up previous contents index
Volgende: 14.3 Window managers en Omhoog: 14 X Vorige: 14.1 X Windowing System   Inhoudsopgave   Index
Jarkko Huijts 2002-08-17