====== Sitemap ====== This is a sitemap over all available pages ordered by [[doku>namespaces|namespaces]].
Page Actions
Wiki Actions
User Actions
====== Differences ====== This shows you the differences between two versions of the page.
|
testing:readonly-lenny [2009/03/18 13:40] fishy Yey! |
testing:readonly-lenny [2009/03/18 14:29] (current) fishy New section... |
||
|---|---|---|---|
| Line 16: | Line 16: | ||
| * Partitioning: Manual, one partition, no swap | * Partitioning: Manual, one partition, no swap | ||
| * Tasksel Install: Base system only. | * Tasksel Install: Base system only. | ||
| + | * Non-root user: kitteh | ||
| Post install: | Post install: | ||
| Line 213: | Line 214: | ||
| ===== X Server installation ===== | ===== X Server installation ===== | ||
| + | |||
| + | I decided to try to keep the X Server installation small, but not super-small ;) By using apt, a bunch of dependencies that are not really needed are pulled in, but at least it is not as bloated as it would be, had I pulled in a complete desktop meta-package. | ||
| + | |||
| + | First: set the filesystem writable.... | ||
| + | |||
| + | <code> | ||
| + | rw | ||
| + | </code> | ||
| <code> | <code> | ||
| Line 221: | Line 230: | ||
| xserver-xorg-core xfs xfonts-100dpi xfonts-75dpi xfonts-scalable ttf-dejavu \ | xserver-xorg-core xfs xfonts-100dpi xfonts-75dpi xfonts-scalable ttf-dejavu \ | ||
| ttf-freefont gtk2-engines xterm blackbox iceweasel unclutter | ttf-freefont gtk2-engines xterm blackbox iceweasel unclutter | ||
| + | </code> | ||
| + | |||
| + | We need some additional fonts for our setup. Note that we add the "contrib" package of Microsoft Core fonts. No religious views here, we allow non-free stuff in... Klavika is a font that is used extensively in the GUC visual profile. | ||
| + | |||
| + | <code> | ||
| + | echo "deb http://ftp.no.debian.org/debian/ lenny contrib" >> /etc/apt/sources.list | ||
| + | echo "deb http://ftp.no.debian.org/debian/ lenny non-free" >> /etc/apt/sources.list | ||
| + | apt-get update | ||
| + | apt-get install msttcorefonts | ||
| + | cd /tmp | ||
| + | wget http://dilbert.hig.no/jonl/klavika.tar.bz2 | ||
| + | cd /usr/share/fonts | ||
| + | tar jxvf /tmp/klavika.tar.bz2 | ||
| + | fc-cache -f -v | ||
| + | fc-list | grep Kl # to confirm the install | ||
| + | </code> | ||
| + | |||
| + | The Xorg configuration will need to be tweaked to the display the Kiosk is to run with. | ||
| + | |||
| + | Finally, the filesystem is set read-only again. | ||
| + | <code> | ||
| + | ro | ||
| + | </code> | ||
| + | |||
| + | ===== Setting up the Kiosk function... ===== | ||
| + | |||
| + | With X up and running, and the filesystem back in read-only mode, make sure the non-root user crated during install is available for use, by setting up the home directory: | ||
| + | |||
| + | <code> | ||
| + | mkdir /home/kitteh | ||
| + | chown kitteh.kittteh /home/kitteh | ||
| + | </code> | ||
| + | |||
| + | Now, either switch to a different VT, or log out root. Log in as the non-root user created during install, create a simple ~/.xinitrc: | ||
| + | |||
| + | <code> | ||
| + | # File: /home/kitteh/.xinitrc | ||
| + | xterm & | ||
| + | blackbox | ||
| + | </code> | ||
| + | |||
| + | Start up X: | ||
| + | |||
| + | <code> | ||
| + | startx | ||
| + | </code> | ||
| + | |||
| + | Now, start up iceweasel (yeah, firefox is not called firefox, but iceweasel on Debian, due to licensing issues). Install the Autohide extension from http://www.krickelkrackel.de/autohide/, and configure it for the local user. By enabling this extension, and exiting iceweasel while it is displayed fullscreen, iceweasel will "always" start in full-screen mode. | ||
| + | |||
| + | After setting iceweasel up, update the .xinitrc: | ||
| + | |||
| + | <code> | ||
| + | # File: /home/kitteh/.xinitrc | ||
| + | xsetroot -solid white & | ||
| + | xset -dpms s off & | ||
| + | unclutter & | ||
| + | xterm -iconic & | ||
| + | iceweasel http://the.url.of.the.kiosk.example.com & | ||
| + | blackbox | ||
| + | </code> | ||
| + | |||
| + | After this, exit X11, test that it works OK, and exit the non-root login completely. | ||
| + | |||
| + | Now, we need to retain the settings made from boot to boot. /home is mounted as a tmpfs, so we need to clone the kitteh | ||
| + | home directory somewhere else on the file system, and push it back in place on boot. Log in as root.. | ||
| + | |||
| + | <code> | ||
| + | rw | ||
| + | cp -pRv /home/kitteh /usr/local/kitteh | ||
| + | </code> | ||
| + | |||
| + | Add the following to /etc/rc.local to clone the saved homedir content on boot: | ||
| + | <code> | ||
| + | cp -R /usr/local/kitteh /home/kitteh | ||
| + | chown -R kitteh.kitteh /home/kitteh | ||
| + | </code> | ||
| + | |||
| + | I have opted to force X to start on boot by running it from /etc/rc.local as well, by adding this line | ||
| + | just above "exit 0": | ||
| + | |||
| + | <code> | ||
| + | su -c "startx" kitteh | ||
| + | </code> | ||
| + | |||
| + | Now, X will normally not start unless the user starting it is also controlling the console. As I am starting X from an rc-script, that is not the case. So, to allow rc.local starting X as the user "kitteh", put the following content in | ||
| + | /etc/X11/Xwrapper.config | ||
| + | |||
| + | <code> | ||
| + | # Keeping the old setting as a comment, for clarity... | ||
| + | # allowed_users=console | ||
| + | # | ||
| + | # This is not really seen as "safe", but in our case, it is needed.. | ||
| + | allowed_users=anybody | ||
| + | # | ||
| + | # Niceness value? Nah.... | ||
| + | nice_value=0 | ||
| + | </code> | ||
| + | |||
| + | That should really be enough for starters. Close everything up, set the file system as read only again, and reboot. | ||
| + | |||
| + | <code> | ||
| + | ro | ||
| + | reboot | ||
| </code> | </code> | ||