.xinitrc-ru
From DSL Wiki
This page in other languages: English, español, deutsch, turkish
/home/dsl/.xinitrc
Этот скрипт выполняется при старте X-сервера и служит для запуска задач, требующих графического окружения.
Его используют для автоматического запуска X-программ, для настройки параметров X индивидуально для каждого пользователя и, разумеется, для запуска менеджера окон.
Файл .xinitrc в DSL 3.0 по умолчанию выглядит примерно так:
# put X windows programs that you want started here. # Be sure to add at the end of each command the & KEYTABLE="$(getknoppixparam.lua KEYTABLE)" DESKTOP="$(getoption.lua $HOME/.desktop wm)" ICONS="$(getoption.lua $HOME/.desktop icons)" # For non-US Keyboards if [ ${KEYTABLE:0:2} != "us" ]; then xmodmap -e "clear Mod4" -e "add Mod5 = Mode_switch" & fi #if egrep -qv noicons /proc/cmdline 2>/dev/null; then if [ "$ICONS" == 1 ]; then for x in `ls -1 .xtdesktop/*.hide 2>/dev/null`; do rm -f ${x%.*}; done iconsnap.lua &>/dev/null & xtdesk.sh fi dillo /usr/share/doc/dsl/getting_started.html &>/dev/null & torsmo 2>/dev/null & case $DESKTOP in fluxbox ) fluxter &>/dev/null & wmswallow -geometry 70x80 docked docked.lua & exec fluxbox 2>/dev/null ;; jwm ) ./.background sleep 2 exec jwm 2>/dev/null ;; * ) exec fluxbox 2>/dev/null ;; esac
Если вы пользовались DSL 1.x, вы заметите некоторые отличия. Одно из существенных отличий - блок "case", который был включен в скрипт после добавления оконного менеджера JWM. Наличие этого блока позволяет пользователю запускать менеджер окон по своему выбору и приложения, которые зависят от менеджера, с помощью опций загрузки или путем редактирования единственной строки в файле /home/dsl/.desktop. Обратите внимание на то, что в разных секциях блока перечислены различные приложения. Это, например, дает возможность запускать fluxter во Fluxbox, но не в JWM (где он не работает). Заметьте также, что выше блока "case" записаны команды, которые выполняются независимо от того, какой оконный менеджер используется (например, команда запуска dillo).
Еще раз подчеркнем: команды запуска программ, которые должны запускаться в любом менеджере окон, следует писать до блока "case", а тех программ, которые должны запускаться только в одном из менеждеров - в соответствующей ветке этого блока.
Амперсанд (&), который завершает многие команды, нужен для того, чтобы команда была запущена в фоновом режиме, а скрипт .xinitrc мог продолжать выполняться. Для большинства приложений этот амперсанд желателен. Некоторые команды, например, xset или xsri, быстро запускаются и сразу же завершаются, поэтому для данных команд амперсанд необязателен. Единственная команда, для которой амперсанд противопоказан, это последняя команда, которая запускает менеджер окон. Если запустить менеджер окон в фоновом режиме, скрипт .xinitrc завершится, X-сервер закроется, и вы окажетесь в режиме командной строки.