InicioLinuxDeshacete de GDM, mejor usa Slim

Deshacete de GDM, mejor usa Slim

Linux10/22/2009
Hola, otro post con experiencias personales.
Si bien siempre me inclino por las aplicaciones con bajos requerimentos de hardware, no se puede usar todos los dias un tarro con letritas en la pantalla. Sería un desperdicio de placa de video y tu nuevo monitor LCD de 24" (yo me quedo con las ganas ).
Ya antes habia intentado reemplazar gdm por slim, pero tenia varias complicaciones que hasta ahora no habia podido resolver. Forzado por la actualizacion accidental de mi paquete de gdm de ArchLinux, me desayuno que toda la personalizacion que antes hacia con gdmsetup ahora la tengo que hacer a pata. Cosa a la que no le quiero dedicar tiempo de mi vida, prefiero aprender lo que aprendí y compartirlo en T!.

Primero vamos a poner un par de diferencias para no defraudar a nadie:
1. Slim solo hace el loguin ejecutando un comando simple que nosotros elejimos
2. Slim no permite hacer loguin remoto con xdmpp como GDM, se puede agregar un comando de los nombrados antes, pero es mucho mas complicado.
3. Slim tiene toda la facha que le ponemos con la foto de fondo, pero no mucho mas que eso, nada de botones chetos de reinicio y demases.
4. Slim no viene por defecto listo para sesiones múltiples simultaneas como si pasa con GDMflexiserver que nos habilita otro servidor de X en otra tty. Tendriamos que crear nosotros el servidor nuevo y levantar Slim en el.
5. Olvidate de las interfaces de configuracion, con un archivo de texto facilísimo de leer te alcanza y sobra.


Algunas son ventajas y otras todo lo contrario, pero depende de cada uno.
Si tienen un solo usuario o simplemente usan una sola sesión por vez, se los recomiendo mucho. Es mucho más ligero y como todo lo bueno en linux, una vez que lo pones a punto nunca te deja a pata (como me paso con gdm).

SLiM - Simple Login Manager




Dirección del sitio web:
Dependencias:
* X11
* libpng
* libjpeg
* freetype

Paquetes de las dependencias en Archlinux:
* libjpeg>=7
* libpng
* libxft
* libxmu
* pam


Ahora a lo nuestro, la instalacion y puesta a punto.

segun su distribución, usen apt-get (o synaptic), yum, emerge o lo que sea que usen como manejador de paquetes.
En Archlinux tenemos pacman y otros cuantos que usan pacman como yaourt
entonces, con un
# pacman -S slim
instalamos el paquete, también tenemos paquetes con más temas y uno con el tema oficial de la distro, esos los instalamos con:
# pacman -S slim-themes archlinux-themes-slim

Luego editamos la configuración de slim a priori cambiando los siguientes datos en el archivo slim.conf, haciendo;
# nano /etc/slim.conf
pero pueden usar el editor que quieran, ya sea de consola o no, llegamos a lo mismo:


# Path, X server and arguments (if needed)
# Note: -xauth $authfile is automatically appended
default_path ./:/bin:/usr/bin:/usr/local/bin
default_xserver /usr/bin/X
xserver_arguments -nolisten tcp vt07

# 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; exec /bin/login"
#suspend_cmd /usr/sbin/suspend

# Full path to the xauth binary
xauth_path /usr/bin/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
login_cmd exec /bin/bash -login ~/.xinitrc %session

# 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 xfce4,icewm,wmaker,blackbox

# Executed when pressing F11 (requires imagemagick)
screenshot_cmd import -window 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.
#default_user simone

# 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
#auto_login no


# current theme, use comma separated list to specify a set to
# randomly choose from
current_theme default

# Lock file
lockfile /var/lock/slim.lock

# Log file
logfile /var/log/slim.log



