4 de abril de 2016

FreeBSD y Dvorak, 3 años 10 meses


Hace muchísimo tiempo, casi 4 años,  utilizaba FreeBSD 8.0-RELEASE como desktop. Lo utilizaba con KDE y con ports en un ordenador de mesa con un AMD Athlon doble núcleo x64 6000. 3Ghz/núcleo, una placa ASUS qué francamente no recuerdo el modelo, con 4GB de RAM y una NVIDIA que también desconozco el modelo.

Para aquellos que desconozcan FreeBSD. 

Beastie, el nombre de la mascota BSD.
FreeBSD llega siendo otro sistema operativo que se basa en otro SO llamado BSD. Más concretamente la versión 4.4 Lite. FreeBSD tiene sus comicios el 1 de Noviembre de 1993, tal y como se recoge en esta nota de liberación. Está orientado más bien al lado del servidor, pero que, haciendo algunos retoques, se puede llegar a utilizar como SO de día a día.

Este SO posee 3 ramas de desarrollo de la que constan "RELEASE" utilizada en equipos de producción, "STABLE" una versión más estabilizada que "CURRENT" que es la siguiente versión que sacaría el proyecto FreeBSD. Y está compuesto por un grupo de personas llamadas committers que pueden aprobar mejoras o atribuciones, y por último, el core-team que son los directores del proyecto y se encargan de hacer llegar a buen puerto el camino del SO en sí.

Volviendo a BSD, Este es un SO mucho más viejo, proviene de una larga historia entre los laboratorios Bell de AT&T y los estudiantes de la universidad de Berkeley en California en los años 70's. BSD tiene bastante historia sobre todo en el terreno legal cuando AT&T comenzó a apretarle las tuercas a Berkley cuando le comenzó a estirpar la libertad de la que disfrutaban en aquel entonces. Porque BSD salió de una copia de UNIX que fue cedida por  los laboratorios Bell de AT&T mediante una licencia que permitía su uso y adaptación del SO a las necesidades de cada universidad.
En resumen, BSD terminó en 2 versiones. 4.4-Lite que no tenía código fuente propietario de AT&T y 4.4-Encumbered que como dice la Wikipedia.

¿Por qué lo utilizaba?

Bueno, pues como toda persona que le gusta experimentar. Me parecía bastante interesante, probar otro tipo de sistema operativo que no fuese GNU/Linux o Windows. 

Una de las características que me gustaba de FreeBSD, eran los jails o jaulas. Estos eran perfectos. Son entornos chroot con esteroides. Te permitía utilizar un SO completo de FreeBSD sin virtualizar como una especie de Linux Containers, o bien, te permitía ejecutar un servidor web, servidor de base de datos de forma aislada.

También me gustaba tener el SO que yo quería y con las opciones que me gustaba tener, el kernel y sobre todo el world cuando pasaba a 8.1-RELEASE o cambiaba -STABLE, -CURRENT. Esto era gracias a la separación entre kernel y world. Todo el trabajo que lleva detrás por parte de miles de voluntarios que van mejorando el src de este magnífico sistema operativo.

Permitía ejecutar binarios de Linux en FreeBSD de forma casi nativa, solo con un entorno mínimo de compatibilidad adquirible mediante paquetería binaria (en aquel entonces pkg_add) o a través de los ports.

En cuanto a documentación, he de decir que tiene una excelente documentación, una web oficial de documentación constantemente actualizada llamada Handbook, un foro grande de consulta como es FreeBSD forum, las listas de correo, la wiki... 

Fue tal la pasión por la que sentía por el proyecto en aquel entonces,  que además de aportar enviando PR (Problem Report) desde su página Web. Cosa que ya han modernizado, y han puesto un bugtraq. Formé el primer grupo en español del sistema operativo ubicado en España, pero para hispanos (para no discriminar) llamado FreeBSD Spain en el 2011 lanzando un comunicado oficial a la lista de FreeBSD en español el 18 de agosto del 2011.


Desafortunadamente, por diferentes motivos, lo abandoné un poco y con ello el propio SO. Pero más adelante me gustaría volver a retomarlo.

Y por último y finalizando este punto, mencionar la estabilidad que tenía independientemente del ramal que usaras, si era -RELEASE, -STABLE, -CURRENT. Todo andaba a la perfección.

¿Qué son los ports?

En aquel entonces utilizaba csup para descargar o actualizar tanto los ports como el world (ya retirado, por un problema muy grave de seguridad). 

Los ports son un conjunto de directorios y scripts que te permiten instalar el software que quieras ejecutando el comando make install clean dentro del directorio. Los ports, en su mayoría, solicitan mediante una pantalla en ncurses que aceptes una serie de opciones previas a la compilación muestra una pantalla en ncurses.
Una vez marcadas, comienza a compilar el software sin hacer nada más que esperar a que se instale.
Es muy común, que las dependencias del port que vas a instalar, suelen tener opciones para marcar como en su mayoría. Esto quiere decir, que se puede estancar el proceso.

Sin embargo, esto puede remediarse haciendo uso del comando make config-recursive. Este comando te ayuda a marcar en un momento todas las pantallas en ncurses que posiblemente te saldrían, sobre todo si querías instalarte el meta-port de KDE.

