Configuración de Hardware en NixOS: Soporte Multicomputador desde Intel hasta Apple Silicon

Arquitectura de Archivos de Configuración para Hardware

En NixOS, los ajustes específicos del hardware se organizan de manera modular dentro del directorio machines/hardware/. Este enfoque permite aislar configuraciones para diferentes plataformas. A continuación, se detallan algunos archivos clave:

  • config-intel-vm.nix: Perfil optimizado para máquinas virtuales con procesadores Intel.
  • base-aarch64.nix: Configuración fundamental para la arquitectura ARM64.
  • prl-aarch64.nix: Ajustes personalizados para entornos Parallels en ARM64.
  • utm-aarch64.nix: Configuración dedicada a la plataforma UTM con ARM64.

Esta separación garantiza que el mismo conjunto de ficheros base pueda desplegarse en distintas arquitecturas con mínimas modificaciones.

Implementación para Sistemas con Procesadores Intel

El archivo config-intel-vm.nix incoprora parámetros esenciales para el arranque en entornos x86_64. Un ejemplo de carga de módulos de núcleo podría reestructurarse así:

modulosNucleo = [
  "nvme"
  "sd_mod"
  "ehci_pci"
  "uhci_hcd"
];

Para el sistema de archivos, en lugar de utilizar etiquetas directas, se puede definir el punto de montaje mediante una estructura modificada:

sistemaArchivosRaiz = {
  dispositivo = "/dev/disk/by-uuid/abc123";
  tipo = "ext4";
};

Adaptación para la Arquitectura Apple Silicon

Los sistemas ARM64, como los basados en Apple Silicon, requieren módulos diferentes. El archivo base-aarch64.nix puede incluir configuraciones como:

controladoresDispositivos = [
  "xhci_pci"
  "ahci"
  "usbhid"
];

Para virtualizadores específicos, existen variantes. Por ejemplo, en prl-aarch64.nix se podrían añadir ajustes para la integración de hardware:

paralelosSoporte = true;
resolucionDisplay = "1920x1080";

Proceso de Instalación General

  1. Obtener el repositorio de configuraciones mediante control de versiones.
  2. Seleccionar el archivo de hardware adecuado según el procesador y entorno virtual.
  3. Ejecutar el comando de reconstrucción del sistema: sudo nixos-rebuild switch.

Técnicas para Personalizar la Confgiuración

Para detectar hardware automáticamente, se recomienda generar una configuración base con nixos-generate-config --show-hardware-config. Luego, se pueden importar módulos adicionales utilizando la directiva imports en el archivo principal. La gestión de controladores se realiza añadiendo entradas a la lista boot.extraModulePackages. Para mejorar la portabilidad, es aconsejable asignar puntos de montaje por UUID en lugar de nombres de dispositivo.

Etiquetas: NixOS Hardware Configuration Intel Apple Silicon ARM64

Publicado el 6-20 18:15