Instalador Kasha
Kasha es el instalador del sistema que usa Neko-Void. Está escrito en C con una interfaz GTK+ 3.0 y se encarga del particionado del disco, la configuración del gestor de arranque, el cifrado y la configuración básica del sistema.
- Lenguaje: C
- Toolkit de UI: GTK+ 3.0
- Código fuente: Codeberg
Características
- Modos de particionado:
- UEFI: tabla GPT, ESP de 512MB (FAT32), raíz Ext4.
- Legacy: tabla MBR (MS-DOS), raíz Ext4 única con bandera de arranque.
- Modos de instalación: limpia (borrar disco), junto a otro sistema (dual-boot) o manual.
- Cifrado: soporte LUKS para particiones.
- Gestor de arranque: GRUB tanto para sistemas EFI como BIOS.
- Configuración del sistema: idioma, nombre de host, zona horaria y cuenta de usuario.
Arquitectura
Estructura del proyecto
include/: Contieneneko_installer.hcon las estructuras de datos principales y los prototipos de funciones.src/core/: Lógica de la aplicación y pasos de instalación.main.c: Punto de entrada e inicialización de GTK.installer.c: Coordinación del hilo de instalación y registros (logging).installer_steps.c: Pasos individuales (particionado, formateo, copia de archivos, configuración secundaria).partition_utils.c: Lógica para el descubrimiento de discos y mapeo de particiones.utils.c: Ayudantes genéricos (ejecución de shell, obtención de UUID, detección de EFI).
src/ui/: Componentes de la interfaz de usuario en GTK+ 3.0.ui.c: Desarrollo de la ventana principal y estructura de pestañas.ui_partition.c: Diálogos de selección de partición y particionado manual.ui_callbacks.c: Manejadores de eventos para la navegación y la entrada del usuario.
Compilación y ejecución
Dependencias
Instala lo siguiente antes de compilar:
gccmakepkg-config- Cabeceras de desarrollo de
gtk+-3.0 - Para soporte LUKS:
bash,grub,xxdysed
En Devuan o Arch, usa la rama universal del proyecto.
Compilación
Compila para el entorno por defecto:
bash
$ makePara otras distribuciones (Artix, Arch, Devuan, Debian):
bash
$ make universalLimpia los artefactos de compilación:
bash
$ make cleanCambiar el logotipo
Para reemplazar el logotipo del instalador, convierte la imagen con xxd y déjala en el proyecto:
bash
$ xxd -i logo.png > include/logo.hLuego reemplaza logo.h en el árbol de código.
Ejecutar
El instalador necesita root para manipular discos, formatear particiones y montar sistemas de archivos:
bash
# ./neko_installerO usa la regla de conveniencia:
bash
# make run