Commit Diff


commit - b1bc859966228e901e8d75cc437e30b380c53a26
commit + d2f7965cd3e7d910c3baeb18b60084a28dcadd9f
blob - a6eea048e312a0fd4d3f3c3118e4678eb242a5ab
blob + 3a4b4c5561a7d90f13f7570d1a9f060e6ec8cd3a
--- system/config.scm
+++ system/config.scm
@@ -16,6 +16,7 @@
   (gnu services xorg)
   (gnu services networking)
   (gnu services linux)             ; kernel-module-loader-service-type
+  (gnu services sddm)             ; sddm-service-type, sddm-configuration
   (gnu services security-token)   ; pcscd para YubiKey
   (gnu services nftables)         ; firewall
   ;; Transformaciones de paquetes
@@ -25,6 +26,7 @@
   ;; nonguix — kernel no-libre + NVIDIA
   (nongnu packages linux)
   (nongnu packages nvidia)
+  (nongnu services nvidia)        ; nvidia-service-type
   (nongnu system linux-initrd)
   ;; Canal personal — Mullvad VPN + Zen Browser
   (richard services mullvad)
@@ -125,9 +127,6 @@
         "quiet")                      ; boot silencioso
       %default-kernel-arguments))
 
-  ;; Cargar módulos NVIDIA al arranque
-  (kernel-loadable-modules (list nvidia-driver))
-
   ;; ── Bootloader ──────────────────────────────────────────────────
   (bootloader
     (bootloader-configuration
@@ -241,15 +240,10 @@
   (services
     (cons*
       ;; ── NVIDIA ──────────────────────────────────────────────────
-      ;; udev rules para que /dev/nvidia* tenga permisos correctos
-      (simple-service 'nvidia-udev udev-service-type
-                      (list nvidia-driver))
-      ;; Cargar módulos NVIDIA en el orden correcto
-      (service kernel-module-loader-service-type
-               '("nvidia"
-                 "nvidia_modeset"
-                 "nvidia_uvm"
-                 "nvidia_drm"))
+      ;; nvidia-service-type gestiona automáticamente:
+      ;;   udev rules, kernel modules, firmware, nvidia-modprobe setuid,
+      ;;   nvidia-powerd daemon y rutas de librería.
+      (service nvidia-service-type)
 
       ;; ── KDE Plasma ──────────────────────────────────────────────
       (service plasma-desktop-service-type)
@@ -259,8 +253,8 @@
                (sddm-configuration
                  (xorg-configuration
                    (xorg-configuration
-                     ;; Módulos: incluir nvidia + módulos default
-                     (modules (cons* nvidia-driver %default-xorg-modules))
+                     ;; nvda: paquete unificado Mesa+NVIDIA para el X server
+                     (modules (cons* nvda %default-xorg-modules))
                      ;; Aplicar el graft mesa→nvidia al servidor Xorg
                      (server  (transform xorg-server))
                      ;; NO se pone drivers '("nvidia") aquí —