miércoles, 30 de septiembre de 2009

Recomendación epistemomaniática: Slackware 13.0

Luego de un pequeño lapso de ausencia por exámenes y alguna otra situación que me mantuvo alejado de mis blogs, vuelvo con un pequeño resumen acerca de la última versión de la distribución GNU/Linux Slackware.

El pasado 27 de agosto vio la luz la tan esperada versión 13.0 de Slackware, la más antigua de las distribuciones de GNU/Linux que se mantiene aún en vigencia.
La primera versión de Slackware (1.0) se publicó en julio de 1993 y estaba basada en la distribución SLS Linux.

Slackware es un potente y avanzado sistema GNU/Linux, altamente estable y configurable, y con una baja tasa de cambios en su estructura de archivos y directorios entre versión y versión. Esto lo hace muy confiable, más que nada tomando en cuenta que, aunque trae algún que otro asistente de configuracion, la mayor parte de las personalizaciones que se hagan deben hacerse a mano, editando los archivos de configuración.

Logo de Slackware
Slackware no pertenece a la gama de distribuciones linux en las que encontramos las últimas versiones de cualquier software: su creador, Patrick Volkerding, prefiere sacrificar esto en beneficio de asegurarse que las versiones de los programas en Slackware sean altamente estables y confiables. Es por eso que recién en esta última versión, la 13.0, aparece la serie 4 del entorno de escritorio KDE (KDE 4.2.4), además del otro gran cambio: se inicia oficialmente una rama paralela de Slackware para arquitecturas de 64 bits.

Para los amantes de GTK, Slackware 13.0 incluye además la versión 4.6.1 de XFCE como entorno de escritorio alternativo y para los old-school trae WindowMaker, Fluxbox, Blackbox, fvwm y twm, al igual que lo hace desde hace ya varios años.

También aparece, como cambio importante a mencionar, un nuevo formato de paquetes: el txz, el cual propone una mejor compresión que su antecesor oficial, el tgz. Cabe destacar, además, que Slacware soporta el uso de paquetes rpm.

Además de los repositorios oficiales existen algunos sitios como Slacky.eu, en los que se pueden encontrar paquetes no oficiales y se indica las dependencias de cada uno, las cuales se pueden encontrar en el mismo sitio.

En lo personal estoy muy encariñado con esta distribución, ya que soy usuario de Slackware desde el año 2003, a partir de su versión 8.1 y este último mes, cuando el trabajo y la universidad me lo permitían, estuve haciendo algunas pruebas con mi nuevo juguete: el Slackware 13.0 de 64 bits.
Así que continuación detallaré algunos puntos acerca de mi experiencia con esta nueva versión, además de la experiencia que tuve utilizando por primera vez un sistema operativo de 64 bits.

El sistema se instaló en:
Intel Core 2 Duo E6550 (2 x 2.33)
2 GB RAM. DDR2 667
Nvidia GeForce 8500GT. 256 Mb
Disco de 160 Gb con 4 particiones: 2 ext4 y 2 NTFS


Patrick Volkerding, el creador de Slackware

Sistema:

El sistema, como siempre, es altamente estable. Muy potente, liviano y con pocos cambios en su estructura. Los archivos de configuración se mantienen siempre en el lugar y casi no hay que hacer cambios en los archivos de configuración para esta nueva versión. Noté que falta el asistente xorgconfig, con el cual se configuraba en modo texto y con un gran nivel de detalle el servidor X, en cambio se puede usar su versión alterativa xorgsetup. Ningún problema a la hora de detectar el hardware, todo funcionó sin problemas. Los asistentes fueron de gran ayuda en esta etapa.

El único detalle negativo que le encontré: ntfs-3g no soporta mi locale al montar las particiones. Como me encuentro en Uruguay y hablo castellano, tengo configurado mi locale como es_UY y hasta la versión 12.2, en fstab tenía estas opciones para montar las particiones ntfs:
umask=000,locale=es_UY
Esto lograba que ntfs-3g mostrara los caracteres de los nombres de archivos en mi locale pero no funciona en la versión 13.0.
Hice muchos intentos y lo que más cerca estuvo de ayudarme fue configurar lilo diciéndole que pase un append al kernel para que la consola soportara utf8 por defecto. Luego cambié mi locale por es_UY.utf8 y veía bien los nombres de archivos de ntfs, pero mal el resto de los nombres de archivo. Incluso algunos caracteres de los programas de consola, como mc, también se veían mal.

