1

Chromebook с Linux, запущенным через crouton (изначально Ubuntu 12.04, обновлён до 14.04). Я запускаю X из crosh/shell, используя:

sudo i3

Содержимое i3 (комментарии / инструкции по использованию опущены):

#!/bin/sh/ -e

set -e
exec sh -e "`dirname "\`readlink -f "$0"\`"`/enter-chroot" -t x11 "$@" "" \
    exec xinit

Содержание .xinitrc:

#!/bin/sh
[[ -f ~/.Xresources ]] && xrdb -merge ~/.Xresources
exec i3

СодержаниеXresources:

URxvt.scrollBar: false

i3 запускается как я и ожидал. Однако после открытия urxvt xrdb -query ничего не дает. Я могу явно запустить xrdb ~/.Xresources и xrdb -query возвращают единственную строку выше. После этого новые окна urxvt открываются без полос прокрутки.

Я понял, что источники urxvt.Xresources по умолчанию. Даже если бы этого не произошло, я бы подумал, что мой вызов xrdb в .xinitrc позаботится об этом. Я предполагаю, что это как-то связано со средой chroot, так как все вышеперечисленное прекрасно работает на моем другом ноутбуке Mint (правка: хотя, конечно, он не использует .xinitrc).

У кого-нибудь есть идеи?

1 ответ1

0

Это заняло у меня весь день, чтобы выследить. Я думаю, что это хорошая учебная точка, поэтому я опубликую ее здесь. Это, вероятно, более очевидно для тех, кто провел больше времени с оболочкой, чем я!

Проблема заключалась в двойных квадратных скобках в .xinitrc. Crouton вызывает chroot с sh, который указывает на тире. Dash, в отличие от bash, не поддерживает двойные квадратные скобки для тестов. С помощью:

[ -f ~/.Xresources ] && xrdb -merge ~/.Xresources

работает отлично.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .