Búsqueda de sitios web

Entrevista con el fundador y desarrollador principal de MidnightBSD, Lucas Holt


Recientemente, me he sumergido un poco en el mundo de BSD. Como parte de mi intento de comprender un poco mejor el mundo BSD, me conecté con Lucas Holt (fundador y desarrollador líder de MidnightBSD) para hacerle algunas preguntas sobre su proyecto. Aquí están sus respuestas.

Es software libre: explique MidnightBSD en pocas palabras. ¿En qué se diferencia de otros BSD?

Lucas Holt: MidnightBSD es un sistema operativo centrado en el escritorio. Cuando se considere estable, proporcionará una experiencia de escritorio completa. Esto se diferencia de otros esfuerzos como TrueOS o GhostBSD en que no es una distribución de FreeBSD, sino más bien una bifurcación. MidnightBSD tiene su propio administrador de paquetes, mport, así como un software de clúster de paquetes único y varias características integradas en el área del usuario, como mDNSresponder, libdispatch y personalizaciones en todo el sistema.

Es FOSS: ¿A quién está dirigido MidnightBSD?

Lucas Holt: El objetivo de MidnightBSD siempre ha sido proporcionar un sistema operativo de escritorio que sea utilizable para las tareas cotidianas y que incluso las personas sin conocimientos técnicos puedan utilizar. Las primeras versiones de Mac OS X fueron sin duda una inspiración. En la práctica, estamos bastante lejos de ese objetivo en este momento, pero ha sido una excelente oportunidad de aprendizaje.

Es software libre: ¿Cuál es su experiencia en informática?

Lucas Holt: Empecé en soporte técnico en un pequeño ISP y pasé al diseño web y administración de sistemas. Mientras estuve allí, aprendí BSDi, Solaris y Linux. También comencé a experimentar con la programación de aplicaciones web en ASP y un poco de CGI en Perl. Luego hice una combinación de trabajos de programación y administración de sistemas durante la universidad y me gradué con una licenciatura en informática de la Universidad de Eastern Michigan. Durante ese tiempo, aprendí NetBSD y FreeBSD. Comencé a trabajar en varios proyectos, como portar el código HFS+ de Apple a FreeBSD 6 y trabajar para lograr que el controlador SATA del chipset nforce2 funcionara con FreeBSD 6, y este último se comprometió. Me gustó mucho BSD y después de ver la falta de interés de la comunidad por los BSD de escritorio, comencé MidnightBSD. Empecé a trabajar en ello a finales de 2005.

Actualmente, soy ingeniero de software senior y me especializo en servicios de descanso backend durante el día y soy estudiante de posgrado a tiempo parcial en la Universidad de Michigan Flint.

Es software libre: recientemente instalé TrueOS. Me decepcionó que algunos de los programas que quería no estuvieran disponibles. El sistema de port de FreeBSD parecía un poco complicado para los principiantes. Estoy acostumbrado a usar Pacman para hacer el trabajo rápidamente. ¿Cómo trata MidnightBSD los ports?

Lucas Holt: MidnightBSD tiene su propio sistema de port, mports, que comparte similitudes con los ports de FreeBSD, así como algunas ideas de OpenBSD. Decidimos desde el principio que una gestión decente de los paquetes era esencial para los usuarios habituales. Los usuarios avanzados seguirán usando puertos para cierto software, pero construir todo lleva mucho tiempo. Comenzamos a trabajar en nuestro propio administrador de paquetes, mport.

Cada paquete es un archivo tar lzma con un archivo de manifiesto sqlite3 así como un índice sqlite 3 que se descarga de nuestro servidor. Esto permite a los usuarios consultar y personalizar el sistema de paquetes con consultas SQL estándar. También estamos creando herramientas gráficas más fáciles de usar.

La disponibilidad de paquetes es otro problema que tienen la mayoría de los BSD. El software tiende a escribirse para uno o dos sistemas operativos y muchos proyectos son reacios a admitir otros sistemas, particularmente proyectos más pequeños como MidnightBSD. Ciertamente hay lagunas. Todos los proyectos de BSD necesitan más voluntarios para ayudar con la migración del software y mantenerlo actualizado.

Es software libre: durante su entrevista de junio de 2015 en BSDNow, mencionó que aunque admite tanto i386 como amd64, recomienda a las personas que elijan amd64. ¿Tiene algún plan para dejar de admitir i386 en el futuro, como lo han hecho muchos?

Lucas Holt: Sí, planeamos eliminar el soporte para i386, principalmente debido al trabajo adicional necesario para crear y mantener paquetes. He pospuesto esto hasta ahora porque recibí muchos comentarios de usuarios en Sudamérica que todavía lo necesitaban. Por ahora, el plan es mantener el soporte para i386 hasta la versión 1.0. Probablemente faltan uno o dos años para eso.

Es software libre: ¿Qué entornos de escritorio admite MidnightBSD?

Lucas Holt: El plan original era utilizar Etoile como entorno de escritorio, pero ese proyecto cambió de enfoque. Actualmente admitimos Xfce, Gnome 3, WindowMaker + GNUstep + Gworkspace como opciones principales. También tenemos varios otros administradores de ventanas y entornos de escritorio disponibles, como Enlightenment, veneno para ratas, afterstep, etc.

Las primeras versiones ofrecían KDE 3.x, pero tuvimos algunos problemas con KDE 4. Es posible que lo revisemos con versiones más nuevas.

Es software libre: ¿Cuál es el sistema de archivos predeterminado de MidnightBSD? ¿Es compatible con el sistema de archivos HAMMER de DragonflyBSD? ¿Qué otros sistemas de archivos?

