Category Archives: Arch Linux

Gnuffy: Arch Linux sin estructuras jerárquicas

En el último artículo mencioné a Gnuffy como uno de los proyectos basados en Arch Linux que me habían parecido interesantes o destacables por algún motivo. La semana pasada estuve haciendo una instalación de esta nueva distribución y puedo asegurar que lo que en ella ví me gustó bastante, y es por eso que he querido escribir algo al respecto. Pero antes que nada hablemos un poco de Gnuffy y sus diferencias con su madre Arch Linux.

Arch Linux es una distribución que se soporta gracias a su propia comunidad, no hay ninguna empresa ni fundación detrás de ella. Pero aún así tiene ciertas estructuras jerárquicas que se siguen para el mantenimiento de los repositorios y el desarrollo de los programas de los cuales Arch depende. Si nos imaginamos esto como la típica pirámide, arriba del todo está el líder del proyecto. La historia de Gnuffy es la del intento de crear algo que funcione sin esta estructura, con la comunidad como base absoluta, para entender el concepto hablaré primero del funcionamiento interno de Arch, para describir luego el funcionamiento de Gnuffy.

En Arch Linux no hay ningún sistema democrático para elegir al “presidente” ni nada por el estilo como pasa en Debian, simplemente Judd Vinet creó esta distribución hace años y se formó una comunidad a su alrededor, pero cuando no pudo seguir con el proyeco le pasó los mandos a Aaron Griffin, miembro activo de la comunidad dispuesto a asumir el papel.

Esta persona es quien posee el Copyright de la distribución y quén tiene la última palabra sobre el rumbo que esta toma. Pero no está sola, pues pertenece a un grupo mayor de desarrolladores, entre 30 y 40, que són quienes mantienen los repositorios [core] y [extra], así como el gestor de paquetes pacman, el CD/USB de instalación, los initscripts, el gestor de conexiones netcfg, el sistema abs, la página web, etc.

Y entonces quién mantiene el repositorio [community]? Pues los TU o Trusted Users, personas activas en la comunidad de Arch Linux que han demostrado previamente en AUR que son buenos creando y manteniendo los PKGBUILDS necesarios para crear paquetes de software para esta distribución. En estos momentos hay unos 30 TUs.

Pero la verdadera comunidad de Arch Linux está en AUR, el lugar donde cualquiera puede colgar sus PKGBUILDS hechos en casa y donde cualquiera puede descargarlos. Resumiendo, la jerarquía en la comunidad de Arch se basa en la calidad y la confianza: si eres bueno participando en AUR puedes llegar a ser TU y mantener paquetes en [community]; si destacas como TU eres un buen candidato a desarrollador, etc.

Por lo que yo sé, no hay más estructuras que estas, pero aquí la gente de Gnuffy plantea un paso más: eliminar todo esto completamente y construir una distribución basada en Arch Linux y que no necesite nada de esto, donde todos podamos subir paquetes o PKGBUILDS y que cualquier usuario pueda usarlos sin el paso previo de AUR, pues nuestro gestor de paquetes (que ya no es pacman sinó spaceman) tiene acceso a todo lo que la comunidad hace sin importar si eres un novato o un experto mantenedor del paquete del kernel.

En Gnuffy no podemos activar y desactivar repositorios de software porque no hace falta. Si intentamos instalar un paquete con spaceman, este nos muestra una lista de los repositorios que lo tienen disponible, en esta lista puede estar [arch-core] como puede estar [aur], [my_new_repo], etc. Si tú acabas de crear un repositorio (no importa si es de paquetes precompilados o de PKGBUILDS) yo tengo acceso a él, si tú has creado un paquete que necesito tengo la opción de usar tu repositorio. No hay más, pues el sistema está completamente centralizado.

Como véis, Gnuffy puede usar los repositorios oficiales de Arch Linux y, por lo tanto, puedes obtener un sistema casi igual a Arch Linux, pero deja puertas abiertas donde Arch las deja cerradas.

Pero ¿cómo podemos saber si un repositorio es confiable? Pues porqué spaceman posee algo de lo que pacman carece: soporte para firmar los paquetes, o sea seguridad. Es por esto que spaceman depende de gpg. Cuando spaceman nos dá a elegir entre diversos repositorios para descargar el paquete que le hemos pedido, éste nos avisa de la firma y hace la comprobación. Además podemos configurar spaceman para que confíe en ciertos repositorios y desconfíe de otros. La idea principal es que confiemos como mímnimo en los repositorios [arch-core], [arch-extra] y [arch-community] aunque vengan sin firmar (a ver si esto mejora en el futuro), también en los repositorios de los desarroladores de Gnuffy y spaceman como [blackpenguin] y otros. Ante cualquier duda spaceman nos pregunta si queremos confiar o desconfiar de un repositorio a partir de ese momento.

