Files
JoinDomainGUI/CHANGELOG.md
T
tuxgyverandClaude Opus 5 6fd7e71082 chore: version 0.1.5
Livre la sortie de domaine (bouton et commande `leave`), le nettoyage
optionnel des paquets sous Linux, le champ « Nom de la machine » en lecture
seule, l'assainissement de la sortie PowerShell et le controle du SRV
`_ldap._tcp.dc._msdcs`.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-09 07:15:35 +02:00

80 lines
4.6 KiB
Markdown

# Changelog
## [0.1.5] - 2026-09-09
### 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
- La jointure de domaine sous Windows échouait sans aucun message, avec un code
retour 0. Le script PowerShell était transmis sur l'entrée standard de
`powershell -Command -`, qui analyse stdin ligne par ligne : le bloc
`try`/`catch` final, dépourvu de saut de ligne terminal, restait en attente
dans le parseur et n'était jamais exécuté. PowerShell rendait donc la main
sans avoir tenté la jointure. Le script est désormais transmis d'un bloc via
`-EncodedCommand`.
- En l'absence de marqueur de succès comme d'échec, le message d'erreur se
réduisait à « code retour 0 », impossible à diagnostiquer. La sortie brute de
PowerShell est maintenant reportée à l'utilisateur (le mot de passe ne
transitant que par l'environnement, il n'y apparaît jamais).
## [0.1.3] - 2026-09-08
### Fixed
- Le binaire Windows produit sous Wine ne démarrait pas (« could not initialize
Qt platform plugin "windows" ») : le hook PySide6 de PyInstaller importe
QtCore pour localiser les plugins Qt, or Qt 6.10+ lie `Qt6Core.dll` à l'ICU
de Windows (`icuuc.dll`), absent de Wine. L'import échouait et aucun plugin
n'était embarqué. La compilation Windows épingle désormais `PySide6<6.10` et
vérifie explicitement l'import de PySide6 puis la présence de `qwindows.dll`.
### Added
- `Makefile` avec aide auto-documentée par catégories (`make help`).
- `packaging/build_windows_wine.sh` : production du `.exe` Windows depuis Linux.
- `README.md`.
- `make publish` : pousse branche et tags vers tous les dépôts Gitea configurés.
## [0.1.2] - 2026-09-04
### Changed
- Recompilation du binaire Linux (aucun changement fonctionnel depuis la 0.1.1).
## [0.1.1] - 2026-09-04
### Added
- Diagnostic réseau complet pour la jointure Active Directory : résolution DNS, enregistrements SRV (LDAP/Kerberos), ping des contrôleurs de domaine, test des ports AD (53/88/389/445/464/636/3268), synchronisation NTP, présence des outils requis.
- Jointure de domaine via `realmd` sous Linux et PowerShell `Add-Computer` sous Windows, avec bascule automatique de backend selon la plateforme.
- Installation automatique des prérequis Linux manquants (`apt-get install realmd sssd adcli samba-common-bin packagekit`), déclenchable en un clic ou via la CLI.
- Interface graphique PySide6 avec trois onglets : Diagnostic réseau, Rejoindre le domaine, À propos.
- Interface en ligne de commande (`diagnose`, `join`, `install-prereqs`) fonctionnant sans dépendance à PySide6, avec sortie colorée (détection tty, `NO_COLOR`/`FORCE_COLOR`).
- Scripts de packaging PyInstaller pour produire des binaires autonomes Linux et Windows (`packaging/build_linux.sh`, `packaging/build_windows.bat`).
- Mot de passe jamais transmis en argument de ligne de commande (toujours via stdin ou variable d'environnement du sous-processus) pour ne pas apparaître dans la liste des processus.