Coin-operated kiosk written in python -- need some help...
jmtapio at verkkotelakka.net
Sat Aug 20 11:44:17 CEST 2005
Jon Monteleone <uomart at ihug.co.nz> wrote:
> The OS I am using is linux distro fedora core 4 (RH, version 10 I think). The first
> question I have is exactly as you mention in 1. I need to have the gui running from
> machine bootup to shutdown. I wrote a bash daemon init script to turn my program into a
> daemon, but it doesnt seem to work. I used the standard bash daemon init script that
> exists in /usr/local/docs as a template. The script doesnt work correctly, so that is my
> first problem. But, assuming I get the script spawning my program as a daemon, the
> question becomes...will my Tkinter gui show up on the gnome presession screen (login
> screen) or do I need to add special code in .xinitrc or some other file to make it
> So, currently my specific questions are:
> 1) How do I make my gui display at the login screen (we can assume I get the program
> spawning as a daemon)
Assuming Gnome and GDM as a display manager, you can access the login
display by setting the environment variable
XAUTHORITY=/var/lib/gdm/:0.Xauth before starting your Tkinter-script.
That environment variable specifies the file where the MIT
authorization cookie for the X11-session is stored. If Gdm is not
used, the file is going to be somewhere else.
> 2) How do I get a push of the start button on my gui to login the user to the Internet
I think there is some kind of support in Gdm to support auto-login, but
personally I would suggest not using Gdm at all. You could start X11
separately from your script, then open your Gui on the display, and
start gnome-session (with a proper userid) on the same display after the
user has paid. (Though you need to be careful with security so that the
user can't bypass your system.)
You would propably get better advice from some Linux or Gnome -specific
forums. From a Python viewpoint you basically just need to know that
the python-process running your Gui can access the X authority file
specified in the above mentioned environment variable.
More information about the Python-list