>>>>> Dmitrii Kashin <[email protected]> writes:
[…]
> Ниже прилагаю скрипт для автоматического развертывания
> chroot-окружения ubuntu с установленным Steam.
> Запускать его надо от имени суперпользователя, то бишь:
> % sudo ./mkenv.sh
… Или же $ sudo bash mkenv.sh, чтобы не полагаться на x-бит (или
«эвристики» Shell.)
> Переменной USERNAME надо присвоить имя пользователя, от имени
> которого работает Xorg.
[…]
> set -e
Стоит добавить -x, для упрощения диагностики отказов.
[…]
> echo -e "\e[01;31m" "Install base system... " "\e[00m"
Не уверен, что это хорошая идея, ввиду возможности M-x shell (и,
следовательно, TERM=dumb.) Не лучше ли использовать tput(1)?
[…]
> mount -o bind /dev $CHROOT_DIR/dev
… Если не требуется /dev/pts. В противном случае — --rbind.
При постоянном использовании, неплохо бы все это внести в
/etc/fstab (.d).
[…]
> chmod u+x $CHROOT_DIR/$PRE_SCRIPT
> chroot $CHROOT_DIR $PRE_SCRIPT
Проще:
chroot "$CHROOT_DIR" bash "$PRE_SCRIPT"
Да, PRE_SCRIPT=$(mktemp -- "$CHROOT_DIR"/pre.XXXXXXXX), на
всякий случай.
[…]
> echo -e "\e[01;31m" "Authentication in Xorg..." "\e[00m"
> su $USERNAME -c "xauth extract - $DISPLAY" | chroot $CHROOT_DIR /bin/bash -c
> "xauth merge -"
> echo -e "\e[01;31m" "Run Steam..." "\e[00m"
> chroot $CHROOT_DIR /bin/bash -c steam
> chroot $CHROOT_DIR /bin/bash -c "steam steam://open/games/"
> echo -e "\e[01;31m" "In order to run steam again type 'steam
> steam://open/games/' in chroot environment. Have fun!" "\e[00m"
… Не забыв перед этим повторить трюк с xauth(1), если за
прошедшее с момента создания chroot-окружения время используемый
X cookie изменился.
BTW, а есть ли «умный» способ заставить schroot(1) «переносить»
соответствующий текущему DISPLAY cookie из $XAUTHORITY основной
системы в дочернюю?
PS. Неужели steam обязательно запускать от root?
--
FSF associate member #7257 np. ForOldTimes.xm
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: http://lists.debian.org/[email protected]