可以找到Arch包的源here(rc.d脚本和PKGBUILD文件)。我已将“mbpkbdbacklightctl”添加到我的/etc/rc.conf中的守护进程中。
发生的事情是,在启动时,我看到rc.d脚本启动程序启动没有错误,键盘上的背光点亮,这意味着程序也正常运行,但是当gdm运行时开始登录gnome,该程序似乎已经终止。我没有找到任何错误记录,但如果没有在20秒或更长时间内注册键盘或鼠标事件,程序将关闭背光,并在注册时重新打开,这不会发生在gdm上,也不会发生在侏儒。此外,当我到达gnome并执行pidof -o %PPID /usr/bin/mbpkbdbacklightctl
时,它不返回任何表示程序已终止的内容。当gnome启动时,我必须重新启动rc.d脚本才能使事情正常运行。
我似乎无法掌握程序自终止后会发生什么。 可以找到程序的源代码here,但我相信错误发生在rc.d脚本中,并且它可能无法正常启动程序,因为它可以通过gdm启动来“生存”。 / p>
对可能发生的事情的任何想法?
此致 Chris Buchholz
答案 0 :(得分:5)
如果您阅读了mbpkbdbacklightctl.cpp
的源代码,您会看到以下这些内容:
95 std::string the_display = ":0.0";
96 Display *x11_display = XOpenDisplay(the_display.c_str());
97 if(x11_display != NULL) {
如果没有活动的X服务器,它将失败,这意味着您必须在 X会话启动后启动此脚本。所以你必须把你的脚本放在/etc/X11/xinit/xinitrc.d