Я использую xbindkeys для управления горячими клавишами в Gnome 3, но у него нет демона, поэтому я добавил его в .xinitrc.
~$ cat .xinitrc
ck-launch-session gnome-session
nohup xbindkeys &
Странно, это вообще не работает. Мне все равно приходится вручную запускать xbindkeys каждый раз при загрузке. Что я делаю не так?
Моя система:
~$ uname -a
Linux [...] 3.0.28-1-lts #1 SMP PREEMPT Mon Apr 16 21:05:30 CEST 2012 x86_64 Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz GenuineIntel GNU/Linux
решение1
Чтобы запустить xbindkeys в среде Gnome 3, вам следует запуститьgnome-session-properties
и добавьте xbindkeys
туда. После этого просто выйдите из системы и войдите снова.
(обратите внимание, что вы ~/.xbindkeysrc
должны содержать как минимум 1 команду, чтобы позволить xbindkeys демонизировать)
В любом случае, это не очень хорошая идея запускать его из .xinitrc
, вам, вероятно, следует избегать этого. Проще говоря, .xinitrc
это скрипт оболочки => последовательность команд, которые вы собираетесь запустить одну за другой. Так что ваш xbindkeys
не запустится, пока ваша предыдущая команда не завершится (в вашем примере этоck-launch-session gnome-session
решение2
Вшскрипты, включая .xinitrc
, все команды запускаются последовательно по умолчанию – nohup xbindkeys
не рассматривается до gnome-session
выхода. Перестановка строк должна работать (хотя nohup
здесь бесполезна).
Однако лучше запускать xbindkeys
из сеанса GNOME, а не .xinitrc
; в противном случае программы будут запускаться с использованием сочетаний клавишволяпрерываются при попытке выполнить определенные привилегированные операции (те, которые контролируются polkit и ConsoleKit). Добавьте xbindkeys вgnome-session-properties
вместо.