le descomentamos la linea de numlock para que inicie con el teclado numerico activado (notebooks abstenerse) y tambien la de hide cursor para ver el puntero del mouse; comentamos las tres que siguen:
sessions xfce4,icewm,wmaker,blackbox
screenshot_cmd import -window root /slim.png
welcome_msg Welcome to %host

y le cambiamos al castellano los mensajes de reinicio y apagado (una paqueteria)
shutdown_msg The system is halting...
reboot_msg The system is rebooting...

de modo que nos quede algo así:

# Path, X server and arguments (if needed)
# Note: -xauth $authfile is automatically appended
default_path ./:/bin:/usr/bin:/usr/local/bin
default_xserver /usr/bin/X
xserver_arguments -nolisten tcp vt07

# 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; exec /bin/login"
#suspend_cmd /usr/sbin/suspend

# Full path to the xauth binary
xauth_path /usr/bin/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
login_cmd exec /bin/bash -login ~/.xinitrc %session

# 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 xfce4,icewm,wmaker,blackbox

# Executed when pressing F11 (requires imagemagick)
screenshot_cmd import -window root /slim.png

# welcome message. Available variables: %host, %domain
welcome_msg Bienvenido a %host

# Session message. Prepended to the session name when pressing F1
# session_msg Session:

# shutdown / reboot messages
shutdown_msg El sistema se esta apagando...
reboot_msg El sistema se esta reiniciando...


# default user, leave blank or remove this line
# for avoid pre-loading the username.
#default_user simone

# 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
#auto_login no


# current theme, use comma separated list to specify a set to
# randomly choose from
current_theme default

# Lock file
lockfile /var/lock/slim.lock

# Log file
logfile /var/log/slim.log



con eso ya tenemos el 30% del laburo.
ahora lo importante, yo uso xfce4 y la verdad no lo cambio por gnome, y con gdm uno tiene la ventaja que anda de lujo desde el vamos, aca hay que intervenir un poco.
Para poder apagar y reiniciar la pc desde el menu de salida de sesion de xfce4 y me imagino que en otros entornos pasa lo mismo, necesitamos ejecutar estos dos comandos (como root, como todos los demas)
# polkit-action --set-defaults-any org.freedesktop.hal.power-management.reboot yes
# polkit-action --set-defaults-any org.freedesktop.hal.power-management.shutdown yes

sino, nos tira un error de hal sobre unos permisos, y se soluciona con eso. y sumandonos al grupo power para efectivamente, poder apagar todo. Esto lo hacemos con:
# gpass -a USUARIO power
donde dice USUARIO, ponen el nombre de usuario que quieren que pueda apagar la pc.

Otra que encontré mucho, muy conveniente, es poner slim en la lista de daemons y no usar el inittab como se sugiere en la wiki de Archlinux, tiene 2 ventajas: anda mejor asi, y lo puedo matar si lo necesito, sin que vuelva al toque.

Para eso, comentamos todas las líneas como las que muestro aca en el archivo inittab:
# nano /etc/inittab
# Example lines for starting a login manager
#x:5:respawn:/usr/bin/xdm -nodaemon
#x:5:respawn:/usr/sbin/gdm -nodaemon
#x:5:respawn:/usr/bin/kdm -nodaemon
#x:5:respawn:/usr/bin/slim >& /dev/null

que les quede así, con los # al principio de la línea (eso es comentar) para que no sean tenidos en cuenta.

y en el rc.conf (no me acuerdo bien como es en otras distros) quitamos gdm si es que estaba y lo reemplazamos por slim:
# nano /etc/rc.conf

# -----------------------------------------------------------------------
# DAEMONS
# -----------------------------------------------------------------------
#
# Daemons to start at boot-up (in this order)
# - prefix a daemon with a ! to disable it
# - prefix a daemon with a @ to start it up in the background
#
DAEMONS=(syslog-ng hal @fam @alsa crond network iptables firestarter ntpdate @openvpn ddclient @sshd slim)

tambien pueden poner un ! delante de gdm si quieren, como dice el comentario anterior, asi se desactivan los demonios.