Gnuffy no tiene instalador, pero si queréis podéis crear un sistema usable a partir de un LiveCD si descargáis spaceman y seguís las instrucciones de la wiki del proyecto (evidentemente hace falta una partición libre en el disco para hacerlo de este modo). O podéis usar el script Arch2Gnuffy, que “convierte” vuestro sistema Arch Linux en un sistema Gnuffy con spaceman. Yo no he pobado este script, usé GRML como LiveCD para la instalación.

Personalmente lo que he hecho es sólo trastear un par de horas, no le hecho ningún análisis serio y profundo, pero puedo asegurar que me ha gustado lo que he visto de momento. La interfície tipo ncurses que posee spaceman és muy agradable de usar, ¡te vienen unas ganas tremendas de instalar de todo! Le seguiré la pista a esta nueva distribución, a ver si va mejorando y su comunidad crece y se complementa con la de Arch Linux.

Arch Linux como base

Los que seguís este humilde blog desde hace tiempo sabéis que soy usuario convencido de Arch Linux desde hace casi tres años. Aquí he hablado un montón de veces sobre las características que hacen de Arch una distribución única y extremadamente adaptable a casi cualquier ámbito.

En este artículo no voy a tratar temas técnicos, más bien intenta ser un análisis sobre el estado de Arch Linux y, más concretamente, voy a plantear una pregunta que llevo demasiado tiempo haciéndome: Partiendo de la idea de que Arch Linux és adaptable, modular, estable, siempre actualizada, posee una comunidad envidiable… ¿porqué no hay más y mejores proyectos basados en Arch Linux?

En estos tres años he visto nacer grandes proyectos que usaban Arch como base, quizás los más destacables sean KDEMod (un repositorio no oficial de KDE que es usado por un gran porcentaje de usuarios de Arch Linux), larch (un sistema para crear un LiveCD/USB a medida – usado por distribuciones como FaunOS), el nuevo proyecto Chakra (LiveCD/instalador de Arch basado en KDEMod 4), y recientemente Gnuffy (distribución enfocada a comunidad, sin estructuras jerárquicas en su modelo de desarrollo y en la creación de repositorios).

Podría haber mencionado otros proyectos basados en la que muchos consideramos la distribución GNU/Linux perfecta, como por ejemplo LiveCDs especializados en un tema concreto (juegos, multimedia), repositorios de software adicionales mantenidos por la comunidad (con paquetes de audio, versiones de desarrollo, etc)  y cosas por el estilo. Pero en primer lugar, esto lo tienen todas las distribuciones madre, y en segundo, me parece que los ejemplos que he puesto arriba son todos buenos y únicos.

Algunos se preguntarán: si tan perfecta es Arch… ¿para qué quieres proyectos derivados o basados en ella? Este tipo de respuestas normalmente viene dado por gente que no se ha planteado a fondo lo que és el software libre y lo que significa a nivel práctico.

Cuando Canocical publicó su primera versión de Ubuntu en 2004, esta no sólo estaba basada en Debian como ahora, sinó que no se desviaba excesivamente de esta primera. Ha sido con el tiempo que Ubuntu ha ido creándose una reputación y ha conseguido una personalidad propia. Debian, su distribución madre, es simplemente la que le proporciona las herramientas para su funcionamiento y el origen de los paquetes, que no es poco. Pero al fin y al cabo són cosas que al usuario final le importan una mierda, y es normal. Y lo más importante a tener en cuenta es que si Canonical se decantó por Debian no fué sólo por su contrato social ni por motivos técnicos. Fué además porque había una base de gente que usaba Debian y que estaba preparada técnicamente para ayudar al novato, el usuario potencial de Ubuntu en ese momento.

Lo que Debian és a Ubuntu no es nada malo, es estupendo. Y no quita importancia al proyecto Debian en sí mismo ni lo hace peor ni mejor que Ubuntu. Ésta es la base del software libre, y el que no lo vea así es porque simplemente no le importa lo más mínimo si el software que usa es libre o no lo és.

