¿Dónde se puede navegar exactamente todo el código fuente en Launchpad?

8

Siempre he encontrado que el navegador de código fuente de Launchpad es extremadamente útil cuando necesito vincular el código de empaque en una respuesta. El patrón de URL es lo suficientemente simple ( https://code.launchpad.net/ubuntu/+source/<package>) que a menudo puedo reemplazar la última palabra después de escribir codeen mi barra de direcciones. Pero, últimamente, descubrí que ha sido cada vez más inconsistente encontrar el código de empaque real.

Por ejemplo:

  • GDM : no hay nada más nuevo que 15.10 (astutamente) allí. Pero está claro en el registro de cambios que el código de empaquetado ha cambiado desde entonces.
  • Bash : esto es interesante. Hay un enlace a los repositorios de Git en Launchpad en esa página, y allí puede ver el empaque para las versiones más recientes. Del mismo modo para apt , bash, git, grub2, ....

Tenga en cuenta que no hay repositorios Git listados para el empaquetado GDM. Otros como GDM: bazar en sí , LightDM , zsh , Chromium , ...

¿A dónde fue todo ese código de empaque?

Tenga en cuenta que no quiero descargar el código de empaque, tengo apt-get sourcepara eso. No quiero explorar el código fuente del software, buscaría eso fuera de LP (a menos, por supuesto, que el software esté desarrollado en LP). Quiero explorar el código de empaquetado de Ubuntu en línea y poder vincularlo. Para Debian, generalmente puedo desenterrar el paquete en Alioth .

muru
fuente

Respuestas:

11

Respuesta corta: para obtenerlo todo, debe descargar los paquetes fuente individualmente; No existe un único servicio de navegación pública para Ubuntu que esté generalmente disponible en la actualidad. ¡Pero estamos trabajando en eso!

Respuesta larga:

El código fuente canónico para todo Ubuntu está disponible como paquetes fuente. Puede ir a https://launchpad.net/ubuntu/+source/hello , por ejemplo, hacer clic en uno de los números de versión, y puede descargar las fuentes desde la sección Descargas. Para encontrar la fuente de cada versión de hola publicada por Ubuntu, puede seguir el enlace para ver su historial de publicación completo y hacer clic en cualquier cadena de número de versión desde allí. El mismo patrón de URL funciona para cualquier paquete fuente; solo necesita saber el nombre del paquete fuente.

Los paquetes fuente son canónicos porque son la unidad básica con la que los desarrolladores de Ubuntu trabajan para desarrollar Ubuntu. Pero son algo difíciles de manejar; desempacar un paquete fuente necesita algunas herramientas. dget, desde el devscriptspaquete, puede descargar, verificar y desempaquetar un paquete fuente en un comando si le da la URL al archivo dsc.

Esto, por supuesto, no es muy conveniente.

Hace años, hubo un esfuerzo para mejorar esto. Ubuntu lo llamó "Desarrollo distribuido de Ubuntu", o UDD para abreviar, y desarrolló un sistema de control de versiones distribuido llamado Bazaar para tratar de resolver este problema. Como parte de este esfuerzo, los paquetes fuente se importaron automáticamente a la plataforma de alojamiento Bazaar VCS en Launchpad a medida que se publicaron. En ese momento, teóricamente podrías encontrar el código fuente de cualquier paquete en code.launchpad.net. Por ejemplo, aún puede ver las fuentes importadas de Bazaar para el hellopaquete de las versiones de Ubuntu Precise y Trusty en https://code.launchpad.net/ubuntu/+source/hello .

Bazaar se centró en un conjunto específico de casos de uso y tenía una interfaz de línea de comandos muy bien pensada. Jelmer Vernooij, uno de sus desarrolladores, ha escrito una interesante retrospectiva sobre el desarrollo de Bazaar , que incluye cómo encaja esto con los otros sistemas de control de versiones distribuidos que se estaban desarrollando en ese momento.

Con el tiempo, git se hizo cargo del mundo, y Bazaar quedó en segundo plano. Mientras tanto, UDD había comenzado a mostrar sus grietas. Un número cada vez mayor de paquetes no se pudo importar y necesitó una intervención manual para solucionarlo. Esto significaba que, incluso mientras el desarrollo de Ubuntu en los paquetes fuente continuaba, la vista de Bazaar de esos paquetes code.launchpad.netno se pudo actualizar.

Finalmente, el importador UDD se apagó porque nadie lo mantenía y no se consideró que valiera la pena mantenerlo en funcionamiento.

Simultáneamente a esto, en 2014 publiqué algunas notas sobre cómo estaba usando git para realizar el desarrollo de Ubuntu ; aunque en ese momento los paquetes de Ubuntu no se mantenían en git en general.

Este flujo de trabajo basado en git ha sido adoptado por mi equipo (el equipo de Ubuntu Server) y hemos seguido trabajando para que las fuentes de Ubuntu estén disponibles a través de git. Un colega y yo hemos comenzado a escribir una serie de blogs (aún sin terminar) explicando lo que estamos haciendo.

Los repositorios git que encontró para algunos paquetes son el resultado de nuestro importador ( ~usd-import-team). Todavía estamos trabajando activamente en esto, por lo que todavía no todos los paquetes están disponibles de esta manera. Todavía no estamos en la etapa "beta", esperamos volver a importar todos los paquetes antes de que estemos listos (rompiendo todos los hashes de confirmación anteriores), y todavía no mantenemos actualizados todos los repositorios importados con el último trabajo de desarrollo de Ubuntu. Pero cuando hemos importado una versión particular de un paquete, debe ser lo suficientemente precisa para navegar.

Esperamos acelerar la importación de todos los paquetes y mantenerlos actualizados automáticamente en los próximos meses.

Uno de nuestros objetivos es exactamente resolver la pregunta que estás haciendo: tener un solo lugar oficial en Launchpad donde se pueda navegar por todo el código fuente de Ubuntu.

Robie Basak
fuente