Ahora, y antes que me tiren una puteada, yo necesité hacer esto para que funcione bien con xfce4. A lo mejor con otros escritorios no pasa, pero no jode para nada tomar la precaución.
En la carpeta personal de cada usuario /home/USUARIO crean o editan el archivo .xinitrc (ojo con el punto, hace que sea un archivo oculto y el sistema lo busca así); de nuevo, es PUNTOxinitrc.
y dejan el contenido así:
$ nano ~/.xinitrc <--- leer el comentario abajo

#!/bin/sh
# ~/.xinitrc
# Executed by startx (run your window manager from here)
exec ck-launch-session startxfce4



donde dice startxfce4 ponen el comando que levanta su escritorio, startkde, startfluxbox, y no me acuerdo en gnome si era gnome-session.
---> Comentario: este lo tienen que editar como cada usuario, o le cambian el propietario con un:
# chown USUARIO .xinitrc
y hacen eso para cada usuario, o bien copiarlo como root y cambiarle el propietario:

# cp /home/USUARIO/.xinitrc /home/OTROUSUARIO/.xinitrc
# chown OTROUSUARIO /home/OTROUSUARIO/.xinitrc


Y listo !

Ahora el tema de los temas de Slim
si se fijan bien, en el archivo slim.conf del que hablamos antes, cerca del final dice:

# current theme, use comma separated list to specify a set to
# randomly choose from
current_theme default


cambiamos default por el nombre del tema que queremos y voilá !
los temas los encuentran en /usr/share/slim/themes, asi que haciendo un:
$ ls /usr/share/slim/themes
obtienen la lista y eligen el que más les guste. Como dice el comentario, si ponen varios temas separados por comas, elije uno al azar cada vez.
y si quieren hacer como yo y poner una foto de su propia elección para el fondo, elijen el tema que más se acerque a sus deseos exceptuando el fondo y reemplazan el archivo background.png o background.jpg que tienen en esa carpeta y listo !
OjO que hay que hacerlo como root:
# cp MIFOTODEFONDO /usr/share/slim/themes/MITEMAPREFERIDO/background.png
fíjensé si es un png o jpg antes, o alteren el archivo slim.theme que tienen en la carpeta del tema a su gusto.
Para poner los mensajes que controla este archivo en castellano, modificamos las dos lineas para dejarlas así:
username_msg Usuario:
password_msg Clave:

donde cambié User por Usuario y Password por Clave (la Ñ de contraseña sale como otra cosa en mi caso).

Me olvidaba !!!


Otra diferencia (un poco molesta) con GDM es que gdm inicia fam con la sesion. fam es el monitor de alteración de archivos (File Alteration Monitor), que es lo que le dice al sistema operativo y a los programas si algun archivo cambió. Esto, entre otras cosas hace que cuando borramos un archivo desde nuestro manejador de archivos, veamos que ya no está, si no agregamos fam a la lista de daemons no se va a refrescar nuestro escritorio ni nuestras carpetas automaticamente.

para ello, hacemos de nuevo:
# nano /etc/rc.conf

# -----------------------------------------------------------------------
# DAEMONS
# -----------------------------------------------------------------------
#
# Daemons to start at boot-up (in this order)
# - prefix a daemon with a ! to disable it
# - prefix a daemon with a @ to start it up in the background
#
DAEMONS=(syslog-ng hal @fam @alsa crond network iptables firestarter ntpdate @openvpn ddclient @sshd slim)

agregamos fam si es que no estaba, la arroba @ que le puse yo por delante es para que lo inicie en segundo plano, asi mientras se inician esos servicios, sigue la carga de otros o, en realidad alrevés, mientras se cargan otros, estos se terminan de cargar. Pero eso es otro tema.

Espero que les sirva y que se saquen de encima casi 100MB de dependencias de GDM que talvés no necesiten si no usan Gnome.

Salu2
Datos archivados del Taringa! original
53puntos
6,424visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
3visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

s
Usuario
Puntos0
Posts37
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.