Como usuario de Arch Linux tengo dos cosas muy claras: la primera es que esta distribución no está pensada para un usuario doméstico sin conocimientos de GNU/Linux y que no sepa moverse con fluidez por una línea de comandos; pero la segunda es que, técnicamente hablando, Arch Linux puede ser tomada como base (usando o no sus mismos repositorios de paquetes) para crear distribuciones fáciles de instalar, configurar y usar, y éstas poseerán todas sus ventajas de bajo nivel: rolling release, optimización para procesadores i686/x86_64, y lo mejor de todo: unas entrañas simples y claras (keep it simple stupid). El tiempo dirá si esta magnífica distribución puede ser tomada como base para algo grande o estará destinada a seguir siendo una herramienta para geeks.

Arch Linux 2008.06 Overlord

Después de casi 9 meses de la última revisión de la versión Don’t Panic, hoy sale definitivamente esta nueva snapshot de mi distribución GNU/Linux favorita… Arch Linux. Esta nueva versión es la 2008.06 Overlord y puede descargarse desde aquí.

Logo Arch Linux

Aprovecho para recordar que en realidad la noticia no es nada interesante para los que ya usamos Arch Linux, porque como ya comenté en otro artículo esta distribución no tiene ciclo de versiones como la gran mayoría de distribuciones, sinó que hay una sola rama que el usuario va actualizando de vez en cuando (diariamente, semanalmente, da igual), a esto se le llama rolling release. Con lo cual lo que aquí anuncio es simplemente la nueva ISO para instalar la snapshot de cómo es Arch Linux hoy. Seguidamente usamos el comando pacman -Syu para dejar atrás la release y sincronizar con current. En otras palabras, sólo existe la rama current, aunque no exista como tal. Todos los usuarios de Arch tenemos el sistema actualizado al dia, no importa si nos lo hemos instalado hoy mismo o 3 años atrás mientras lo hayamos ido actualizando. Esto evita las arriesgadas actualizaciones entre distintas ramas de una distribución cuando pasan meses entre versión y versión. Y también nos beneficia para poder usar los programas poco después de su salida, sin tener que esperar a que se incluyan en la siguiente versión de nuestra distribución.

¿Cada cuándo sale una ISO para instalar Arch Linux? La idea era que dependía de las versiones del kernel Linux (a nueva rama del kernel, nueva iso de Arch), aunque esta vez han tardado mucho más y el kernel que se incluye es el 2.6.25.6, saltándose así las ramas x.23 y x.24, aunque han salido ISOs no oficiales para estas. Evidentemente el kernel se va actualizando con sus correcciones dentro de la rama correspondiente.

¿Qué significan entonces los números de versión? Antes se usaba una numeración incremental típica, pero ahora se usa ésta que es más descriptiva: el primer número corresponde al año de salida y el segundo al mes. En este caso significa Junio de 2008, otras distribuciones usan sistemas muy similares.

¿Y… qué hay de nuevo? Lo de siempre, pero más actualizado, se estrena nuevo logotipo para la distribución, se incluye el kernel 2.6.25, ahora el CD de instalación es un live Arch Linux, se añade imagen para usar discos USB como instalador, etc. Y otras cosas que ya estaban pero que no está de más recordar, como una buena autodetección de hardware, soporte para RAID, LVM2 y sistemas de ficheros cifrados desde la raiz del sistema… y lo típico que podemos encontrar en cualquier distribución, pero actualizado hasta puntos sorprendentes.

¿Cómo funcionará Arch Linux en mi hardware? Arch está optimizada para máquinas i686 (Pentium II o posterior) y x86_64 (AMD64, Core 2 Duo, etc), lo cual significa que la hace mucho más rápida que otras distribuciones optimizadas para i386, i486, etc (que son la mayoría). También hay ports no oficiales para i586 y PowerPC (antiguos Apple).

¿Cuál és la filosofía de Arch? Básicamente… que las cosas sean simples (recordemos que simple no significa fácil), el conocido KISS (Keep It Simple Stupid) es el pilar que sostiene cualquier detalle en Arch Linux. Los paquetes que se distribuyen en Arch Linux, generalmente no se parchean demasiado si no es muy necesario.

