viernes, 22 de abril de 2011

Galternatives

update-alternatives crea, elimina, gestiona y muestra información sobre los enlaces simbólicos que conforman el sistema de alternativas de Debian. 

Es posible que tenga en el sistema varios programas instalados a la vez que realizan la misma función. Por ejemplo, muchos sistemas tienen varios editores de texto instalados al mismo tiempo, lo que deja la elección de qué editor de texto usar en manos del usuario, si éste lo desea, pero hace difícil que un programa elija  la  opción  correcta  si  el  usuario  no  ha  definido  ninguna preferencia.

El  objetivo  del  sistema  de  alternativas  de  Debian es resolver este problema. Un nombre genérico en el sistema de ficheros se comparte entre todos los ficheros que tienen una funcionalidad intercambiable. El sistema de alternativas junto con el administrador del sistema determinan a qué fichero hace referencia este nombre genérico. 

Por ejemplo, si los editores  de  texto  ed(1)  y nvi(1)  están  instalados  conjuntamente en el sistema, el sistema de alternativas hará que el nombre genérico /usr/bin/editor se refiera a /usr/bin/nvi por omisión. El administrador del sistema puede modificar esto y hacer que se refiera a /usr/bin/ed, y el sistema de alternativas no modificará esto posteriormente hasta que se solicite explícitamente.

El nombre genérico no es un enlace simbólico directo a la alternativa seleccionada. En vez de esto, es un enlace simbólico a un nombre en el directorio de alternativas («/etc/alternatives»), que a  su  vez  es  un  enlace  simbólico al fichero al que se hace referencia en realidad. El objetivo es que los cambios del administrador se mantengan dentro del directorio /etc: el FHS (q.v.) da razones de por qué esto es bueno. 

Cuando se instala o desinstala un paquete que provee un fichero con una funcionalidad en particular se invoca update-alternatives para actualizar  la  información  del  sistema  de  alternativas acerca de ese fichero. Habitualmente, update-alternatives se invoca desde los scripts postinst (post-instalación o configuración) o prerm (pre-eliminación) de los paquetes de Debian.

Habitualmente, es útil que un número de alternativas se sincronicen de tal modo que se puedan cambiar como un grupo.

Por ejemplo, cuando varias versiones del editor vi(1) están instaladas la página del manual preferida por /usr/share/man/man1/vi.1 debe corresponder con el ejecutable al que hace referencia /usr/bin/vi. update-alternatives manipula esto en términos de enlaces  maestro y esclavo; cuando se cambia el maestro, todos los esclavos relacionados con él también cambian. Un enlace maestro y sus esclavos relacionados forman un grupo de enlaces.

Cada  grupo  de  enlaces  está en todo momento en uno de los dos modos posibles: automático o manual. Cuando un grupo está en modo automático el sistema de alternativas decide automáticamente el momento de actualizar los enlaces a medida que se instalan o desinstalan paquetes. En modo manual el sistema de alternativas deja todas estas decisiones en manos del administrador del sistema.

Los grupos de enlaces se establecen en modo automático la primera vez que aparecen en el sistema. Si el administrador del sistema  hace  cambios  en  la  configuración  automática  del  sistema, update-alternatives se dará cuenta la próxima vez que se ejecute sobre el grupo de enlaces cambiados y el grupo pasará automáticamente a modo manual.

Cada alternativa tiene una prioridad asociada. Cuando un grupo de enlaces se encuentra en modo automático, los miembros del grupo apuntarán a la alternativa con la prioridad más alta.

El  uso  de  la  opción  --config hace que update-alternatives muestre todas las elecciones dentro del grupo de enlaces que tienen como maestro a nombre. La elección presente se marca con «*». A continuación se le preguntará por su elección dentro de las opciones posibles en el grupo de enlaces. Una vez que se haga realizado algún cambio el grupo de  enlaces  dejará  de  estar  en  modo automático. Es necesario usar la opción --auto para devolver el grupo de enlaces al estado automático.

Si quiere realizar la configuración de un modo no interactivo puede usar la opción --set en su lugar (véase más abajo).

Los  diferentes paquetes que proveen el mismo fichero tienen que hacerlo de forma cooperativa. En otras palabras, el uso de update-alternatives es obligatorio con todos los paquetes relacionados con esa situación. No es posible sobreescribir el fichero de un paquete que no usa el mecanismo de update-alternatives.


galternatives es un Front-End de update-alternatives, es decir una herramienta gráfica que nos permite seleccionar la aplicación que queremos usar por defecto, de entre todas las que tenemos instalada para hacer los mismo, de una forma sencilla y rápida.








Instalación

Como siempre hacemos en este blog lanzamos synaptic y seleccionamos para instakar el paquete galternatives de los repositorios oficiales de Debian GNU/Linux 

apt-get install galternatives






Ejecutar galternatives

Para inicia galternatives, ejecutamos el siguiente comando en una terminal, o bien pulsamos la combinación de teclas Alt + F2, y escribimos galternatives.



o bien desde el menúK: MenuK > Sistema > Configurador de alternativas









Secciones de alternativas

Ahora vamos a explicar algunas de las muchas alternativas que podemos configurar a nuestro gusto.

Fondos de pantalla por defecto en gnome (desktop-background)





Imagen de Fondo de Grub (desktop-grub)



Imagen de carga de Splash (desktop-splash)



Editor de texto preferido para la consola (editor)



FlashPlayer de Adobe. (Flash-mozilla.so)



Consola virtual de Java - (Java)



Consola virtual de Java - (Javaws)



El emulador de terminal (x-terminal-emulator)








 El navegador por defecto (x-www-browser)





Crear nuestra propia alternativa:

# update-alternatives --install nombre_genérico enlace programa prioridad

Imaginemos que tan sólo tenemos instalado gnome. Pero instalamos lxde y queremos que ésta sea la opción a usar por defecto:

# update-alternatives --install /usr/bin/lxde x-session-manager /usr/bin/startlxde 1

También podemos borrar una alternativa:

# update-alternatives --remove x-session-manager /usr/bin/lxde















.

No hay comentarios: