--- /tmp/gpe-login.pre-session	2005-02-17 10:49:01.726436296 +0100
+++ gpe-login-0.75/X11/gpe-login.pre-session	2005-02-17 10:48:42.297389960 +0100
@@ -4,10 +4,22 @@
 
 if [ -e /dev/sound/dsp ]; then
 chown $USER /dev/sound/dsp
+chmod u+rw /dev/sound/dsp
+fi
+
+if [ -e /dev/dsp ]; then
+chown $USER /dev/dsp
+chmod u+rw /dev/dsp
 fi
 
 if [ -e /dev/sound/mixer ]; then
 chown $USER /dev/sound/mixer
+chmod u+rw /dev/sound/mixer
+fi
+
+if [ -e /dev/mixer ]; then
+chown $USER /dev/mixer
+chmod u+rw /dev/mixer
 fi
 
 if [ -e /dev/touchscreen/0raw ]; then
@@ -18,13 +30,26 @@
 chown $USER /dev/touchscreen/0
 fi
 
+if [ -e /dev/collie-fl ]; then
+chown $USER /dev/sharp_fl
+fi
+
 if [ -e /dev/misc/buzzer ]; then
 chown $USER /dev/misc/buzzer
 fi
 
-mkdir -p /mnt/ramfs/home/$USER
-chown $USER /mnt/ramfs/home/$USER
+# check for ramdisk location
+if [ -d /mnt/ramfs ]; then
+# old location as used in familiar <= 0.7.2
+RAMDISK="/mnt/ramfs"
+else
+# default to new style location
+RAMDISK="/mnt/ram"
+fi
+
+mkdir -p $RAMDISK/home/$USER
+chown $USER $RAMDISK/home/$USER
 
 # this location MUST be consistent with HOME_VOLATILE in /etc/X11/Xsession
-ln -s /mnt/ramfs/home/$USER /home/$USER/ramdisk
-ln -s /home/$USER/ramdisk/.xsession-errors /home/$USER/.xsession-errors
+ln -sf $RAMDISK/home/$USER /home/$USER/ramdisk
+ln -sf /home/$USER/ramdisk/.xsession-errors /home/$USER/.xsession-errors