
nmlinux v1.7.11
Boîte à outils réseau unifiée pour Linux — Python 3 + PySide6
NMLinux · v1.7.12
Une boîte à outils réseau unifiée pour Linux et macOS — inspectez, connectez, diagnostiquez.
NMLinux est une interface graphique unique et unifiée qui regroupe 29 modules réseau dans une seule fenêtre : surveillance des interfaces, Wi-Fi, DNS, terminal SSH, visualiseur de pare-feu, carte de topologie, traceroute, et plus encore. Construit de zéro en Python et PySide6 (Qt 6), avec 8 langues d'interface et aucune dépendance externe au-delà des outils système standard.
[!NOTE] NMLinux n'est pas lié au démon système Linux
/usr/bin/NetworkManager(NetworkManager de Red Hat/GNOME). NMLinux est un projet autonome construit de zéro en Python et PySide6.
Construit avec Claude Code (Anthropic) et la contribution de son auteur.
Processus de développement
NMLinux est construit avec l'assistance de l'IA — Claude Code, plus précisément — et cela n'est caché nulle part dans ce dépôt. Presque tout projet logiciel sérieux utilise aujourd'hui l'IA quelque part dans son pipeline, qu'il le dise ou non. Donc « l'IA a-t-elle été impliquée ? » n'est pas la question intéressante. La question intéressante est : est-ce que quelque chose détecte les erreurs lorsque l'IA se trompe ?
Voici ce qui le fait, si vous préférez vérifier plutôt que de me croire sur parole :
- 162 tests —
pytest tests/ -v. Logique pure plus une poignée de vrais tests de widgets Qt (menus, tableaux), sans simuler les parties intéressantes. docs/Decisions-Techniques.md— chaque décision technique non évidente, les alternatives rejetées, et les bogues (y compris ceux introduits par l'IA) trouvés et corrigés, avec le raisonnement consigné.docs/Architecture.mdetdocs/Carte-des-Modules.md— la structure réelle du code, maintenue en synchronisation avec ce qui est livré.- Une vérification de cohérence i18n exécutée avant chaque version pour détecter les clés de traduction manquantes dans les 8 langues prises en charge.
Rien de tout cela n'existe parce que l'IA ne peut pas être digne de confiance. Cela existe parce que rien ne devrait être livré sans un processus qui le vérifie — code écrit à la main inclus. Jugez le résultat et la manière dont il est vérifié, pas l'outil qui a aidé à l'écrire.
Vous avez trouvé un bogue quand même ? C'est utile, pas embarrassant — ouvrez un problème.
Communauté
Les discussions GitHub sont ouvertes — partagez vos retours, signalez des idées, posez des questions, ou dites simplement bonjour. L'auteur a plus de 30 ans d'expérience en infrastructure et exploitation, et a construit cet outil parce qu'un bon logiciel, gratuit et simple devrait aussi exister pour Linux.
Captures d'écran
Captures d'écran Linux de la v1.2.7 — captures d'écran macOS de la v1.3.5. L'application dispose désormais de 29 modules et de 8 langues d'interface (FR/EN/ES/DE/IT/PT/JA/ZH).
Linux (KDE)
| Tableau de bord | Topologie |
|---|---|
![]() | ![]() |
| Traceroute | Wi-Fi |
|---|---|
![]() | ![]() |
macOS
| Tableau de bord | Traceroute |
|---|---|
![]() | ![]() |
Journal des modifications
v1.7.12 — 2026-08-12
- Traceroute — correctif : sous Flatpak (v1.7.11, voir ci-dessous — désormais retiré),
traceroutese résolvait toujours surPATHvia le shim hôte même lorsque l'hôte n'avait pas de véritable binairetracerouteinstallé, donc le worker ne retombait jamais surtracepathet la trace se terminait instantanément sans aucun saut et sans erreur affichée. Il retombe désormais surtracepathchaque fois quetraceroutene produit aucune sortie analysable, quelle que soit la raison de l'échec. - Terminal SSH — correctif askpass : lorsque
DISPLAY/WAYLAND_DISPLAYsont définis (toute session graphique) et que ssh n'a pas de tty propre, il peut essayer$SSH_ASKPASSpour l'invite de mot de passe au lieu du terminal intégré — échouant silencieusement l'authentification si aucun assistant askpass n'est installé.SSH_ASKPASS_REQUIRE=neverforce désormais les invites de mot de passe à toujours passer par le terminal lui-même. - Packaging Flatpak retiré : le manifeste Linux KDE local livré dans la v1.7.11 est abandonné. L'enquête sur le bogue d'invite de mot de passe SSH ci-dessus a révélé une limitation au niveau du noyau : un processus relayé via
flatpak-spawn --hostne peut jamais devenir le propriétaire du terminal de contrôle du pty transféré (TIOCSCTTYrefusé avecEPERM— une session différente et non liée le possède déjà ; il s'agit d'une frontière de sécurité intentionnelle du noyau, pas d'un bogue). La seule solution de contournement (script, allouant un nouveau pty) corrige l'invite de mot de passe mais casse la propagation en direct du redimensionnement du terminal pour cette session — jugée comme un compromis pire que de ne pas livrer Flatpak du tout. AUR et l'AppImage sont les chemins d'installation Linux pris en charge à l'avenir.
v1.7.11 — 2026-08-03
- Packaging Flatpak (KDE Linux) : un manifeste de construction local sous
packaging/flatpak/cible KDE Linux et d'autres distributions exclusivement Flatpak. Les outils CLI hôtes auxquels nmlinux délègue (nmcli,pkexec,mount.cifs,ssh,nmap, …) sont pontés via des shimsflatpak-spawn --hostsurPATHau lieu de sandboxer chacun individuellement ; PySide6 provient deio.qt.PySide.BaseAppde Flathub plutôt que de la roue PyPI. Non publié sur Flathub — un seul bundle.flatpakest construit avecpackaging/flatpak/build-bundle.shet joint à chaque version, de la même manière que l'AppImage l'est déjà. Abandonné dans la v1.7.12 — voir ci-dessus.





