2

我有一个 gtk 应用程序。我希望它在我启动系统时自动启动,这样我的应用程序就不会得到通常的登录屏幕,而是向用户致意。

我的应用程序是一种现金分配应用程序。所以用户甚至不应该看到 linux 的登录屏幕。每当机器启动时,在加载服务和所有这些之后,我的应用程序应该出现在屏幕上。无论如何都不必输入任何密码或登录名来启动该应用程序。

现在到目前为止,我已经尝试了以下方法,但都是徒劳的。

我将命令放入我的 /etc/rc.local 文件 /home/EXE/cashier 然后在运行级别 5 中重新启动机器。但没有任何反应。我得到通常的登录屏幕。其他不涉及任何 gui 或 gtk 的程序,它们会以这种方式自动启动,但不是 gtk 应用程序。

然后我把 xint /home/EXE/cahier 和后来的 xint /home/EXE/./cashier

但他们也没有工作。当我查看细节时,我发现“一个 Xserver 已经在屏幕 0 上运行,无法打开其他服务器”或类似的东西。

然后我尝试启动到运行级别 3,这次成功了。xint /home/EXE/.cachier

但在运行级别 3 中,字体和图标大小更小。此外,有些窗口不会覆盖整个屏幕。

现在我真的很感激一种在运行级别 5 中运行我的应用程序的方法,而不会自动显示登录屏幕。

问候

编辑 目前,该应用程序在 fedora core 2 上运行

4

1 回答 1

3

这更多是关于 linux 发行版启动的问题,而不是关于 Gtk 应用程序的问题。具体细节将取决于您的发行版,但本质是:

  • 禁用gdm通常负责生成 X 服务器的工具。

  • 运行xinit(不是“xint”)手动启动服务器。这以客户为参数。它可以直接运行你的 Gtk 应用程序(它需要足够聪明来定位和调整自身而不是依赖于窗口管理器),但你更有可能想要选择一个窗口管理器来运行它。最简单的方法是这是通过您传递给 xinit 的脚本来完成的。

于 2009-10-15T03:46:14.743 回答