Podemos encontrar una similitud de los ports en Linux con la distribución Gentoo. Aquí se
llamarían portage. Pero en vez de definir opciones a través de pantallas en ncurses, se definen mediante un fichero llamado /etc/portage/make.conf a través de la variable USE flags. Posteriormente, utilizando el comando emerge, que es el gestor de paquetes de Gentoo, comienza a llevar a cabo la compilación e instalación del software.

¿Y qué es el world?

El world es el conjunto de programas, librerías, aplicaciones, herramientas que tiene FreeBSD por defecto. No se debe confundir con el software de terceros como es el caso de Bash, wget, curl... que se obtiene mediante paquetes binarios a través de pkgng ó los ports.

¿Por qué ya no lo utilizo?

Después de tantos años, uno acaba por volver a sus comicios, y volverse a Linux, más concretamente a mi distribución favorita que es Fedora después de haber experimentado un poco con Gentoo, Slackware y openSUSE antes. FreeBSD me terminó por agotar a mí y a mi ordenador. No me gustaba estar compilando cada vez que recibía nuevas actualizaciones de ports instalados y más concretamente si era LibreOffice, que me tardaba hasta 4 horas en compilar.
Y cuando iba a compilar un kernel, no sabía que opciones comentar o descomentar, porque no hay una ayuda como tiene el make menuconfig de Linux, también tuve algún que otro problema con la suspensión del ordenador, que directamente no suspendía con kernel GENERIC o con uno compilado por mí....

Pero es normal, pienso que el SO en sí, está orientado para servidores, y si pensamos un
servidor no suele suspenderse, o tiene KDE como entorno de gestión. Si acaso tendrá algún WM o el TWM que trae X.org, o ni eso, y el resto daemons.

No se me olvidará el aporte que hice hace 3 años y 10 meses, de ahí el motivo del post. En aquel entonces había oído hablar del mapa de teclado Dvorak. Es una distribución de teclado según Wikipedia, en el que las teclas se distribuyen mucho mejor que las del modelo universal QWERTY. Y lo he comprobado.
Entonces, decidí probarlo, cogí el teclado low-cost Innobo negro, que hoy en día tengo otro igual. Lo desmonté y lo volví a montar basándome en ese modelo de distribución de teclas.

El problema con el que me topé, es que en FreeBSD 8.x no existía ese mapa de teclado. Mandé un e-mail a ver si podían incluirlo, pero solo me dieron instrucciones de como hacerlo desarrollarlo.
Así que me puse a ello, y en unas horas, logré sacar el mapa, lo envié y aquí pueden ver como sigue en las últimas versiones de FreeBSD. Al principio, cuando lo envié lo pusieron pero sin mi reconocimiento. Y la verdad, que al menos, por consideración por contribuir, podrían ponerte tu nombre. Tuve que volver a enviar un mensaje para que me incluyeran.

¿FreeBSD como entorno de escritorio?

Hace tiempo como digo, que no lo he utilizado, he realizado algunas pruebas con pkgng entre otras cosas, pero poco más. No he tenido mucho interés en volverlo a tener como desktop. Pero si lo retomaré para temas de servidor en un futuro. 

Sin embargo, hay y habrá cientos o miles de usuarios que sí lo utilicen como SO principal para trabajo diario, y claro está, que cada uno se pone las limitaciones, y se motiva para tenerlo y utilizarlo. Así que si quieres, adelante.

Por otra parte, si estás interesado en tener un FreeBSD más fácil de utilizar, que no conlleva tanto mantenimiento, siempre tendrás PC-BSD. 


PC-BSD es un sistema operativo basado en FreeBSD que tiene como uno de sus objetivos hacer un FreeBSD más fácil de utilizar. Este cuenta con ZFS, el sistema de ficheros que utiliza Solaris en su OS, que permite hacer snapshots en caliente, RAID... entre muchos más; cuenta con entornos como KDE, GNOME, XFCE, MATE... como si fuera una distro Linux.
Una de las cosas que lo hace muy característico es su paquetería.PBI (Push Button Install), algo muy parecido al .ymp One Click Install de openSUSE. En tres pasos, tienes el software instalado.

Me pareció interesante, compartir esta entrada. Porque al fin y al cabo, fue un aporte que hice hace casi 4 años, con 18 añitos, espero que gracias a este granito de arena. Otros usuarios de Dvorak Español se hayan podido beneficiar de él.Y así, generar un poco de conocimiento a través del viejo grupo FreeBSD Spain.

¡Saludos!

No hay comentarios:

Publicar un comentario

Gracias por visitar mi blog y animarte a comentar. Por favor se respetuoso con sus comentarios. Cualquier error es preferible reportárlo que criticarlo por el bien de todos.



Licencia y responsabilidades

Licencia Creative Commons
netSys blog por Álvaro Castillo se encuentra bajo una Licencia Creative Commons Atribución-CompartirIgual 3.0 Unported.

El propietario de este blog no se responsabiliza de los daños que puedan generarse u ocurrir por la información expuesta aquí, en caso de ser utilizada la responsabilidad recae bajo quién la use.

Se les informa de posibles publicaciones donde queden expuestas imágenes a terceros o marcas comerciales que siempre tendrán sus fuentes, y sus atribuciones.

Por último, en caso de confusión por la temática que se trate de los artículos, tutoriales...etc dejaremos claro que este sitio Web no colabora directamente con ningún proyecto de forma oficial.