#!/bin/sh

# Este script fué realizado por el equipo de GALPon MiniNo <minino@galpon.org>
# Este script se publica SIN NINGUNA GARANTIA y bajo la Licencia Pública General GNU
# publicada por la Free Software Fundation.

case $LANG in
	es*)
		TEXT1="Auto-login ¡Necesita privilegios de administrador (root)! ¡Tenga cuidado!"
		TITLE="Entrada automática"
		TEXT2="Recuerde que, con esta acción, la <b>privacidad</b>
de sus datos puede verse <b>comprometida</b>."
		COL="Acción"
		SIN="Acceso sin pedir usuario y contraseña"
		CON="Acceso mediante usuario y contraseña"
		;;
	gl*)
		TEXT1="Auto-login require privilexios de administrador (root)! Teña coidado!"
		TITLE="Entrada automática"
		TEXT2="Lembre que con esta acción a <b>intimidade</b>
dos seus datos pode verse comprometida."
		COL="Acción"
		SIN="Acceso sen pedir usuario e contrasinal
NON RECOMENDADO"
		CON="Acceso mediante usuario e contrasinal"
		;;
	*)
		TEXT1="Auto-login requires root priviledges! Be careful!"
		TITLE="Auto Login"
		TEXT2="Remember that, with this action, the <b>privacy</b>
of your datas can be <b>compromised</b>."
		COL="Action"
		SIN="Access without asking username and password"
		CON="Access by username and password"
		;;
esac

# Comprobamos la ejecución como administrador
if [ $(whoami) != "root" ];  then
	zenity --error \
		--text "$TEXT1"
	exit 1
fi

MODO=$(zenity --title "$TITLE" \
	--text "$TEXT2" \
	--list --radiolist \
	--width "342" --height "222" \
	--column "" --column "control" --column "$COL" --hide-column 2 \
    FALSE sin "$SIN" \
    FALSE con "$CON")

case $MODO in
	sin)	
		# Modificamos /etc/inittab
		sed -i "s+1:2345:respawn:/sbin/getty 38400 tty1+1:2345:respawn:/bin/login -f minino tty1 /dev/tty1 2>\&1+" /etc/inittab
		sed -i "s+#2:23:respawn:/sbin/getty 38400 tty2+2:23:respawn:/sbin/getty 38400 tty2+" /etc/inittab

		# Modificamos /etc/X11/Xwrapper.config
		sed -i "s+console+anybody+" /etc/X11/Xwrapper.config

		# Modificamos las preferencias de cerrado de sesión de lxp-icewm
		sed -i "s+ShowLogoutMenu=1+ShowLogoutMenu=0+" /usr/share/lxp-icewm/preferences
	
		# El .bashrc estará ya preparado con el comando startx, pero por si acaso
		cargax=`cat /home/minino/.bashrc|grep startx`

		if [ "$cargax" == "" ];then
			echo "" >>/home/minino/.bashrc
			echo "#Si no están cargadas las X entonces lanza startx" >>/home/minino/.bashrc
			echo "if [ -z \"\$(pgrep X)\" ]; then" >> /home/minino/.bashrc
			echo "    startx -- -dpi 100 vt7 -nolisten tcp" >>/home/minino/.bashrc
			echo "fi" >>/home/minino/.bashrc
		fi
				
		# Quitamos XDM del inicio
		update-rc.d -f xdm remove
		;;
	con)
		# Modificamos /etc/inittab
		sed -i "s+1:2345:respawn:/bin/login -f minino tty1 /dev/tty1 2>\&1+1:2345:respawn:/sbin/getty 38400 tty1+" /etc/inittab
		sed -i "s+2:23:respawn:/sbin/getty 38400 tty2+#2:23:respawn:/sbin/getty 38400 tty2+" /etc/inittab

		# Modificamos /etc/X11/Xwrapper.config
		sed -i "s+anybody+console+" /etc/X11/Xwrapper.config

		# Modificamos las preferencias de cerrado de sesión de lxp-icewm
		sed -i "s+ShowLogoutMenu=0+ShowLogoutMenu=1+" /usr/share/lxp-icewm/preferences

		# Volver a poner xdm en el inicio
		sudo update-rc.d xdm defaults 99 01
		;;
	*) exit ;;
esac