Lucas Holt: Los volúmenes de arranque son UFS2. También admitimos ZFS para almacenamiento adicional. Hemos leído soporte para ExFat, NTFS, ext2, CD9660. NFS v3 y v4 también son compatibles con sistemas de archivos de red.

No apoyamos a HAMMER, aunque se consideró. Me encantaría ver que HAMMER2 eventualmente se agregue a MidnightBSD.

Es software libre: ¿MidnightBSD se ve afectado por los recientes problemas de Spectre y Meltdown?

Lucas Holt: Sí. La mayoría de los sistemas operativos se vieron afectados por estos problemas. No fuimos informados del problema hasta que el público en general se dio cuenta. Se está trabajando para encontrar las mitigaciones adecuadas. Desafortunadamente, todavía no tenemos un parche.

Es software libre: la Raspberry Pi y sus numerosos clones han hecho que la plataforma ARM sea muy popular. ¿Hay algún plan para que MidnightBSD esté disponible en esa plataforma?

Lucas Holt: No hay planes inmediatos. ARM es una arquitectura interesante, pero por la propia naturaleza de los diseños de SoC, requiere mucho trabajo para admitir una amplia cantidad de dispositivos. Podría ser posible cuando dejemos de admitir i386 o si alguien se ofrece como voluntario para trabajar en el puerto ARM.

Con el tiempo, creo que la mayoría de los sistemas de hobby necesitarán ejecutar chips ARM. Intel planea bloquear el hardware con UEFI 3 y esto puede dificultar la ejecución en hardware básico en el futuro no solo para MidnightBSD sino también para otros sistemas.

En un momento, MidinightBSD se ejecutó en sparc64. Cuando se eliminaron las estaciones de trabajo, dejamos de brindar soporte. Un sistema operativo de escritorio en una plataforma de servidor tiene poco sentido.

Es software libre: ¿MidnightBSD ofrece soporte para aplicaciones Linux?

Lucas Holt: Sí, ofrecemos emulación de Linux. Actualmente está emulando un kernel 2.6.16 y debe actualizarse para admitir aplicaciones más nuevas. Sin embargo, es posible ejecutar versiones semirecientes de Firefox, Thunderbird, Java y OpenOffice. También lo he usado para alojar servidores de juegos en el pasado y jugar juegos más antiguos como Quake 3, territorio enemigo, etc.

Es software libre: ¿Podrías comentar sobre el reciente enfrentamiento entre los desarrolladores del navegador Pale Moon y el equipo detrás del sistema de ports de OpenBSD?

Lucas Holt: Esta discusión me pareció frustrante. Muchos de los proyectos BSD escuchan muchas quejas sobre la disponibilidad y compatibilidad del navegador. Con Firefox migrando a Rust, lo hace aún más difícil. Luego entras en cuestiones de marca. Al igual que Firefox, los desarrolladores de Pale Moon han decidido proteger su marca a costa de los usuarios. A diferencia de los desarrolladores de Firefox, han impuesto requisitos aún más extraños para la marca. No es posible utilizar una versión de la biblioteca del sistema de nada con Pale Moon y mantener sus requisitos de marca. Como tal, no podemos ofrecer Pale Moon en MidnightBSD.

La razón por la que esto es un problema para un proyecto de código abierto es que muchas bibliotecas de terceros se utilizan en algo tan complejo como un navegador web. Por ejemplo, los navegadores basados en Gecko utilizan varias bibliotecas multimedia, sqlite3 (para marcadores), códecs de audio y vídeo, etc. Tratar de mantener parches ascendentes para cada uno de estos elementos es difícil. Es por eso que, para empezar, los BSD tienen colecciones de puertos. Nos permite rastrear y administrar parches personalizados para que todas estas bibliotecas funcionen. Nos esforzamos mucho para mantenerlos actualizados. A veces, los parches ascendentes no se incluyen. Eso significa que nuestras versiones son las únicas copias funcionales. Con la política de Pale Moon, también necesitaríamos enviar parches separados para sus versiones personalizadas de todas estas bibliotecas y cualquier nueva versión del navegador no estaría disponible a medida que se produzcan cambios. Quizás ni siquiera sea posible compilar pale moon sin un parche localmente.

Con respecto a Rust, requiere portar el idioma, así como una versión adecuada de LLVM antes de poder iniciar el navegador.

Es software libre: si alguien quisiera contribuir a su proyecto, tanto financiera como técnicamente, ¿cómo podría hacerlo?

Lucas Holt: La asistencia financiera para el proyecto se puede enviar online. Tenemos una página que describe cómo hacer donaciones con Patreon, Paypal o mediante bitcoin. Las donaciones no son deducibles de impuestos. Puede obtener más información en http://www.midnightbsd.org/donate/

También necesitamos ayuda con las traducciones, la portabilidad de aplicaciones y el trabajo en el sistema operativo real. Las partes interesadas pueden contactarnos a través de la lista de correo o a través de IRC en freenode #midnightbsd. También podríamos necesitar ayuda para duplicar ISO y paquetes.

Me gustaría agradecer a Lucas por tomarse el tiempo de responder a mis muchas preguntas. Para obtener más información sobre MidnightBSD o descargarlo, visite su sitio web. La versión más reciente de MidnightBSD es 0.8.6.

¿Has jugado alguna vez con MidnightBSD? ¿Cuál es tu versión favorita de BSD?

Si este artículo te resultó interesante, tómate un minuto para compartirlo en las redes sociales.