Основы Slackware Linux


Xinitrc и ~/xinitrc


xinit(1)- фактически является программой, запускающей X; она выполняется из startx(1), так что возможно, вы не заметили этого (и скорее всего это вам знать и не надо). Тем не менее, её конфигурационный файл определяет, какие программы (включая и оконный менеджер) запускать при загрузке X. xinit вначале проверяет, есть ли в вашем домашнем каталоге .xinitrc файл. Если она находит его, он выполняется, а иначе выполняется /var/X11R6/lib/xinit/xinitrc (системный файл по умолчанию). Вот пример простого xinitrc фала:



# !/bin/sh
# $XConsortium: xinitrc.cpp,v 1.4 91/08/22 11:41:34 rws Exp $
userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/usr/X11R6/lib/X11/xinit/.Xresources
sysmodmap=/usr/X11R6/lib/X11/xinit/.Xmodmap
# merge in defaults and keymaps
if [ -f $sysresources ]; then
    xrdb -merge $sysresources
fi
if [ -f $sysmodmap ]; then
    xmodmap $sysmodmap
fi
if [ -f $userresources ]; then
    xrdb -merge $userresources
fi
if [ -f $usermodmap ]; then
    xmodmap $usermodmap
fi
# start some nice programs
twm &
xclock -geometry 50x50-1+1 &
xterm -geometry 80x50+494+51 &
xterm -geometry 80x20+494-0 &
exec xterm -geometry 80x66+0+0 -name login

Все из этих ''if'' блоков используются для подключения разных конфигурационных фалов. Очень скоро мы вернёмся к .Xresources, а вот файл .Xmodmap мы оставим в покое. Наиболее интересная часть файла расположена в конце, это та часть, где запускаются различные программы. Эта X сессия начнётся с twm(1) оконным менеджером, с часами и с тремя терминалами. Обратите внимание на exec в строчке запуска последнего из терминалов. Эта команда говорит, что этот терминал (xterm(1)) заменит текущую оболочку (ту, которая запустила xinit сценарий). Когда пользователь выйдет из этого xterm, X сессия закончится.

Если вы хотите, определить, какие из программ должны быть запущены в X сессии, скопируйте /var/X11R6/lib/xinit/xinitrc в ~/.xinitrc и отредактируйте его, разместив там строчки, запускающие те программы, которые вы пожелаете. Последние строчки моего выглядят вот так:

# Start the window manager:
exec startkde

Обратите внимание, что есть несколько xinitrc.* файлов в каталоге /var/X11R6/lib/xinit, которые соответствуют разным оконным менеджерам и GUI-ам. Вы можете пользоваться тем из них, каким пожелаете.



Содержание раздела