Asistentes:

Configuración de red: netconfig.
Configuración del sonido: alsaconf.
Configuración del servidor X: xorgsetup
Configuración del ratón en modo texto: mouseconfig.
Configuración de la zona horaria: timeconfig.
Muchos de ellos se ejecutan durante la instalación, pero otros debemos correrlos a manos luego de la instalación o, como en el caso de netconfig, yo prefiero saltarme su configuración durante la instalación y correrlo a mano luego de que el sistema inició y detectó la tarjeta de red.

Modo gráfico:

KDE4 es visualmente espectacular. Aunque es muy personalizable, a mi parecer es mejor adaptarse a su nueva forma de trabajo, en el estilo "todo a un clic". Su entorno es muy llamativo, visualmente atractivo y trae su propio gestor de composite, evitando el tener que instalar compiz-fusion aparte.
Pero, más allá de todas esas ventajas, me resultó en extremo pesado. En muchas ocasiones colgó el servidor X, incluso logró que colapsara todo el sistema en varias oportunidades. Cualquier operación sencilla (copiar archivos de un lugar a otro, por ejemplo) le toma más tiempo del esperado. Amarok, que era un excelente reproductor y administrador de la colección de música hasta la versión 3, funciona bastante mal y hay que cerrarlo y volverlo a abrir en varias ocasiones para que reprodujera la música o para que pasara automáticamente a la siguiente pista. Su herramienta de organizar los archivos de música es más efectivo colgando la máquina que organizando los archivos, por lo que terminé escribiendo un script que hiciera eso.
El panel y el sistema de ventanas tiende a colgarse bastante seguido también, aunque la mayor parte de las ocasiones se vuelve a levantar automáticamente y sin demorar mucho.
Por otro lado XFCE (el que estoy usando en estos momentos), es muy extensible a través de los plugins que se pueden descargar desde su sitio de goodies. Además de que es también muy atractivo visualmente aunque, si te gusta el composite, deberás instalarte compiz-fusion, que se integra perfectamente con entornos GTK.

Multimedia:

Sin repetir lo ya hablado de Amarok, la versión 13.0 de Slackware dio un gran paso en lo que a multimedia se refiere y trae incluídos unos cuantos reproductores de vídeo y música:
- Dragon Player
- XMMS
- Audacious
- Xine
- MPlayer
Más que nada por el tiempo que llevo usándolo, mi camiseta es de los colores de Xine, pero en esta versión no he logrado que me levante los subs en formato .srt de ninguna peli, así que estoy usando mplayer que anda perfecto. Para la música, xmms o audacious, a cuál de los dos está mejor.
También trae, para diseñadores, la versión 2.6.6 de Gimp.

Desarrollo:

En esta versión de Slackware se incluyen:
- gcc 4.3.3 (con sus variantes fortran, objc, g++, etc)
- Perl 5.10.0
- Python 2.6.2
- PHP 5.2.10
- ruby 1.8.7
- MySQL 5.0.84
- SQLite 3.6.14.2

Redes:

- Apache httpd 2.2.13
- DHCPD 3.2.3
- Bind 9.4.3
- DNSmasq 2.4.9

Disponibilidad de software:

Para la versión de 32 bits, recomiendo no quemarse mucho la cabeza y entrar a http://slacky.eu, en la que se pueden encontrar cientos de paquetes no oficiales.
Te preguntarás por qué digo que esto es para la versión de 32 bits. Bueno, debo admitir que me llevé una gran sorpresa al descubrir que en http://slacky.eu no hay paquetes para la rama de 64 bits, así que antes que estar buscando otros repositorios no oficiales volví a los viejos tiempos de compílelo usted mismo. Dejo, entonces, una pequeña guía para la gente que no está acostumbrada a compilar su software y desean usar Slackware64.

Guía para compilar programas en Slackware64:

