feat: sortie de domaine, et corrections issues d'un echec reel de jointure

Sortie de domaine (demandee) :
- Bouton « Quitter le domaine » et commande CLI `leave`, via Remove-Computer
  sous Windows et realm leave sous Linux.
- Nettoyage optionnel des paquets sous Linux. packagekit est exclu de la
  liste : il sert aussi au gestionnaire de logiciels du bureau.
- Le champ « Nom de la machine » passe en lecture seule : il ne peut pas
  etre modifie depuis cette fenetre.

Corrections tirees de la sortie PowerShell rapportee :
- Les barres de progression etaient serialisees en CLIXML et polluaient le
  journal ; les accents arrivaient illisibles (console OEM lue en cp1252).
  Progression desactivee, console en UTF-8, CLIXML residuel filtre.
- Le marqueur interne JOIN_FAILURE: n'apparait plus dans le message affiche.

Diagnostic :
- Ajout du SRV `_ldap._tcp.dc._msdcs`, celui que DsGetDcName utilise pour
  localiser un DC. Son absence donne exactement l'erreur rencontree, et le
  diagnostic ne le verifiait pas.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-09 07:11:20 +02:00
co-authored by Claude Opus 5
parent 04a7b5dc64
commit eba4d0b843
9 changed files with 547 additions and 78 deletions
+31
View File
@@ -1,5 +1,36 @@
# Changelog
## [Non publié]
### Added
- Bouton « Quitter le domaine » dans l'interface et commande `leave` en ligne de
commande. Sous Windows via `Remove-Computer` (le poste rejoint le groupe de
travail WORKGROUP), sous Linux via `realm leave`.
- Option de nettoyage à la sortie du domaine sous Linux (case à cocher, ou
`--remove-packages`) : désinstalle `realmd`, `sssd`, `adcli` et
`samba-common-bin`. `packagekit` est délibérément conservé — il est installé
comme prérequis mais sert aussi au gestionnaire de logiciels du bureau.
- Vérification de l'enregistrement SRV `_ldap._tcp.dc._msdcs`, celui que Windows
interroge (DsGetDcName) pour localiser un contrôleur lors d'une jointure. Son
absence provoque « Le domaine spécifié n'existe pas ou n'a pas pu être
contacté » alors même que le domaine résout et que les DC répondent au ping :
le diagnostic ne pouvait pas le signaler.
### Changed
- Le champ « Nom de la machine » est désormais affiché en lecture seule : il ne
peut pas être modifié depuis cette fenêtre (sous Linux `realm join` reprend le
nom d'hôte système, sous Windows le renommage relève des paramètres système).
Une infobulle indique la commande à utiliser selon la plateforme.
### Fixed
- La sortie de PowerShell était polluée par la sérialisation `#< CLIXML` de ses
barres de progression, et les accents des messages d'erreur arrivaient
illisibles (console en codepage OEM lue comme du cp1252). Les indicateurs de
progression sont désactivés, la console bascule en UTF-8, et les fragments
CLIXML résiduels sont filtrés.
- Le marqueur interne `JOIN_FAILURE:` n'est plus affiché en préfixe du message
d'erreur montré à l'utilisateur.
## [0.1.4] - 2026-09-08
### Fixed