Primero, gracias por considerar contribuir a adJ. Tu ayuda es valiosa para llevar la Buena Nueva a través de la tecnología.
Este documento proporciona una guía para los desarrolladores que desean aportar cambios, parches o mejoras al proyecto.
El desarrollo de adJ implica un ciclo de modificación, compilación y prueba. A continuación se describen los pasos y herramientas comunes en este proceso.
Antes de poder contribuir con código, necesitas tener tu propia versión del repositorio para trabajar.
-
Bifurcar (Fork): En la página de GitHub del repositorio pasosdeJesus/adJ, haz clic en el botón "Fork" para crear una copia del repositorio en tu propia cuenta de GitHub.
-
Clonar (Clone): Ahora, clona tu fork a tu máquina de desarrollo local. Reemplaza
TU-USUARIOcon tu nombre de usuario de GitHub.git clone https://github.com/TU-USUARIO/adJ.git cd adJEste directorio local es donde realizarás todos tus cambios.
- Enlazar
mystuff:adJcontiene portes (paquetes de software) que son únicos o están modificados. Estos se encuentran enarboldes/usr/ports/mystuff. Debes crear un enlace simbólico desde/usr/ports/mystuffa este directorio para que el sistema de compilación de OpenBSD pueda encontrarlos:doas ln -s /ruta/a/tu/repo/adJ/arboldes/usr/ports/mystuff /usr/ports/mystuff
La mayoría de las operaciones se controlan activando o desactivando pasos en el archivo distribucion.sh a través de tu archivo de configuración personal ver-local.sh.
-
Activar/Desactivar Pasos: Edita
ver-local.sh(si no existe, puedes crearlo concp ver-local.sh.plantilla ver-local.sh). Para activar un paso, asigna el valor's'a la variableauto*correspondiente (p. ej.,autoCompKernel='s'). Para desactivarlo, usa'n'. -
Actualizar Fuentes: Con regularidad, puedes sincronizar tus fuentes locales con las oficiales de OpenBSD. Para ello, activa
autoCVS='s'enver-local.shy ejecuta:doas ./distribucion.sh
-
Implementar Mejoras:
- Puedes realizar cambios automáticos al sistema base o al kernel mediante scripts. Estos deben ubicarse en
hdes/o enarboldd/usr/local/adJy ser llamados desdedistribucion.sh. - También puedes crear parches
.patch, que se ubican enarboldes/usr/src(para el sistema base) oarboldes/usr/xenocara(para el sistema gráfico).
- Puedes realizar cambios automáticos al sistema base o al kernel mediante scripts. Estos deben ubicarse en
-
Trabajar con Portes:
- Actualiza, mejora o crea nuevos portes en
arboldes/usr/ports/mystuff. - Si agregas o retiras un porte, asegúrate de actualizar la lista de paquetes en
distribucion.sh.
- Actualiza, mejora o crea nuevos portes en
-
Compilación Parcial: Durante el desarrollo, puedes ejecutar fases específicas de la compilación activando solo las variables
auto*necesarias enver-local.sh. El orden general y las variables se describen en detalle en el PROCESO-DE-CONSTRUCCION.md.
Una vez que has generado una imagen de instalación .iso (ver PROCESO-DE-CONSTRUCCION.md), es crucial probarla en un entorno virtual antes de publicarla.
-
Prueba de Arranque desde ISO:
- Asegúrate de que la variable
qemubootenver-local.shesté configurada comoqemuboot=d(para arrancar desde el CD/DVD). - Ejecuta el script
hdes/qemu.sh. Si no existe una imagen de disco virtual (virtual.vid), se creará una. - Procede con la instalación de
adJdentro de la máquina virtual.
- Asegúrate de que la variable
-
Prueba de Arranque desde Disco Duro Virtual:
- Después de instalar, cambia
qemubootenver-local.shaqemuboot=c(para arrancar desde el disco duro). - Vuelve a ejecutar
hdes/qemu.shpara arrancar el sistema recién instalado y verificar su funcionamiento.
- Después de instalar, cambia
-
Modo Texto: Para una ejecución más rápida, especialmente en conexiones remotas, puedes iniciar la máquina virtual en modo texto:
TEXTO=1 hdes/qemu.sh
- Ramas (Branches): Mantenemos una rama separada para cada versión mayor publicada de
adJ(por ejemplo,ADJ_7_8). Las actualizaciones de seguridad y correcciones para una versión ya publicada se aplican a su rama correspondiente. - Etiquetas (Tags): Creamos una etiqueta Git cada vez que se anuncia una nueva publicación en el sitio web (por ejemplo,
v7.8b1). - Enviar Contribuciones: Envía tus mejoras a tu propia bifurcación (fork) en GitHub y luego crea una "Pull Request" para que podamos revisar e integrar tu trabajo.
Cuando creamos parches que podrían ser beneficiosos para el proyecto OpenBSD, procuramos que sean "limpios" y se apliquen en el orden correcto sobre la versión correspondiente de las fuentes de OpenBSD. Estos parches destinados a ser enviados a OpenBSD se organizan en hdes/src/.