¿A qué perfil de usuario está destinada esta distribución? Cualquiera con ganas de aprender y sin miedo a usar la línea de comandos para configurar cualquier cosa, ya que Arch Linux no incluye ningún tipo de interfaz gráfica para configurar el sistema, ni siquiera interfaz gráfica de texto (TUI). Esto es verdad excepto en el instalador, que tiene un menú de interfaz de texto, el típico instalador ncurses cómo en *BSD, Slackware, etc. De todas formas al terminar la instalación se nos va a pedir que editemos a mano (usando vim o nano) los ficheros de configuración del sistema. El instalador no habrá configurado nada (sólo instala el sistema base y el cargador de arranque), por lo que hay que saber un poco lo que se está haciendo en el momento de editar los ficheros. Arch incluye un sistema de instalación de paquetes llamado pacman que es parecido al apt-get de Debian y otros similares, pero también incluye el sistema ABS (Arch Build System) para compilar los paquetes y la base del sistema (y/o modificarlos a nuestro gusto sin demasiada dificultad, así como crear paquetes propios de una forma muy simple). Esto puede sonar parecido a los ports de *BSD y al portage de Gentoo. Por lo tanto, los usuarios que se pueden sentir cómodos con Arch Linux són los mismos que se han sentido cómodos usando Gentoo, Slackware, Debian o algún *BSD.

¿Voy a encontrar ayuda en la comunidad ante mis dudas de principiante inútil? ¡Por supuesto! Aunque pueda parecer que no hay una gran comunidad de usuarios, debido básicamente a que Arch Linux no es una distribución de las más conocidas, lo cierto es que sorprende lo fácil que es encontrar ayuda cuando quieres aprender a usar algo, o cuando las cosas van mal. Tienes a tu disposición un wiki, la guia de instalación, foros (inglés y español), listas de correo, canales en irc.freenode.net, etc.

¿Tienes curiosidad? Estos enlaces pueden ser de tu interés:

Bugs

BUGS

Bugs? You must be kidding, there are no bugs in this software. But if we happen to be wrong, send us an email with as much detail as possible to <pacman-dev@archlinux.org>.

$ man pacman

Arch Linux 0.8 Voodoo y otras noticias relacionadas

Arch LinuxEs un poco estúpido anunciar una nueva release de Arch Linux, ya que los usuarios de Arch usamos todos current en cada actualización, incluso después de instalar via CD o FTP. Aún así en, este caso, el instalador trae muchas novedades como soporte para SSH e incluso poder instalar paquetes con pacman mientras configuramos nuestro inminente sistema.

No sé qué puedo decir de Arch que no se haya dicho antes, en mi opinión y habiendo probado otras distribuciones del mismo estilo como Slackware, Debian o Gentoo, sigo pensando que Arch me ofrece mucho más. Nunca me cansaré de recomendarla a todo el mundo, y ahora que cada vez me adentro más al mundo de los *BSDs… empiezo a pensar que Arch es uno de los pocos motivos que me empujan a seguir usando Linux.

Como anéctoda, esta versión 0.8 Voodoo és la última que usa un sistema numérico de ciclo de versiones. Al fin y al cabo Arch no tiene versiones sino snapshots, y numerar/nombrar una snapshot no tiene ningún sentido. Por este motivo Judd Vinet nos anuncia hoy el nuevo sistema de enumeración: un timestamp tipo YYYYMM, año y mes. Por ejemplo la versión 0.8 se hubiera llamado Arch 200704 ISO ya que el nombre sólo afecta a la ISO del instalador. La gracia está en que habrá una ISO por cada nueva rama de Kernel. Con el próximo kernel 2.6.22 tendremos nueva ISO.

Como anéctoda, quiero comentar las 2 mentiras que nos colaron en la web de Arch Linux el 1 de Abril (April Fool’s Day, una especie de Dia de los Inocentes para los anglosajones).

La primera fué que, como se considerava 0.8 Voodoo como release, se anunció un nuevo nombre para current, y este fué 1.0 Duke Forever, haciendo alusión al videojuego Duke Nukem Forever, que este mes pasado celebraba su décimo año en desarrollo y que nadie sabe si va a salir algun dia al mercado. Judd Vinet anuncia hoy la cancelación de la versión 1.0 debido al cambio de sistema de ciclo de versiones.

La segunda fué mucho más espectacular, el anuncio de que, debido a la confusión de que haya una distribución llamada Arch Linux y otra llamada Ark Linux, Arch pasaría a llamarse Ark. La gracia estuvo en la coordinación con la gente de Ark, que anunció justo lo contrario en su web, de esa forma Ark Linux pasaría a llamarse Arch Linux para no confundir a los usuarios. Incluso intercambiaron sus logos en las cabeceras de sus webs.

Capturas de pantalla del April Fool’s Day: