Запускать команду при входе в систему с помощью xmonad

В командной строке ваша оболочка - bash. В вашем скрипте вы используете / bin / sh . / bin / sh очевидно не является bash в вашей системе, а синтаксис <() явно не присутствует в какой бы то ни было оболочке / bin / sh .

Измените shebang (часть #! / Bin / sh ) на #! / Bin / bash .

1
26.07.2015, 02:50
1 ответ

Вы можете поместить команды, которые хотите запустить перед запуском xmonad, в ~ / .xmonad / xmonad-session-rc .

Если у вас есть ~ / .xsession , его задача - запустить весь ваш X-сеанс. Когда этот сценарий вернется, ваша сессия будет завершена. Поэтому, если вы хотите использовать этот файл, вам нужно запустить xmonad из него.

#! /bin/sh
/home/kevin/.dropbox-dist/dropboxd &
exec xmonad

Обратите внимание, что для выполнения .xsession необходимо выбрать настраиваемый сеанс в диспетчере отображения, а не в xmonad.

~ / .xinitrc похож на ~ / .xsession тем, что при выходе ваш сеанс X завершается. Разница в том, что ~ .xsession выполняется диспетчером отображения, который только что вошел в систему, тогда как / xinitrc выполняется для сеансов X, запущенных извне X с помощью startx .

В качестве альтернативы вы можете запустить программу из startupHook xmonad, но это имеет обратную сторону: она будет выполнена снова, если вы перезапустите xmonad.

1
27.01.2020, 23:50

Теги

Похожие вопросы