Some days ago
I saw this video on youtube (Linux Kiosk Intro) I thought it was a great idea! Sometime we would like to give to an user the possibility to surf the net but nothing else, or anyway you need a computer ONLY to use the same program and nothing else! (Can be a program to sell tickets, or to see what table are busy in your restaurant and what they order at this table, or whatever)
Usually you buy a computer, then you usually pay for a Windows OS and you put the program on this system.
What's wrong with that?
- You pay for a computer probably too powerfull for your needs.
- You pay for an OS you probably you will not use for real
- Maybe you must pay for some software to lock windows options to have a better security.
How can we solve that?
We can use Linux! Linux is free, well supported, and you can control everything you want! And with this method you don't need a powerful computer. A 10year old computer could be powerful enough.
How can we use Linux?
That's my solution! (The solution on the youtube video is good, my way is only different!)
--------------------------------------------------------------------------------------
I used ubuntu x64 11.04
Like you I used only basic system then i installed (with all dependencies):
- Xorg is the graphics environment you need to start every GUI programs, there are other programs but I barely know that one so I used this.
- Chromium-browser is the program I want to run, it's a version of Chrome browser, but you can use Firefox, or a special program like a python program you made.
- Slim is a desktop-independent graphical login manager for X11
Then I set slim like that:
PS: my username is "media"
#Path, X server and arguments (if needed)
# Note: -xauth $authfile is automatically appended
default_path /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
default_xserver /usr/bin/X11/X
xserver_arguments -nolisten tcp
# Commands for halt, login, etc.
halt_cmd /sbin/shutdown -h now
reboot_cmd /sbin/shutdown -r now
console_cmd /usr/bin/xterm -C -fg white -bg black +sb -T "Console login" -e /bin/sh -c "/bin/cat /etc/issue.net; exec /bin/login"
#suspend_cmd /usr/sbin/suspend
# Full path to the xauth binary
xauth_path /usr/bin/X11/xauth
# Xauth file for server
authfile /var/run/slim.auth
# Activate numlock when slim starts. Valid values: on|off
# numlock on
# Hide the mouse cursor (note: does not work with some WMs).
# Valid values: true|false
# hidecursor false
# This command is executed after a succesful login.
# you can place the %session and %theme variables
# to handle launching of specific commands in .xinitrc
# depending of chosen session and slim theme
#
# NOTE: if your system does not have bash you need
# to adjust the command according to your preferred shell,
# i.e. for freebsd use:
# login_cmd exec /bin/sh - ~/.xinitrc %session
[b]login_cmd exec /bin/bash -login /etc/X11/Xsession chromium-browser[/b]
# Commands executed when starting and exiting a session.
# They can be used for registering a X11 session with
# sessreg. You can use the %user variable
#
# sessionstart_cmd some command
# sessionstop_cmd some command
# Start in daemon mode. Valid values: yes | no
# Note that this can be overriden by the command line
# options "-d" and "-nodaemon"
# daemon yes
# Available sessions (first one is the default).
# The current chosen session name is replaced in the login_cmd
# above, so your login command can handle different sessions.
# see the xinitrc.sample file shipped with slim sources
sessions default,startxfce4,openbox,ion3,icewm,wmaker,blackbox,awesome
# Executed when pressing F11 (requires imagemagick)
screenshot_cmd scrot /root/slim.png
# welcome message. Available variables: %host, %domain
welcome_msg Welcome to %host
# Session message. Prepended to the session name when pressing F1
# session_msg Session:
# shutdown / reboot messages
shutdown_msg The system is halting...
reboot_msg The system is rebooting...
# default user, leave blank or remove this line
# for avoid pre-loading the username.
[b]default_user media[/b]
# Focus the password field on start when default_user is set
# Set to "yes" to enable this feature
#focus_password no
# Automatically login the default user (without entering
# the password. Set to "yes" to enable this feature
[b]auto_login yes[/b]
# current theme, use comma separated list to specify a set to
# randomly choose from
current_theme debian-spacefun
# Lock file
lockfile /var/run/slim.lock
# Log file
logfile /var/log/slim.log
IMPORTANT:
# NOTE: if your system does not have bash you need
# to adjust the command according to your preferred shell,
# i.e. for freebsd use:
# login_cmd exec /bin/sh - ~/.xinitrc %session
login_cmd exec /bin/bash -login /etc/X11/Xsession chromium-browser
# default user, leave blank or remove this line
# for avoid pre-loading the username.
default_user media
# Automatically login the default user (without entering
# the password. Set to "yes" to enable this feature
auto_login yes
You can leave
%session on
login_cmd if you change the possible sessions in
sessions.
And it works not bad at all, maybe i have to fix some stuff with mouse and size of the windows, and last if I close the last tab it goes back to login page, but i don't need openbox!