我有一个gtk应用程序。我希望它在我启动系统时自动启动,这样我的应用程序不会获得通常的登录屏幕,而是迎接用户。
我的申请是一种现金分发申请。所以用户甚至不应该看到linux的登录界面。每当机器启动时,在加载服务之后,我的应用程序应该出现在屏幕上。无论如何都不应该输入任何密码或登录来启动该应用程序。
到目前为止,我已经尝试了以下但是都徒劳无功。
我把命令放在我的/etc/rc.local文件中 /家庭/ EXE /收银员 然后在运行级别5重启机器。但没有任何反应。我得到了通常的登录屏幕。其他程序不涉及任何gui或gtk,它们会以这种方式自动启动,但不会以gtk应用程序启动。
然后我说 xint / home / EXE / cahier 然后 xint / home / EXE /./ cashier
但他们也没有工作。当我查看细节时,我发现“一个Xserver已经在屏幕0上运行,无法打开其他服务器”或类似的东西。
然后我尝试启动到运行级别3,这次它起作用了。 xint /home/EXE/.cachier
但在运行级别3中,字体和图标大小较小。此外,有些窗户不能覆盖整个屏幕。
现在,我真的很感激在运行级别5运行我的应用程序的方法,而不会自动显示登录屏幕。
此致
修改 目前,该应用程序正在Fedora core 2上运行
答案 0 :(得分:3)
这是关于Linux发布启动的问题,而不是关于Gtk应用程序的问题。具体细节取决于你的发行,但其实质是:
禁用gdm
工具,该工具通常负责生成您的X服务器。
运行xinit
(不是“xint”)手动启动服务器。这需要客户端作为其参数。 可能直接运行您的Gtk应用程序(它需要足够聪明才能定位和调整自身而不是依赖于窗口管理器),但更有可能您需要选择一个窗口管理器来运行最简单的方法是通过脚本传递给xinit。