Cómo construimos Ubuntu
NoticiasUbuntu es una de las distribuciones de Linux más pulidas disponibles, fusionando el trabajo de una comunidad global de colaboradores que proporcionan una amplia gama de habilidades para hacer de Ubuntu lo que es..
Si bien todos disfrutamos de los frutos de un nuevo lanzamiento de Ubuntu cada seis meses, muchas personas han preguntado al equipo a lo largo de los años cómo esta amplia gama de colaboradores se unen para crear un nuevo lanzamiento de Ubuntu..
En este artículo vamos a explicar cómo se hace una nueva versión de Ubuntu, qué tipo de habilidades y talento se incluyen, y qué estructura organizativa utilizamos para reunir esta gama de contribuciones en una unidad cohesiva..
Lanzamientos regulares
En el corazón del proyecto Ubuntu está el compromiso de entregar un nuevo lanzamiento cada seis meses. A diferencia de muchos proyectos de software que identifican un conjunto de características principales para entregar en un lanzamiento, y que a menudo están dispuestos a retrasar el lanzamiento hasta que esas características estén completas, Ubuntu nunca se lanza tarde. Si una característica determinada no estará lista a tiempo para el lanzamiento, la golpearemos, no retrasaremos el lanzamiento..
Este período de seis meses se conoce como un ciclo de lanzamiento y se publica al comienzo de un nuevo ciclo. Como ejemplo, la versión de desarrollo actual (Ubuntu 10.10 Maverick Meerkat) tiene su calendario publicado en http://wiki.ubuntu.com/MaverickReleaseSchedule.
El ciclo se divide en algunos componentes clave:
Se congela
Una congelación es cuando un tipo particular de desarrollo debe detenerse, normalmente listo para su lanzamiento. Existen diferentes tipos de congelación, como la Congelación de la interfaz de usuario (no hay más cambios en los elementos de la interfaz de usuario), la Congelación de cadenas (no más traducciones) y la Congelación de funciones (no hay un desarrollo de características más significativo).
Alfas
A lo largo de un ciclo de lanzamiento, hacemos una serie de lanzamientos de instantáneas a medida que se desarrolla el lanzamiento. Estas versiones alfa son a veces incompletas y con errores (debido a su naturaleza de trabajo en progreso), pero ofrecen una buena oportunidad para apuntarles a las funciones..
Betas
Las versiones beta son versiones completas que requieren muchas pruebas. A menudo recomendamos la versión beta como un buen momento para que los evaluadores actualicen, mejoren Ubuntu y los errores de archivo.
Candidato de liberación
Un candidato de lanzamiento llega justo antes de la versión final, y se lanza para estimular una parte final de las pruebas de la comunidad. Este ciclo de seis meses y estos elementos diferentes están presentes en cada versión, y la comunidad puede actualizar a una nueva versión de desarrollo tan pronto como se abre al trabajo, aunque los usuarios regulares pueden desear esperar hasta las últimas etapas de desarrollo antes de comenzar. prueba la nueva versión.
Todo comienza con Debian.
La forma en que construimos Ubuntu es tomar el código fuente de los proyectos de código abierto (conocido como upstreams) y cargarlo en una máquina de compilación en el sitio de alojamiento de proyectos Launchpad que construirá un paquete listo para su instalación en un sistema Ubuntu. Estos paquetes se combinan para formar la distribución completa, desde el kernel que arranca la máquina, hasta las aplicaciones que ejecuta.
La primera fase del ciclo de lanzamiento involucra traer nuevos lanzamientos de componentes ascendentes a Ubuntu. Para hacer esto, importamos el archivo completo del paquete Debian y lo construimos para Ubuntu.
Usamos Debian porque es la forma más efectiva de mantenerse al día con el código upstream (los mantenedores de Debian empaquetan nuevos lanzamientos upstream con frecuencia, a menudo más rápido de lo que podemos hacerlo), y porque Debian y Ubuntu son similares en muchos aspectos. maneras por lo que sus correcciones de errores a menudo son correcciones de errores para nosotros también.
Con este conjunto básico de paquetes de Debian importados a Ubuntu, luego llevamos un conjunto de nuestras modificaciones a muchos de los paquetes (conocidos como parches), que transforman el paquete de Debian en uno que se parece más a Ubuntu.
Como ejemplo, los paquetes de Debian para Gnome no incluyen muchas de las modificaciones que realizamos, como las opciones de software predeterminadas, el tema predeterminado, las características adicionales del panel, etc. Todos estos parches que transforman los paquetes de Debian en paquetes de Ubuntu están disponibles gratuitamente en http: //patches.ubuntu.com.
El siguiente paso es decidir qué desarrollo de nuevas características queremos hacer y construir esas características en la nueva versión de desarrollo de Ubuntu. Las decisiones y los planes de la característica principal de la Cumbre de desarrolladores de Ubuntu se toman en nuestra Cumbre de desarrolladores de Ubuntu dos veces al año, cuya ubicación se alterna entre los Estados Unidos y Europa.
La Cumbre de Desarrolladores de Ubuntu (UDS), es un evento en el que enviamos a nuestro equipo completo de desarrollo de Ubuntu, y patrocinamos a un número significativo de miembros de la comunidad para que asistan.
El evento de una semana de duración se divide en nueve pistas (Escritorio, Servidor, Comunidad, Móvil, Diseño, Fundamentos, Control de calidad, Seguridad y Ubuntu en ARM), cada una de las cuales tiene un líder de pista que programa sesiones para cada pista durante toda la semana. Estas sesiones son solicitadas por el personal de Canonical, miembros de la comunidad y más, y están diseñadas para proporcionar un lugar para discutir y planear características particulares, específicamente para el nuevo lanzamiento..
A lo largo de toda la semana de UDS se discuten una gran variedad de temas, se toman decisiones, se completan las soluciones y, en última instancia, se documentan estas conclusiones. Y así, pasamos a la fase de planos..