commit - 1b710383efacffcdb1b2c5ef7781ca1690bde4ef
commit + fe62a713b00ff6aa197d53f336d7c72a58973c5d
blob - 2808f8c3a8cb881793d0d1edab61e4ed400636a6
blob + 0aa9c7f8a8218e69c1a54eeca95d272ae2dc8e20
--- NOTES.md
+++ NOTES.md
escenario de coexistencia con `git` en el mismo repo (ronda 2026-07-16,
ya obsoleta) -- ahora documenta que `/nixdots` es un work tree de `got`
sin `.git`, y que `programs.git` se mantiene a nivel de sistema solo por
- otros repos y porque `got` resuelve el autor de los commits leyendo
- `~/.gitconfig` (`programs.git.settings.user.*`) -- confirmado en vivo:
- `got log` mostró `ale <ale_bnes@tuta.com>` sin declarar autor en ningún
- `got.conf`.
+ otros repos ajenos a `/nixdots`.
+### BUG real (de esta misma migración), corregido: `got commit` no encontraba autor
+
+El primer `got commit` real sobre `/nixdots` falló con `GOT_AUTHOR
+environment variable is not set`. Según `got.1`/`got.conf.5`, el orden de
+resolución del autor es: variable de entorno `GOT_AUTHOR` → `got.conf` del
+repo → `user.name`/`user.email` en el `.git/config` del propio repo → **solo
+como último recurso**, `~/.gitconfig` global de Git. Este sistema gestiona
+la identidad de git vía home-manager en formato **XDG**
+(`~/.config/git/config`, confirmado con `cat`) -- **no** existe
+`~/.gitconfig` en `$HOME`, así que `got` no tenía de dónde sacar el autor
+por ningún lado. (La suposición inicial de esta misma sección, de que `got`
+sí leía la identidad desde `~/.gitconfig`/`programs.git`, era incorrecta --
+corregida acá tras reproducir el fallo en vivo.)
+
+**Fix:** declarado el autor directo en `got.conf` del repo bare
+(`~/nixdots.git/got.conf`):
+
+```
+author "ale <ale_bnes@tuta.com>"
+```
+
+Es la vía nativa de `got` (tiene prioridad sobre cualquier config de git) y
+no depende de dónde ni cómo esté declarada la identidad de git en el
+sistema. Confirmado con un commit real: `got log` mostró
+`ale <ale_bnes@tuta.com>` como autor sin volver a pedir `GOT_AUTHOR`.
+
### Qué NO se tocó
- El paquete `git` sigue en `environment.systemPackages`
blob - 90821214fdc6efcdfca67570b5c6ce8e83dfe219
blob + 9f22bde8a639d0119970f295a704599bb76ba36c
--- modules/desktop.nix
+++ modules/desktop.nix
# Reusa ssh-agent para clone/fetch/send por ssh://, igual que git.
# "got commit" NO soporta firma GPG ni SSH (solo "got tag -S" firma,
# y solo con SSH) -- los commits de este repo quedan sin firmar
- # desde la migración; programs.git sigue instalado a nivel de
- # sistema para otros repos y porque got lee autor/email de
- # ~/.gitconfig (programs.git.settings.user.*, ver home.nix).
+ # desde la migración. El autor de los commits está declarado en
+ # got.conf del repo bare (~/nixdots.git/got.conf), NO se resuelve
+ # de programs.git/~/.gitconfig -- got solo lee el ~/.gitconfig
+ # clásico como último recurso, y este sistema usa el config de git
+ # en formato XDG (~/.config/git/config, ver home.nix), que got no
+ # mira. programs.git sigue instalado a nivel de sistema solo por
+ # otros repos ajenos a /nixdots.
mpv # reproductor de video/audio. Verificado con `nix eval`/`nix build`
# contra el nixpkgs real (no de memoria) que el `pkgs.mpv` de acá ya