Antes que nada, esta guía es para instalar los programas bajo /usr. Si deseas instalar tus programas bajo /usr/local deberás configurar los directorios lib para que acepte el /usr/local/lib64 como un directorio de bibliotecas confiable.
Como Slackware64 soporta el uso de bibliotecas y programas de 32 bits, es conveniente mantener separado el software de 32 bits y el de 64. Es por eso que te encontrarás que hay dos directorios de bibliotecas: /usr/lib y /usr/lib64.
Para instalar programas de 64 bits en /usr/local deberás crear el directorio /usr/local/lib64 y agregarlo a /etc/ld.so.conf para que el linker busque ahí.

Tux con pipa, la mascota de Slackware
Ahora sí, la guía:

Cuando descargues el fuente de algún programa o librería, lo descomprimes y desde la vieja y querida consola debes entrar al directorio donde quedó el fuente ejecutas:


[propsycho@localhost:/home/propsycho/software/xarchiver-0.5.2/]$ ./configure --prefix=/usr --libdir=/usr/lib64


puedes además agregar cualquier opción de configuración propia del script configure del programa que estás compilando.
Luego de esto, si salió todo bien y no tienes ninguna dependencia que instalar ejecutas el make para que comience a compilarse el software:


[propsycho@localhost:/home/propsycho/software/xarchiver-0.5.2/]$ make


dependiendo del programa que quieras instalar esto puede llevarte mucho o poco tiempo.
Cuando el proceso de compilado de programa terminó, debes instalar el software en algún directorio que tu quieras y al que tengas acceso de escritura:


[propsycho@localhost:/home/propsycho/software/xarchiver-0.5.2/]$ make install DESTDIR=/home/propsycho/compiled/xarchiver-0.5.2


cuando el proceso de instalación termina vas al directorio donde el software quedó instalado e inicias sesión como superusuario:


[propsycho@localhost:/home/propsycho/software/xarchiver-0.5.2/]$ cd /home/propsycho/compiled/xarchiver-0.5.2
[propsycho@localhost:/home/propsycho/compiled/xarchiver-0.5.2/]$ su


y escribes la contraseña de root. Lo primero que debes hacer es cambiar el usuario y grupo de todos los archivos, esto se supone que se debería hacer automáticamente al crear el paquete pero por algún motivo no sucede, así que hay que hacerlo a mano:


[root@localhost:/home/propsycho/compiled/xarchiver-0.5.2/]$ chown -R root:root *


y ahora sí, a crear el paquete:


[root@localhost:/home/propsycho/compiled/xarchiver-0.5.2/]$ makepkg /tmp/xarchiver-0.5.2-x86_64-1.txz


esa es la nomenclatura estándar para los paquetes de Slackware: nombreprograma-version-arquitectura-numeroPaquete.tipoPaquete, en lo personal yo remplazo la forma de escribir la arquitectura (x86_64) por x64 para identificar cuáles son los paquetes compilados por mí y cuáles son los oficiales.
Cuando el paquete termina de crearse lo puedes instalar mediante el gestor de paquetes de Slackware con este comando:


[root@localhost:/home/propsycho/compiled/xarchiver-0.5.2/]$ installpkg /tmp/xarchiver-0.5.2-x86_64-1.txz


si deseas ser precavido y evitar instalar dos versiones del mismo paquete, puedes remplazar el comando anterior por este:


[root@localhost:/home/propsycho/compiled/xarchiver-0.5.2/]$ upgradepkg --install-new /tmp/xarchiver-0.5.2-x86_64-1.txz

esto actualiza un paquete existente y, si no existe, lo instala.

Con esta guía podrás instalar cualquier programa en Slackware64, en ocasiones te pueden complicar las dependencias, pero no es más que descargarlas, compilarlas e instalarlas previamente.

En resumen:
  • Slackware mantiene su estabilidad, su potencia y su estructura de directorios.
  • El entorno gráfico KDE4 es demasiado pesado, pero la alternativa XFCE es bienvenida.
  • Para la versión de 64 bits se debe compilar el software a mano.
  • Varias posibilidades entre las que elegir en programas multimedia.


Detalles básicos de Slackware 13.0:

Kernel: 2.6.29.6
glibc: 2.9
gcc: 4.3.3
KDE: 4.2.4
XFCE: 4.6.1

Links:

- Sitio oficial de Slackware
- Artículo de Slackware en Wikipedia

Epistemomaniáticos ©Template Blogger Green by Dicas Blogger.

TOPO