Volver a actualizaciones
Nuevo releaseAug 3, 2026

nmlinux v1.7.9

Kit de herramientas de red unificado para Linux — Python 3 + PySide6

Compartir

NMLinux · v1.7.12

Version Python License: GPL-2.0 Platform Languages Donate Bitcoin

Un kit de herramientas de red unificado para Linux y macOS — inspecciona, conecta, diagnostica.

NMLinux es una interfaz gráfica única y unificada que reúne 29 módulos de red en una sola ventana: monitoreo de interfaces, Wi-Fi, DNS, terminal SSH, visor de firewall, mapa de topología, traceroute y más. Construido desde cero en Python y PySide6 (Qt 6), con 8 idiomas de interfaz y sin dependencias externas más allá de las herramientas estándar del sistema.

[!NOTE] NMLinux no está relacionado con el demonio del sistema Linux /usr/bin/NetworkManager (NetworkManager de Red Hat/GNOME). NMLinux es un proyecto independiente construido desde cero en Python y PySide6.

Construido con Claude Code (Anthropic) y la contribución de su autor.


Proceso de desarrollo

NMLinux se construye con asistencia de IA — concretamente Claude Code — y eso no se oculta en ningún lugar de este repositorio. Casi todos los proyectos de software serios usan IA en algún punto de su proceso hoy en día, lo digan o no. Así que «¿se usó IA?» no es la pregunta interesante. La pregunta interesante es: ¿hay algo que lo detecte cuando la IA se equivoca?

Esto es lo que lo hace, si prefieres comprobarlo antes que fiarte de mi palabra:

  • 162 pruebas — pytest tests/ -v. Lógica pura más un puñado de pruebas reales de widgets Qt (menús, tablas), sin simular las partes interesantes.
  • docs/Decisions-Techniques.md — cada decisión técnica no obvia, las alternativas rechazadas y los errores (incluidos los introducidos por IA) que se encontraron y corrigieron, con el razonamiento documentado.
  • docs/Architecture.md y docs/Carte-des-Modules.md — la estructura real del código, mantenida sincronizada con lo que se publica.
  • Una comprobación de coherencia i18n ejecutada antes de cada lanzamiento para detectar claves de traducción ausentes en los 8 idiomas soportados.

Nada de eso existe porque no se pueda confiar en la IA. Existe porque nada debería publicarse sin un proceso que lo verifique — incluido el código escrito a mano. Juzga el resultado y cómo se verifica, no la herramienta que ayudó a escribirlo.

¿Encontraste un error de todos modos? Eso es útil, no vergonzoso — abre un issue.


Comunidad

GitHub Discussions está abierto — comparte comentarios, reporta ideas, haz preguntas o simplemente saluda. El autor tiene más de 30 años en infraestructura y operaciones, y construyó esta herramienta porque el software bueno, gratuito y sencillo también debería existir para Linux.


Capturas de pantalla

Capturas de Linux de la v1.2.7 — capturas de macOS de la v1.3.5. La aplicación ahora tiene 29 módulos y 8 idiomas de interfaz (FR/EN/ES/DE/IT/PT/JA/ZH).

Linux (KDE)

PanelTopología
PanelTopología
TracerouteWi-Fi
TracerouteWi-Fi

macOS

PanelTraceroute
Panel de macOSTraceroute de macOS

Registro de cambios

v1.7.12 — 2026-08-12

  • Traceroute — corrección: bajo Flatpak (v1.7.11, ver más abajo — ahora eliminado), traceroute siempre se resolvía en PATH a través del shim del host incluso cuando el host no tenía un binario traceroute real instalado, por lo que el worker nunca recurría a tracepath y el trazado terminaba al instante sin saltos y sin mostrar ningún error. Ahora recurre a tracepath siempre que traceroute no produzca ninguna salida analizable, independientemente del motivo del fallo.
  • Terminal SSH — corrección de askpass: cuando DISPLAY/WAYLAND_DISPLAY están definidas (cualquier sesión gráfica) y ssh no tiene una tty limpia, puede intentar usar $SSH_ASKPASS para la solicitud de contraseña en lugar de la terminal integrada — fallando silenciosamente la autenticación si no hay ningún helper askpass instalado. SSH_ASKPASS_REQUIRE=never ahora obliga a que las solicitudes de contraseña pasen siempre por la propia terminal.
  • Empaquetado Flatpak eliminado: el manifiesto local para KDE Linux incluido en la v1.7.11 se ha descontinuado. La investigación del error de solicitud de contraseña SSH mencionado arriba reveló una limitación a nivel de kernel: un proceso redirigido a través de flatpak-spawn --host nunca puede convertirse en el propietario de la terminal de control del pty reenviado (TIOCSCTTY rechazado con EPERM — una sesión diferente y no relacionada ya lo posee; se trata de un límite de seguridad intencional del kernel, no de un error). La única alternativa viable (script, asignando un pty nuevo) corrige la solicitud de contraseña pero rompe la propagación del redimensionamiento de la terminal en vivo para esa sesión — considerada un peor equilibrio que no distribuir Flatpak en absoluto. AUR y AppImage son las vías de instalación en Linux compatibles a partir de ahora.

v1.7.11 — 2026-08-03

  • Empaquetado Flatpak (KDE Linux): un manifiesto de compilación local en packaging/flatpak/ está dirigido a KDE Linux y otras distribuciones solo-Flatpak. Las herramientas CLI del host a las que nmlinux llama externamente (nmcli, pkexec, mount.cifs, ssh, nmap, …) se conectan a través de shims flatpak-spawn --host en PATH en lugar de aislar cada una individualmente; PySide6 proviene de io.qt.PySide.BaseApp de Flathub en lugar del wheel de PyPI. No está publicado en Flathub — se compila un único paquete .flatpak con packaging/flatpak/build-bundle.sh y se adjunta a cada lanzamiento, de la misma manera que ya se hace con AppImage. Descontinuado en la v1.7.12 — ver más arriba.

v1.7.10 — 2026-08-03

Categorías