Introducción

Introducción

Esta es la última entrega de nuestra serie de desarrollo C, y posiblemente la más no técnica. Si nos siguió desde el principio y practicó tanto como sea posible, ahora tiene algunos conocimientos básicos sobre el desarrollo C y cómo empaquetar su aplicación (favorita) para dos de las familias de distribución de Linux más utilizadas, Debian y Redhat. Este artículo trata sobre la comunidad, cómo contribuir, cómo colaborar y finalmente, cómo obtener su paquete en los archivos oficiales de Debian. Si lee los artículos anteriores de la serie, no necesitará ningún otro conocimiento técnico; Todo lo que necesita es la voluntad de poner su conocimiento para trabajar para beneficio de la comunidad.

Empezando

Tiene una aplicación, la empaquetó y ahora está ansioso por subirla a los archivos de Debian (por cierto, muchas de las ideas presentadas aquí se aplican a muchos proyectos de código abierto: lo que generalmente difiere es la forma de hacer las cosas). Diríamos que no tan rápido. Tómese un minuto para respirar y encontrar formas de darse a conocer a la comunidad. Tómese un tiempo para leer la Guía de Debian New Sostener, si aún no lo ha hecho, y recuerde la palabra clave aquí: Comunidad. Todos son voluntarios, y elegimos a Debian, especialmente por sus puntos de vista democráticos, y a nadie se le paga ni se les obliga de ninguna manera a hacer su licitación. De todos modos, dado que sabemos cuánto le gusta leer guías y manuales, parte de este artículo consistirá en algunos consejos sanos con respecto a la colaboración. Primero, acostúmbrese a pasar por su cuenta. A nadie le gusta una persona que, cuando él o ella llegue a la primera señal de problemas, en lugar de ir al mejor amigo de Internet, $ Search_Engine, comenzar a contaminar los foros, las listas de correo y los canales IRC con preguntas pueril como "las banderas de GCC que necesito para compilar mi código para i686?". Lo único que ganará es un RTFM menos amigable y muchos puntos geek faltantes. Sí, sabemos que el manual de GCC es grande y una toma segura para los dolores de cabeza, pero leer el manual, luego buscar la red primero es la forma correcta (TM). Sin excepciones. Darás una primera buena impresión cuando muestres a los otros desarrolladores que hiciste tu tarea. Por otro lado, dar un momento difícil, especialmente cuando no se requiere dicho comportamiento, no le dará popularidad. Recuerde que una vez fue como ellos, recuerde que, como todos, todavía tenemos mucho que aprender, y tal vez señale a la persona hacia un recurso que cree que es útil. En este contexto, recuerde esa palabra nuevamente: comunidad. Su trabajo no significa mucho, a pesar del hecho de que significa el mundo para usted, a menos que la comunidad le resulte útil. Colaborar con ellos y estar listo para aceptar comentarios, y estar agradecido por ello, aunque no le guste lo que escuche. Deje su orgullo en la puerta y recuerde que la mejor y tal vez la única forma de mejorar su software son los comentarios de la comunidad. Pero no caigas en los extremos y trates de ser imparcial. Quizás algunas personas traten de dejarte solo por diversión: ignorarlos y concentrarse en las críticas constructivas.

Herramientas del comercio

La primera herramienta que necesitará como desarrollador de Debian, o cualquier otra distribución/proyecto, es la paciencia. Realmente no importa si es su propio software que está empaquetando, o el de otra persona, como lo hicimos con Yest. Uno no se convierte en desarrollador durante la noche, especialmente en un proyecto orientado a la calidad como Debian. Ahora, para entrar en el lado práctico de las cosas, la primera y más obvia herramienta que necesita es el compilador del lenguaje en el que está escrito su programa. O, si el programa está escrito en algún lenguaje interpretado, asegúrese de que el intérprete (Perl, Python, Ruby ...) esté allí como dependencia. Sin embargo, nos concentraremos en el lado C, ya que esta es después de todo una serie de artículos de desarrollo C, y le daremos una lista no exhaustiva de utilidades que es mejor que haya instalado en su máquina de desarrollo:

Auto* Herramientas (AutoConf, AutoMake, ...) Debhelper y DH-Make-Devscripts específicos de Debian, Fakeroot-Lo mismo, consulte la guía para obtener detalles de un VCS de su elección, dependiendo de la situación en cuestión, preferimos tomar No hay lados aquí Gnupg - para digitalmente firma Sus paquetes, obligatorios en Debian Lintian, el nombre es una combinación de pelusa y Debian, por lo que es un parche de autoexplicación, debe saber por qué lo necesitaría PBuilder, para crear un chroot 

Si tuviera cuidado, habría notado que omitimos una utilidad importante en esa lista. Puedes distinguirlo?

Documentación

Debian recomienda dos documentos. De hecho, no. Debian recomienda los dos documentos, pero decimos que es esencial que los lea más de una vez y los mantenga a mano en todo momento. Esas son la política de Debian y la referencia de los desarrolladores, ambos disponibles a través de la web y como paquetes. Además, los estándares de codificación de GNU deben estar disponibles cuando lo necesite, especialmente cuando/si está escribiendo la aplicación usted mismo.

Río arriba

Dado que nos estamos centrando en el yest como el ejemplo principal de esta serie, es fácil descubrir que solo somos empaquetadores, no desarrolladores primarios, por lo que debemos mantener el contacto con elantero. Las reglas de comunicación descritas anteriormente se aplican, por supuesto, y la estrecha colaboración con Upstream hace un paquete saludable que se actualice de inmediato tan pronto como el autor carga la nueva versión. Aunque dicho autor probablemente probó el software antes de lanzarlo en la naturaleza, si hace algunas pruebas unitarias antes de cargar el paquete, aún mejor. Eche un vistazo a herramientas como DeJagnu para esto e informe cualquier problema que se encuentre aguas arriba. Hablando de informes, debe comprender la responsabilidad que asume cuando se convierte en mantenedor. Todos los informes de errores de los usuarios de Debian vendrán a usted, y es su deber actuar como un catalizador entre los usuarios y aguas arriba para solucionar todos los problemas.

El mentor

Muchos de ustedes, especialmente los mayores como yo, han visto la serie Karate Kid. En todo caso, esa película muestra una relación entre un maestro y un aprendiz (OK, también puedes usar Star Wars como ejemplo ...). Si cree que pide que se convierta en desarrollador y su deseo se otorgue en minutos, se olvidó de la paciencia. No, primero debe solicitar tutoría, mostrando sus logros, sus motivaciones, etc. Después de un tiempo, después de que haya demostrado ser digno, enviará una solicitud para convertirse en un mantenedor, con el mentor que atribuye por usted.

Carga

Estás casi ahí, todo lo que tienes que hacer es realizar la carga adecuada. Si has llegado tan lejos, ya puedes darte una palmada en la espalda. Ahora, la aplicación que necesita se llama dupload (1), y debe crear un archivo llamado duplicar.conf (5) En su directorio de inicio y comienza a modificar la configuración. Puede, si la página manual del archivo parece aterrador, tomar /etc/dupload.confusión como ejemplo. Después de salvar ~/dupload.confusión, Puedes hacer algo como esto:

 $ dupload yest-2.7.0.5_i386.cambios 

Ahora, se queda como un ejercicio para el lector para averiguar qué más se debe hacer al subir un paquete por primera vez. Además, el Capítulo 9 de la Guía del Nuevo Mantenedor de Debian debe leerse y leer nuevamente y luego algunos más. Eso es todo!

Todos los artículos de esta serie:

  • I. C Desarrollo en Linux - Introducción
  • II. Comparación entre C y otros lenguajes de programación
  • III. Tipos, operadores, variables
  • IV. Control de flujo
  • V. Funciones
  • VI. Punteros y matrices
  • VII. Estructuras
  • VIII. E/S básica
  • Ix. Estilo de codificación y recomendaciones
  • X. Construyendo un programa
  • Xi. Embalaje para Debian y Fedora
  • Xii. Obtener un paquete en los repositorios oficiales de Debian

Tutoriales de Linux relacionados:

  • Cosas para instalar en Ubuntu 20.04
  • Una introducción a la automatización, herramientas y técnicas de Linux
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Mint 20: Mejor que Ubuntu y Microsoft Windows?
  • Ubuntu 20.04 Guía
  • Cosas que hacer después de instalar Ubuntu 22.04 Jellyfish de Jammy ..
  • Descarga de Linux
  • Cómo arrancar dual Kali Linux y Windows 10
  • Mastering Bash Script Loops
  • Cosas para instalar en Ubuntu 22.04