“我怀念Windows上的集成网络工具,所以给Linux造了一个。”这就是NMLinux项目的起点,一个由BornToBeRoot的Windows版NETworkManager激发的灵感,用Python和PySide6从零重写的桌面应用。它没有移植任何C#代码,而是独立实现的统一图形界面,把系统管理员常用的网络工具整合到一起。
新版本端出了两个远程桌面管理模块:VNC和RDP。VNC模块支持管理VNC连接配置文件,可按分组子组组织,类似SSH模块;连接时调用TigerVNC的vncviewer,兼容macOS的ARD远程桌面,DH30认证由查看器原生处理,全程不保存密码。RDP模块则面向Windows远程桌面,同样提供分组管理,外挂xfreerdp进程,连接时提示输入密码但不存储。配置项涵盖主机、端口、用户名、域、分辨率和全屏开关,并且能自动检测xfreerdp是否安装,给出对应发行版的安装指引。
界面的跨桌面兼容性也得到大幅加固。应用现在内置了21个来自Lucide的SVG图标,运行时通过QSvgRenderer渲染成#60a5fa蓝色,不再依赖系统图标主题。对于GNOME等GTK桌面,主程序会自动通过gsettings检测图标主题并应用到Qt,同时扩展了Wi-Fi、Traceroute、Speed Test等模块的备选图标链。在NixOS上,针对Breeze 6.x仅提供SVGZ格式的问题,Nix打包增加了qt6.qtsvg到插件路径,并将图标大小适配为22像素,还强制使用breeze主题以解决显示异常。
诊断工具方面,NMLinux嵌入了MTR(My Traceroute),运行mtr --report命令并解析输出,在界面上以表格展示每一跳的丢包率、RTT的Last/Avg/Best/Worst/Jitter,并根据丢包严重程度着色,支持持续模式和CSV、TXT导出。另一个是自带的网速测试,通过curl请求Cloudflare的测速端点,下载25MB、上传10MB并ping 1.1.1.1,结果保存为JSON,可记录最多五次测试,并生成下载/上传历史折线图。无需额外依赖,十分轻量。
只读防火墙查看器可以解析/etc/nftables.conf和/etc/iptables目录下的规则文件,无需root权限就能展示当前规则集。此外,应用还新增了一个“关于”页面,列出了所有依赖的第三方工具和API。项目借助Claude Code完成开发,作者也明确提示,NMLinux与系统自带的NetworkManager服务无关,名字来自对Windows工具NETworkManager的致敬。
对于常年跟命令行打交道的Linux管理员来说,NMLinux提供一个免费、统一的可视化工具箱,把远程连接、路由追踪、测速和防火墙浏览收进一个窗口。其开源属性也让任何人都能按需调整,正好回应了那些“从Windows迁来还惦记着那个工具箱”的念想。
热门跟贴