HOWTO Castellanizar Gentoo
De Gentoo Linux Wiki
| Kernel & Hardware • Red y Servicios • Portage • Relacionado con el Sistema • Servidor X • Juegos • Misceláneos |
Tabla de contenidos
|
[editar] Introducción
¡Hola a todos!
Existen muchas dudas últimamente sobre la manera de lograr una Gentoo castellanizada al 100%.
El problema que hay actualmente es que, conforme avanza Gentoo, aparecen nuevas variables o se modifican variables antiguas, por lo que nuestros ficheros, pese a que nos sirven actualmente (si vienen de una versión 1.2 ó 1.4), dejan de ser compatibles al usar una versión posterior.
Una vez comentado esto comenzaremos con la pequeña guía que nos permitirá tener nuestra Gentoo castellanizada:
[editar] Castellanización
[editar] Configuracion del kernel
Si disponeis de kernel precompilado debereis de cargar el modulo correspondiente,ISO8859-15 o UTF-8, dependiendo de nuestra eleccion. Para mostrar todos los modulos que podemos cargar:
# modprobe -l
Si compilais el kernel manualmente debereis de añadir las siguientes opciones a vuestro kernel:
Para quien desee soporte iso 8859-15:
| Código: kernel -> # /usr/src/linux/make menuconfig |
File systems ---> Native Language Support ---> (ISO8859-15) Default NLS Option <*> NLS ISO 8859-15 (Latin 9; Western European Languages with Euro) |
Para quien desee soporte UTF-8:
| Código: kernel -> # /usr/src/linux/make menuconfig |
File systems ---> Native Language Support ---> (utf8) Default NLS Option <*> NLS UTF8 |
Recordamos que UTF-8 de la familia de codificación de caracteres unicode permite el empleo de varios idiomas, sin varias codificaciones. Una ventaja muy grande cuando el sistema va a ser utilizado por varios lenguajes (por distintos usuarios o programas). Aún así hay algunos lenguajes que necesitan codificación multi-byte => usar UTF-16. Como dato anecdótico diré que también existe UTF-32 (aunque esto es ya un tanto offtopic :D).
[editar] Ficheros de configuracion
Versión 1.2 o versión 1.4:
| Archivo: /etc/rc.conf |
# En esta opción escogemos cuál es nuestro teclado, en este caso es el ES con la opción del euro KEYMAP="es euro2" # La fuente a usar, podeis ver todas las fuentes disponibles en /usr/share/consolefont CONSOLEFONT="lat9w-16" # En el caso de que tengamos otro sistema operativo, usar el valor local, si no, valor UTC CLOCK="local" # Los protocolos de red que vamos a usar, en el rc.conf original podeis ver una lista de los protocolos soportados PROTOCOLS="1 2" # Escojemos nuestro gestor de entorno gráfico, comentarlo si no disponemos de uno. DISPLAYMANAGER=xdm #[ xdm | gdm | kdm ] # |
Versión 2004:
| Archivo: /etc/rc.conf |
#Introducimos nuestro tipo de teclado KEYMAP="es euro2" #Para activar la tecla windows. Usuarios de mac no usar. SET_WINDOWKEYS="yes" #Ayade opciones de teclas especiales EXTENDED_KEYMAPS= #La fuente a usar, podeis ver todas las fuentes disponibles en /usr/share/consolefont CONSOLEFONT="lat9w-16" #”tipo” de caracteres, ver otras en /usr/share/consoletrans CONSOLETRANSLATION="8859-15_to_uni" #Si dispone de otro sistema operativo usar el valor local, sino valor UTC CLOCK="local" #Especificamos nuestro editor preferido. Otras opciones: "/bin/nano" y "/usr/bin/emacs" EDITOR="/usr/bin/vim" #Protocolos de red soportados PROTOCOLS="1 2" #Gestor de las X a usar: kdm, xdm, gdm DISPLAYMANAGER="kdm" #Indicamos que entorno grafico usamos. Para otros distintos a kde poner su nombre, ej: gnome XSESSION="KDE-3.3.1" |
- Existia un pequeño problema con las primeras versiones de la gentoo 2004 con el Keymap que no soportaban la extension euro2, por lo que si os ocurriera lo mismo, poner unicamente el valor siguiente a dicha variable: KEYMAP="es".
Version 2005-2006:
| Archivo: /etc/rc.conf |
#Nueva opcion para activar el unicode UTF-8, si no queremos UTF8 eliminar o comentar la opcion #UNICODE="yes" #Especificamos nuestro editor preferido. Otras opciones: “/bin/nano" y "/usr/bin/emacs" EDITOR="/usr/bin/vim" #Protocolos de red soportados PROTOCOLS="1 2" #Gestor de las X a usar: kdm, xdm, gdm DISPLAYMANAGER="kdm" #Indicamos que entorno grafico usamos. Para otros distintos a kde poner su nombre, ej: gnome XSESSION="KDE-3.4" |
| Archivo: /etc/conf.d/clock |
#Si dispone de otro sistema operativo usar el valor local, sino valor UTC CLOCK="local" CLOCK_OPTS="" CLOCK_SYSTOHC="no" SRM="no" ARC="no" |
| Archivo: /etc/conf.d/consolefont |
#La fuente a usar, podeis ver todas las fuentes disponibles en /usr/share/consolefont CONSOLEFONT="lat9w-16"/ CONSOLETRANSLATION="8859-15_to_uni" |
| Archivo: /etc/conf.d/keymaps |
#Usar este keymap si deseamos UTF-8 KEYMAP="-u es" #Usar este keymap si deseamos ISO8859-15 KEYMAP="es euro2" #Comentar esta opcion si disponemos de un ppc(apple-mac) SET_WINDOWKEYS="yes" EXTENDED_KEYMAPS="backspace keypad euro" #descomentar si se ha querido usar UTF8 #DUMPKEYS_CHARSET="iso-8859-15" |
Solo suarios de PPC: La variable del keymap es no tiene soporte del boton de apple, el cual lo usamos para activar signos como la @, #, |... es decir aquellos que es combinacion de una tecla mas altgr. Para indicar que el boton de mac sea el altgr debemos de añadir dicha opcion al keymap es:
| Código: Activar el altgr(boton mac) en ppc: |
# cd /usr/share/keymaps/i386/qwerty/ # gunzip es.map.gz # echo "keycode 125 = AltGr" >> es.map # gzip es.map # loadkeys es |
Si quisieramos que el altgr fuera otro boton, deberiamos cambiar el valor del keycode, en el caso del mac-boton es el 125. Para ver que codigo corresponde a cada tecla del teclado pueden usar el programa: showkey.
[editar] Variables locales
Debemos cargar un conjunto de variables locales relacionadas con nuestro idioma. Existe una multitud de formas para realizar esto. Nosotros vamos a optar por dos, una generica para todos los usuarios y otra propia de cada usuario, elegir la que mejor cumpla vuestras necesidades.
Un error comun era poner dichas variables en el make.conf, eso es un error ya que las variables del make.conf solo se leen cuando se usa el portage. Por lo tanto NO se deben especificar Variables locales en el make.conf.
[editar] Para todos los usuarios
Debemos de crear el fichero 02locale y añadir los siguientes valores a nuestras variables:
| Archivo: /etc/env.d/02locale |
LANG="es_ES@euro" LC_ALL="es_ES@euro" |
En el caso de querer usar UTF8 deberemos de cambiar la variable "es_ES@euro" por "es_ES.utf8".
Si nuestro gestor grafico es alguno de la familia Xbos: fluxbox, openbox, blackbox usar la variable "es_ES".
De esta forma todos los usuarios(root incluido) tendras las variables anteriores sin tener que añadir nada mas, el problema puede venir de tener usuarios con distintas lenguas o programas que al compilar no reconozcan el valor asignado a esas variables como validas.
[editar] Personalizado para un usuario
Si lo que queremos, es disponer de variables personalizadas para cada usuario, tendremos que hacer lo siguiente(para cada usuario tendremos que seguir la misma metodologia).
Así que generaremos un fichero llamado .entorno, en nuestra home del usuario que deseamos que tenga las locales castellanizadas, Dicho fichero lo cargaremos en el .bashrc, es aconsejable asegurarse de la existencia del fichero .bash_profile y que este fichero cargue el .bashrc.
| Archivo: /home/usuario/.bashrc |
source /etc/profile source .entorno ... |
Si queremos nuestras locales en formato ISO8859-15:
| Archivo: /home/usuario/.entorno |
#!/bin/bash export LANG="es_ES@euro" export LC_ALL="es_ES@euro" |
En el caso de querer usar UTF8 deberemos de cambiar la variable es_ES@euro por es_ES.UTF-8.
Si nuestro gestor grafico es alguno de la familia Xbos: fluxbox, openbox, blackbox usar la variable "es_ES"
Para poder garantizar que hemos cargado las locales correctamente deberemos de introducir el siguiente comando, el cual nos mostrara el valor asigando a las variables anteriores:
# locale
[editar] Mensajes del sistema Gentoo en castellano
Para conseguir que los mensages que nos aparecen en el arranque, salida y durante el uso de la distribucion gentoo, como son el arranque de servicios aparezcan en castellano debemos de instalar la aplicación init-es.
# emerge init-es
Puede ocasionar errores, por lo que se ha decidido retirarlo del árbol portage. Quien desee instalarlo ha de buscarlo en bugzilla.No recomendado.
[editar] Manuales de ayuda "man" en castellano
Seguro que os habeis encontrado con la ardua tarea, de que cuando desconoceis el uso de un programa, al leer el man de dicho programa, os encontrais que al estar en ingles se os hace cuesta arriba.Pues existe un paquete que traduce la mayoria de paginas al español:
# emerge man-pages-es
En caso de querer usar UTF8 deberemos de editar el fichero /etc/man.conf y modificar la linea NROFF /usr/bin/nroff -Tascii -c mandoc por NROFF /usr/bin/groff -Tutf8 -mandoc.
Nota: el nombre del paquete ha sido modificado de manpages-es a man-pages-es, pero si vuestro portage no ha sido actualizado todavia, el nombre del paquete seguira siendo manpages-es(Versiones anteriores a la 2005 y 2006).
[editar] Ajuste de la zona horaria
Primero de todo debemos asegurarnos de que la varible del /etc/conf.d/clock tiene el valor local y no UTC.
A continuación, se debe crear un enlace simbólico sobre la variable /etc/localtime. Por lo que el comando a realizar será el siguiente:
# cp /usr/share/zoneinfo/nuestrazona /etc/localtime
Por ejemplo, si vivimos en España, pero no en el archipiélago Canario, nuestra zona horaria será la de Madrid, por lo que el comando sería el siguiente:
# cp /usr/share/zoneinfo/Europe/Madrid /etc/localtime
Para los residentes en las Islas Afortunadas el comando cambiaría:
# cp /usr/share/zoneinfo/Atlantic/Canary /etc/localtime
Nota: en un principio se usaba un link en vez de copiarlo, pero como ha comentado LinuxBlues si tenemos una partición para el /usr, y montamos antes el directorio /etc puede producirse un desfase horario, por lo que, se ha decidido por usar el comand cp en vez de ls.
[editar] Variables USE
Cuando compilamos e instalamos nuestro software, muchas veces debemos de añadir un conjunto de variables USE, para que gcc sepa que queremos soporte para varios lenguajes para la aplicación que estemos compilando. De eso se encarga el USE nls. Para tener soporte de diccionarios-correccion ortográfico debereis de añadir también la variable USE spell.
Por lo que debemos añadir estas variables del USE, nls, spell. Es recomendable agregar la variable LINGUAS="es", ya que esta nos da soporte para un gran número de aplicaciones basadas en KDE o JAVA como k3b, konqueror, openoffice que depende de dicha variable para su instalación en castellano:
| Archivo: /etc/make.conf |
USE="... nls spell" .... LINGUAS="es" |
Nota: en caso de querer usar UTF8 añadir, además, el USE: unicode
[editar] Glibc
Deberemos editar el fichero /etc/locale.gen (/etc/locale.build para el profile 2005.1) y añadir la local que queramos usar (tenéis ejemplos ya escritos). Es recomendable añadir la variable de entorno en inglés para programas que no tengan traducción al castellano.
Profile 2006:
| Archivo: /etc/locale.gen |
es_ES UTF-8 es_ES.UTF-8 UTF-8 es_ES ISO-8859-1 es_ES@euro ISO-8859-15 en_US ISO-8859-1 en_US.UTF-8 UTF-8 |
Profile 1.4 a 2005.1
| Archivo: /etc/locale.gen |
es_ES/UTF-8 es_ES.UTF-8/UTF-8 es_ES/ISO-8859-1 es_ES@euro/ISO-8859-15 en_US/ISO-8859-1 en_US.UTF-8/UTF-8 |
Si es la primera vez que especificamos las locale a Glibc, tendremos que añadirle la USE userlocales y recompilarlo de nuevo:
| Código: añadir el use a /etc/portage/package.use |
echo "sys-libs/glibc userlocales" >> /etc/portage/package.use |
# emerge glibc
En cambio, si sólo hemos cambiado las locale, y ya teníamos compilado Glibc con userlocales, no es preciso recompilarlo, simplemente ejecutar locale-gen y se recompilarán las nuevas locale.
# locale-gen
En nuestro caso deberíamos de ver algo como lo siguiente:
| Código: Ejemplo de salida de locale-gen |
# locale-gen * Generating 6 locales (this might take a while) with 1 jobs * (1/6) Generating es_ES.ISO-8859-1 ... [ ok ] * (2/6) Generating es_ES.ISO-8859-15@euro ... [ ok ] * (3/6) Generating es_ES.UTF-8 ... [ ok ] * (4/6) Generating es_ES.UTF-8 ... [ ok ] * (5/6) Generating en_US.ISO-8859-1 ... [ ok ] * (6/6) Generating en_US.UTF-8 ... [ ok ] * Generation complete |
Un consejo para asegurarse si tenemos el glibc ha sido compilado con soporte de las variables puestas en locale.gen seria poner:
$ locale -a
[editar] Específicos del paquete
Existen programas que requieren especificar una variable en concreto o una opción para permetir instalar ese software en castellano.
- KDE, KOffice, K3b
Debemos emerger el paquete de nuestra aplicación KDE terminado en -i18n, con la variable LINGUAS con valor 'es' en el fichero make.conf tal como hemos especificado anteriormente:
# LINGUAS="es" emerge kde-i18n # LINGUAS="es" emerge koffice-i18n
+ En caso de no tener puesto la variables LINGUAS en el fichero /etc/make.conf.
- Mozilla y Mozilla Firefox
El ebuild actual ya permite descargarse el xpi de nuestro idioma automáticamente, para ello deberemos de instalar el programa con el valor LINGUAS="es":
# LINGUAS="es" emerge mozilla-firefox
+ En caso de no tener puesto la variables LINGUAS en el fichero /etc/make.conf.
Después podemos instalar un plugin que nos ayudará a seleccionar fácilmente el idioma:
http://benjamin.smedbergs.us/switch-locales/
Reiniciamos el navegador y en Herramientas -> Idiomas seleccionamos Español(españa).
- OpenOffice
Debemos pasarle nuevamente la variable LINGUAS con valor "es":
# LINGUAS="es" emerge openoffice
+ En caso de no tener puesto la variables LINGUAS en el fichero /etc/make.conf.
Macro para tener el diccionario en castellano con openoffice:
http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries/dicooo/DicOOo.sxw
Tenéis más plugins relacionados con la lengua castellana aquí:
Nota: para versiones inferiores a la 1.1.4 debemos de usar la variable LANGUAGE=34.
- Diccionarios:
# emerge aspell-es # emerge ispell-es
- GDM
Existe un pequeño problema por el cual, pese a que cambiemos el idioma al gdm, este no lo cambia. Por lo tanto la solucion es editar el fichero /etc/X11/startDM.sh y debajo de la linea source /etc/profile añadir esta nueva linea:
export LANG=es_ES
Nota: error solucionado actualmente, solo usar en caso de encontraros con el problema.
- Xchat
- Para menú en castellano: debemos de tener el xchat compilado con el USE nls, tener las locales correctamente, a si como el glibc compilado con las variables de /etc/locale.gen, tal como explicamos en el documento con anterioridad.
En la versión 2.6.2 no esta traducida, se rumorea que la traducción del xchat al castellano tiene un pequeño retraso.
- Para escritura:
Debemos seleccionar una fuente correcta que soporte la ñ, €, acentos, etc.
Una vez realizado esto nos cercioraremos de que está seleccionado el conjunto de caracteres correcto. En el menú "X-Chat -> Server List...", al añadir o usar un servidor, lo seleccionamos y le damos a "Edit...".
Acto seguido nos saldrá un nuevo menú de configuración (del servidor IRC). En el último campo que pone "Juego de caracteres" o "Character set" seleccionaremos ISO-8859-15 (Western Europe) si deseamos tener soporte ISO-8859-15 para el servidor seleccionado(por ejemplo si vamos a estar en un servidor que tenga un gran numero de usuarios con windows -> mirc), en cambio si estamos en un servidor con usuarios de distintas lenguas seguramente nos interesa mas seleccionar UTF-8.
[editar] Configuracion de las X
Para configurar las X con teclado castellano deberemos de introducir primero las fuentes que acepten los caracteres como acentos y la eñe.
Para ello debemos tener como mínimo estas fuentes:
| Archivo: /etc/X11/xorg.conf o /etc/X11/XF86Config.conf |
...
Section "Files"
FontPath "/usr/X11R6/lib/X11/fonts/local/" # En algunos casos es problemática
FontPath "/usr/X11R6/lib/X11/fonts/misc/"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/Type1/"
FontPath "/usr/X11R6/lib/X11/fonts/TTF/"
FontPath "/usr/X11R6/lib/X11/fonts/CID/"
FontPath "/usr/X11R6/lib/X11/fonts/Speedo/"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/"
EndSection
...
|
Luego configuraremos el teclado para castellano. La configuración varía dependiendo de si usamos xfree o xorg versión 6.8 o superior.
Xorg 6.8 (o superior):
| Archivo: /etc/X11/xorg.conf |
...
Section "InputDevice"
Identifier "Keyboard1"
Driver "kbd"
Option "AutoRepeat" "500 30"
Option "XkbModel" "pc105"
Option "XkbLayout" "es"
EndSection
...
|
Xfree y Xorg 6.7 (o inferior):
| Archivo: /etc/X11/xorg.conf o /etc/X11/XF86Config.conf |
...
Section "InputDevice"
Identifier "Keyboard1"
Driver "Keyboard"
Option "AutoRepeat" "500 30"
Option "XkbModel" "pc105"
Option "XkbLayout" "es"
EndSection
...
|
Nota: si nuestra versión de xorg es la 7, deberemos de usar la configuracion de Xorg 6.8(o superior) y añadir al fichero /etc/make.conf la variable: INPUT_DEVICES="evdev keyboard mouse", ademas de añadir la variable VIDEO_CARDS con el respectivo valor de nuestra tarjeta grafica, por ejemplo para nvidia seria VIDEO_CARDS="nvidia fbded nv none".
[editar] Añadir simbolo euro
Para añadir el simbolo del euro deberemos modificar el fichero fonts.alias(dependiendo de nuestra version Xorg estara en distintos directorios) y modificar la variable fixed y variable de iso8859-1 a iso8859-15, tal como se muestra acontinuación:
Xorg version 6:
| Archivo: /usr/X11R6/lib/X11/fonts/misc/fonts.alias |
fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-15 variable -*-helvetica-bold-r-normal-*-*-120-*-*-*-*-iso8859-15 ... |
Xorg version 7:
| Archivo: /usr/share/fonts/misc/fonts.alias |
fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-15 variable -*-helvetica-bold-r-normal-*-*-120-*-*-*-*-iso8859-15 ... |
[editar] Información adicional
Podéis encontrar mas información aquí:
http://forums.gentoo.org/search.php
http://www.gentoo.org/doc/es/guide-localization.xml
[editar] Comentarios finales
Si aún habiendo seguido la guia no encontrais solución al problema, y posteriormente lo solucionais, por favor manden un mensage privado a G0sU en los foros de www.gentoo.org o un correo a jomoga@alumni.uv.es, informando del problema que tenia y como lo ha solucionado, de esta forma podremos mejorar el manual, para poder ayudar a mas gente con su mismo problema.
