अपडेट पर वापस जाएँ
New releaseAug 3, 2026

nmlinux v1.7.11

लिनक्स के लिए एकीकृत नेटवर्क टूलकिट — Python 3 + PySide6

साझा करें

NMLinux · v1.7.12

Version Python License: GPL-2.0 Platform Languages Donate Bitcoin

Linux और macOS के लिए एक एकीकृत नेटवर्क टूलकिट — निरीक्षण करें, कनेक्ट करें, निदान करें।

NMLinux एक एकल, एकीकृत GUI है जो 29 नेटवर्क मॉड्यूल को एक ही विंडो में एक साथ लाता है: इंटरफ़ेस मॉनिटरिंग, वाई-फाई, DNS, SSH टर्मिनल, फ़ायरवॉल व्यूअर, टोपोलॉजी मैप, ट्रेसरूट, और बहुत कुछ। इसे Python और PySide6 (Qt 6) में शुरू से बनाया गया है, जिसमें 8 इंटरफ़ेस भाषाएँ हैं और मानक सिस्टम टूल्स के अलावा कोई बाहरी निर्भरता नहीं है।

[!NOTE] NMLinux का Linux सिस्टम डेमॉन /usr/bin/NetworkManager (Red Hat/GNOME द्वारा NetworkManager) से कोई संबंध नहीं है। NMLinux एक स्टैंडअलोन प्रोजेक्ट है जिसे Python और PySide6 में शुरू से बनाया गया है।

Claude Code (Anthropic) के साथ और इसके लेखक के योगदान से निर्मित।


विकास प्रक्रिया

NMLinux AI सहायता से बनाया गया है — विशेष रूप से Claude Code — और यह इस रेपो में कहीं छिपा नहीं है। आज लगभग हर गंभीर सॉफ़्टवेयर प्रोजेक्ट अपनी पाइपलाइन में कहीं न कहीं AI का उपयोग करता है, चाहे वह कहे या न कहे। इसलिए "क्या AI शामिल था" दिलचस्प सवाल नहीं है। दिलचस्प सवाल यह है: जब AI कुछ गलत करता है, तो क्या उसे पकड़ने वाला कुछ मौजूद है?

यदि आप मेरी बात मानने के बजाय जाँचना चाहें, तो यही इसे पकड़ता है:

  • 162 टेस्टpytest tests/ -v. शुद्ध लॉजिक के साथ कुछ वास्तविक Qt विजेट टेस्ट (मेनू, टेबल) भी; दिलचस्प हिस्सों को मॉक करके नहीं हटाया गया।
  • docs/Decisions-Techniques.md — हर गैर-स्पष्ट तकनीकी निर्णय, जिन विकल्पों को अस्वीकार किया गया, और वे बग (AI द्वारा लाए गए बग सहित) जो पाए गए और ठीक किए गए, तर्क सहित लिखे गए।
  • docs/Architecture.md और docs/Carte-des-Modules.md — कोड की वास्तविक संरचना, जो रिलीज़ होने वाले कोड के साथ समकालिक रखी जाती है।
  • i18n स्थिरता जाँच जो हर रिलीज़ से पहले 8 समर्थित भाषाओं में लापता अनुवाद कुंजियों को पकड़ने के लिए चलाई जाती है।

यह सब इसलिए मौजूद नहीं है कि AI पर भरोसा नहीं किया जा सकता। यह इसलिए मौजूद है क्योंकि बिना जाँच प्रक्रिया के कुछ भी रिलीज़ नहीं होना चाहिए — हाथ से लिखा कोड भी शामिल है। आउटपुट और उसके सत्यापन के तरीके को परखें, न कि उस टूल को जिसने इसे लिखने में मदद की।

फिर भी कोई बग मिला? यह उपयोगी है, शर्मनाक नहीं — एक issue खोलें


समुदाय

GitHub Discussions खुले हैं — प्रतिक्रिया साझा करें, विचार रिपोर्ट करें, प्रश्न पूछें, या बस नमस्ते कहें। लेखक के पास इंफ्रास्ट्रक्चर और ऑपरेशंस में 30+ वर्षों का अनुभव है, और उन्होंने यह टूल इसलिए बनाया क्योंकि अच्छा, मुफ्त और सरल सॉफ़्टवेयर Linux के लिए भी होना चाहिए।


स्क्रीनशॉट

Linux स्क्रीनशॉट v1.2.7 से — macOS स्क्रीनशॉट v1.3.5 से। ऐप में अब 29 मॉड्यूल और 8 इंटरफ़ेस भाषाएँ (FR/EN/ES/DE/IT/PT/JA/ZH) हैं।

Linux (KDE)

DashboardTopology
DashboardTopology
TracerouteWi-Fi
TracerouteWi-Fi

macOS

DashboardTraceroute
macOS DashboardmacOS Traceroute

चेंजलॉग

v1.7.12 — 2026-08-12

  • Traceroute — फिक्स: Flatpak (v1.7.11, नीचे देखें — अब हटा दिया गया) के तहत, traceroute हमेशा होस्ट शिम के माध्यम से PATH पर हल होता था, भले ही होस्ट पर कोई वास्तविक traceroute बाइनरी स्थापित न हो, इसलिए वर्कर कभी tracepath पर फॉलबैक नहीं करता था और ट्रेस बिना किसी हॉप और बिना किसी त्रुटि संदेश के तुरंत समाप्त हो जाता था। अब जब भी traceroute कोई पार्स करने योग्य आउटपुट नहीं देता है, तो यह tracepath पर फॉलबैक करता है, चाहे वह किसी भी कारण से विफल हुआ हो।
  • SSH टर्मिनल — askpass फिक्स: जब DISPLAY/WAYLAND_DISPLAY सेट होते हैं (किसी भी GUI सत्र में) और ssh के पास साफ tty नहीं होती, तो यह एम्बेडेड टर्मिनल के बजाय पासवर्ड प्रॉम्प्ट के लिए $SSH_ASKPASS का उपयोग कर सकता है — यदि कोई askpass हेल्पर स्थापित न हो तो साइलेंट रूप से प्रमाणीकरण विफल हो जाता है। SSH_ASKPASS_REQUIRE=never अब पासवर्ड प्रॉम्प्ट को हमेशा टर्मिनल के माध्यम से ही जाने के लिए बाध्य करता है।
  • Flatpak पैकेजिंग हटाई गई: v1.7.11 में शामिल स्थानीय KDE Linux मेनिफेस्ट बंद कर दिया गया है। ऊपर दिए गए SSH पासवर्ड-प्रॉम्प्ट बग की जाँच में एक कर्नेल-स्तरीय सीमा सामने आई: flatpak-spawn --host के माध्यम से रिले किया गया प्रोसेस कभी भी फॉरवर्ड की गई pty का नियंत्रण-टर्मिनल स्वामी नहीं बन सकता (TIOCSCTTY को EPERM के साथ अस्वीकार कर दिया जाता है — एक अलग, असंबंधित सत्र इसका स्वामी है; यह एक जानबूझकर बनाई गई कर्नेल सुरक्षा सीमा है, कोई बग नहीं)। केवल काम करने वाला वर्कअराउंड (script, एक नई pty आवंटित करना) पासवर्ड प्रॉम्प्ट तो ठीक करता है, लेकिन उस सत्र के लिए लाइव टर्मिनल-रीसाइज़ प्रसारण को तोड़ देता है — जिसे Flatpak को बिल्कुल न भेजने की तुलना में बदतर व्यापार-विनिमय माना गया। आगे जाने के लिए AUR और AppImage ही समर्थित Linux इंस्टॉल पथ हैं।

v1.7.11 — 2026-08-03

  • Flatpak पैकेजिंग (KDE Linux): packaging/flatpak/ के अंतर्गत एक स्थानीय बिल्ड मेनिफेस्ट KDE Linux और अन्य केवल-Flatpak डिस्ट्रो को लक्षित करता है। nmlinux जिन होस्ट CLI टूल्स को कॉल करता है (nmcli, pkexec, mount.cifs, ssh, nmap, …), उन्हें प्रत्येक को अलग-अलग सैंडबॉक्स करने के बजाय PATH पर flatpak-spawn --host शिम के माध्यम से ब्रिज किया जाता है; PySide6 PyPI व्हील के बजाय Flathub के io.qt.PySide.BaseApp से आता है। Flathub पर प्रकाशित नहीं किया गया — इसके बजाय packaging/flatpak/build-bundle.sh के साथ एक एकल .flatpak बंडल बनाया जाता है और हर रिलीज़ के साथ संलग्न किया जाता है, ठीक उसी तरह जैसे AppImage पहले से है। v1.7.12 में बंद कर दिया गया — ऊपर देखें।

v1.7.10 — 2026-08-03

  • SSH टर्मिनल — फिक्स: एक रेस कंडीशन ठीक की गई जिसमें PTY गलत (डिफ़ॉल्ट 24×80) आकार पर शुरू हो सकती थी, यदि सत्र लॉन्च होने के समय टर्मिनल विजेट का वास्तविक आकार ज्ञात नहीं था, जिससे रीसाइज़ अनुरोध चुपचाप छूट जाता था। इससे दूरस्थ फुल-स्क्रीन ऐप्स (जैसे Claude Code CLI, htop, vim) वास्तविक विंडो आकार से बेमेल हो जाते थे, जिससे स्क्रीन के नीचे पुराना/अवशिष्ट टेक्स्ट रह जाता था जो केवल नए आउटपुट के स्क्रॉल होने पर साफ़ होता था। उपयोगकर्ता द्वारा रिपोर्ट किया गया; एक वास्तविक इंटरैक्टिव सत्र के साथ पुनरुत्पादित किया गया।

v1.7.9 — 2026-08-02

  • SSH टर्मिनल — कॉपी/पेस्ट: माउस से टेक्स्ट चुनें (क्लिक-ड्रैग, हाइलाइटेड), Ctrl+Shift+C या राइट-क्लिक मेनू से कॉपी करें; Ctrl+Shift+V से पेस्ट करें (पहले से मौजूद)। पहले कॉपी करना असंभव था — कोई टेक्स्ट चयन मौजूद ही नहीं था।
  • SSH टर्मिनल — एक साथ कई सत्र: SSH पृष्ठ अब प्रत्येक कनेक्शन को एक साझा सत्र के बजाय अपने स्वयं के टैब में खोलता है। सहेजे गए कनेक्शन से पुनः कनेक्ट करना — यहाँ तक कि एक ही कनेक्शन को दो बार — पहले सक्रिय सत्र को समाप्त कर देता था बिना कोई कार्यशील विकल्प खोले; अब हर कनेक्ट क्रिया एक नया, स्वतंत्र टैब खोलती है।

v1.7.8 — 2026-07-14

  • स्पीड टेस्ट — नया LAN (iperf3) टैब: मौजूदा इंटरनेट स्पीड टेस्ट के साथ, एक नया टैब क्लाइंट-केवल iperf3 परीक्षण चलाता है — या तो बंडल की गई सार्वजनिक सर्वर सूची (26 देशों) के विरुद्ध या सहेजे गए कस्टम सर्वर (जैसे आंतरिक संगठन सर्वर) के विरुद्ध। TCP/UDP, IPv4/IPv6/auto, और रिवर्स (डाउनलोड) दिशा का समर्थन करता है, जिसमें UDP परीक्षणों के लिए jitter/loss दिखाया जाता है। issue #6 द्वारा सुझाया गया।
  • नई वैकल्पिक निर्भरता: iperf3 — LAN टैब सक्षम करने के लिए इंस्टॉल करें; टैब एक बैनर दिखाता है और अन्यथा अक्षम रहता है।

v1.7.6 — 2026-07-05

  • एसेट इन्वेंट्री — राइट-क्लिक रीफ़्रेश: पहले से स्कैन की गई एक या अधिक पंक्तियों पर राइट-क्लिक करें (मल्टी-सेलेक्ट समर्थित) और "Refresh selected" चुनें ताकि पूर्ण नेटवर्क स्कैन दोबारा चलाने के बजाय केवल उन्हीं होस्ट्स को मौके पर पुनः स्कैन किया जा सके।
  • एसेट इन्वेंट्री — SSH प्रमाणीकरण-विफलता फीडबैक: अस्वीकृत SSH लॉगिन अब चुपचाप विफल होने के बजाय "SSH auth failed" दिखाता है, बिना Nmap द्वारा पता किए गए होस्टनाम/OS बेसलाइन को खोए — एक वास्तविक Synology NAS के विरुद्ध पुष्टि की गई जहाँ DSM का Auto Block सही पासवर्ड को अस्वीकार कर देता था जब पहले अन्य कॉन्फ़िगर किए गए क्रेडेंशियल सेट आज़माए गए थे।

v1.7.5 — 2026-07-04

  • पिंग मॉनिटर — सहेजे गए लक्ष्य निर्देशिका: एक नया बायाँ पैनल आपको पिंग लक्ष्यों (नाम, होस्ट, अंतराल) को एक स्थायी सूची में सहेजने देता है, ताकि मॉनिटर किए जा रहे होस्ट ऐप रीस्टार्ट के बाद भी बने रहें, उन्हें दोबारा टाइप करने की आवश्यकता न हो। प्रत्येक सक्रिय रूप से मॉनिटर की गई पंक्ति पर एक ★ बटन उस होस्ट को सत्र के किसी भी बिंदु पर निर्देशिका में सहेज देता है — ऐप के अप्रत्याशित रूप से बंद होने से पहले योजना बनाने की आवश्यकता नहीं।
  • पिंग मॉनिटर — "Start monitoring": एक सहेजे गए लक्ष्य को चुनें और उसके सहेजे गए अंतराल का पुनः उपयोग करते हुए एक क्लिक से मॉनिटरिंग शुरू करें।

v1.7.4 — 2026-07-04

  • एसेट इन्वेंट्री — असंगत स्कैन परिणाम ठीक किए गए: लाइवनेस जाँच एकल 1-सेकंड-टाइमआउट पिंग भेजती थी बिना किसी पुनः प्रयास के, जो स्कैनर के अपने समवर्ती लोड (एक साथ 40 होस्ट तक जाँचे जाते हैं) के तहत या वाई-फाई होस्ट के बीकनों के बीच संक्षिप्त रूप से निष्क्रिय होने पर एक वास्तविक डिवाइस को छोड़ सकती थी — एक वास्तविक सबनेट के विरुद्ध लाइव पुष्टि की गई जो एक ही रेंज के बार-बार चलाए जाने पर अलग-अलग डिवाइस संख्या लौटाता था। अब जाँच TCP पोर्ट प्रोब पर फॉलबैक करने से पहले पिंग का पुनः प्रयास करती है।
  • एसेट इन्वेंट्री — नया "Refresh empty" बटन: स्कैन के बाद, पूरी रेंज दोबारा स्कैन करने के बजाय केवल उन IPs को पुनः स्कैन करें जिन्होंने कोई डेटा नहीं लौटाया; नए पाए गए होस्ट मौजूदा परिणामों में विलय कर दिए जाते हैं।

v1.7.3 — 2026-07-03

  • SMB — राइट-क्लिक मेनू से शेयर माउंट करें: SMB टैब में किसी शेयर पर राइट-क्लिक करें और उसे एक स्थिर स्थानीय पथ (~/mnt/<host>_<share>) पर माउंट करने के लिए Mount/Unmount चुनें, जो टर्मिनल और किसी भी अन्य ऐप से उपयोग योग्य हो — कोई क्षणिक ब्राउज़ दृश्य नहीं। केवल सत्र-आधारित (कोई fstab/systemd स्थायित्व नहीं), क्रेडेंशियल मौजूदा उपयोगकर्ता/पासवर्ड फ़ील्ड से पुनः उपयोग किए जाते हैं। Linux प्रतिबंधित-अनुमति क्रेडेंशियल फ़ाइल के साथ pkexec mount -t cifs का उपयोग करता है (कभी ps के माध्यम से उजागर नहीं होती); macOS सीधे mount_smbfs का उपयोग करता है। जब सर्वर डिफ़ॉल्ट नेगोशिएशन को अस्वीकार करता है (पुराने NAS इकाइयों में सामान्य), तो पुराने SMB डायलेक्ट (vers=2.0) के साथ स्वचालित रूप से पुनः प्रयास करता है — दोनों प्रयास एक समर्पित हेल्पर प्रक्रिया के माध्यम से एक ही प्रमाणीकरण प्रॉम्प्ट के अंतर्गत होते हैं।
  • नई वैकल्पिक निर्भरता: SMB माउंटिंग के लिए cifs-utils (Linux); macOS में अंतर्निहित।

v1.7.2 — 2026-07-03

  • macOS इंस्टॉल — एक बेयर Mac पर पाए गए दो बूटस्ट्रैप बग ठीक किए गए: bootstrap_macos.sh अब Homebrew इंस्टॉलर पर NONINTERACTIVE=1 बाध्य नहीं करता, जो किसी भी नए एडमिन खाते पर sudo पासवर्ड माँगने के बजाय तुरंत रुक जाता था; प्रलेखित वन-लाइनर अब स्क्रिप्ट को सीधे bash में पाइप करने के बजाय पहले डाउनलोड करता है, क्योंकि नेस्टेड इंटरैक्टिव चरण (Xcode CLT इंस्टॉलर, Homebrew का स्वयं का sudo प्रॉम्प्ट) पाइप किए जाने पर बाहरी स्क्रिप्ट की अपनी इनपुट धारा में हस्तक्षेप कर सकते थे।
  • यूनिवर्सल राइट-क्लिक मेनू — SMB जोड़ा गया: SmbNfsPage एकमात्र लक्ष्य पृष्ठ था जो v1.7.0 में भेजी गई अंतर-मॉड्यूल राइट-क्लिक प्रणाली से गायब था; किसी होस्ट पर राइट-क्लिक करने और SMB चुनने पर अब होस्ट फ़ील्ड पहले से भर जाती है और स्कैन तुरंत शुरू हो जाता है, जब पोर्ट 445 खुला पाया जाता है तो मेनू में बोल्ड दिखता है।
  • i18n — शेष Dashboard स्ट्रिंग्स अनुवादित: गेटवे लेटेंसी लेबल, TLS Watchlist कार्ड शीर्षक और उसकी स्थिति पंक्ति अभी भी हार्डकोडेड फ्रेंच में थीं; अब सभी 8 इंटरफ़ेस भाषाओं में अनुवादित।

v1.7.1 — 2026-07-02

  • macOS 26 (Tahoe) — Wi-Fi SSID फिक्स: प्राथमिक डेटा स्रोत के रूप में system_profiler (जो Location Services के बिना <redacted> लौटाता है) से CoreWLAN पर स्विच किया गया; ऐप अब पहले लॉन्च पर Location Services अनुमति माँगता है; अनुमति मिलने के बाद Wi-Fi पृष्ठ सभी नेटवर्क वास्तविक नामों के साथ दिखाता है।
  • macOS — कनेक्शन मैनेजर: कनेक्टेड SSID अब CoreWLAN के माध्यम से पढ़ा जाता है, सुरक्षा मोड के लिए system_profiler के साथ।
  • macOS — SMB: NAS को क्रेडेंशियल आवश्यक होने पर स्पष्ट "authentication required" संदेश; Homebrew smbclient से गलत smb.conf चेतावनी ठीक की गई।
  • macOS — पहले Location Services अनुमति डायलॉग के बाद बाहर निकलने पर संभावित क्रैश ठीक किया गया।

v1.7.0 — 2026-07-02

  • यूनिवर्सल राइट-क्लिक कॉन्टेक्स्ट मेनू उन सभी तालिकाओं पर जिनमें IPs या होस्टनाम होते हैं — बिना कॉपी-पेस्ट किए सीधे मॉड्यूल के बीच नेविगेट करें: किसी भी खोजे गए होस्ट पर राइट-क्लिक करें और Ping, Scan ports, Whois, DNS, Traceroute, MTR, SSH, RDP, VNC, View in Topology, या Add to Inventory चुनें। संबंधित पोर्ट खुला पाए जाने पर मेनू आइटम SSH/RDP/VNC बोल्ड दिखते हैं। लेबल सभी 8 इंटरफ़ेस भाषाओं में पूरी तरह अनुवादित हैं।
  • स्रोत पृष्ठ (राइट-क्लिक क्रियाएँ उत्सर्जित करते हैं): IP Scanner, Nmap, Ping, Port Scanner, Traceroute, MTR, Topology (नोड राइट-क्लिक)
  • लक्ष्य पृष्ठ (होस्ट प्राप्त करते हैं और पहले से भरते हैं): Whois (set_target + ऑटो-क्वेरी), DNS (set_target केवल प्रीफिल), Ping (set_target + ऑटो-स्टार्ट), Traceroute (set_target + ऑटो-स्टार्ट), MTR (set_target + ऑटो-स्टार्ट), Port Scanner (set_target + फोकस), SSH / RDP / VNC (set_target प्रीफिल्ड नया-कनेक्शन फॉर्म खोलता है), Topology (load_hosts IP Scanner/Nmap स्कैन से नोड्स को बिना पुनः स्कैन किए इंजेक्ट करता है — गेटवे स्वचालित रूप से पता चलता है, किनारे खींचे जाते हैं, मूल नोड लाल रंग में हाइलाइट होता है), Asset Inventory (prefill_hosts खोजे गए होस्ट्स पर सीधे क्रेडेंशियल स्कैन शुरू करता है, ICMP डिस्कवरी चरण छोड़ देता है)
  • Dashboard — गेटवे पिंग ग्राफ़: लाइव लेटेंसी स्पार्कलाइन हर 2 सेकंड में अपडेट होती है; रंग-कोडित (<20 ms हरा / 20–100 ms नारंगी / >100 ms लाल / टाइमआउट लाल)
  • Dashboard — TLS Watchlist सारांश: Dashboard में स्थिति कार्ड बिना पुनः क्वेरी किए TLS Watchlist स्थिति (OK / expiring / alert) को स्वचालित रूप से दर्शाता है
  • Dashboard — जियो मैप रीसाइज़: विंडो का आकार बदलने पर विश्व मानचित्र अब क्षैतिज रूप से विस्तारित होता है

v1.6.4 — 2026-06-28

  • macOS: मेनू बार अब Python के बजाय NMLinux दिखाता है — मूल कारण: Python में exec() के बाद, NSBundle.mainBundle() Python.framework बंडल (CFBundleName = "Python") को हल करता है, जिसे Qt QApplication निर्माण के दौरान पढ़ता है; बंडल के infoDictionary() को पैच करके और एप्लिकेशन मेनू बनाए जाने से पहले AppKit के माध्यम से मूल मेनू आइटमों का नाम बदलकर ठीक किया गया।

v1.6.3 — 2026-06-28

  • macOS: pyobjc-framework-Cocoa के माध्यम से NSProcessInfo.setProcessName_ का उपयोग करके मेनू बार को ठीक करने का पहला प्रयास (v1.6.4 द्वारा प्रतिस्थापित)

v1.6.2 — 2026-06-28

  • macOS: install_macos_app.sh में bash लॉन्चर स्क्रिप्ट को संकलित C स्टब से बदल दिया गया ताकि macOS .app बंडल को चल रही प्रक्रिया के साथ सही ढंग से जोड़ सके; फॉलबैक के रूप में setprogname और sys.argv[0] ओवरराइड जोड़े गए।

v1.6.1 — 2026-06-25

  • SSH टर्मिनल — दूरस्थ इको ठीक किया गया: एम्बेडेड SSH टर्मिनल में टाइप की गई कीस्ट्रोक्स दूरस्थ शेल को भेजी जाती थीं लेकिन कभी वापस इको नहीं होती थीं (लॉगिन के बाद कीबोर्ड "मृत" दिखता था)। nmlinux स्थानीय PTY इको बंद कर देता था, और ssh उस "no echo" को अपने टर्मिनल मोड्स (pty-req) के माध्यम से दूरस्थ pty तक प्रसारित करता था, इसलिए दूरस्थ शेल इनपुट को इको करना बंद कर देता था। एक नए Ubuntu 26.04 VM पर पुनरुत्पादित किया गया (हालिया OpenSSH इन मोड्स को ईमानदारी से लागू करता है)। टर्मिनल अब PTY को सामान्य मोड में रखता है और ssh को इको प्रबंधित करने देता है, जो वास्तविक टर्मिनल इम्यूलेटर से मेल खाता है।

v1.6.0 — 2026-06-24

  • एसेट इन्वेंट्री — WinRM Windows (पूर्ण): जब ICMP Windows Firewall द्वारा अवरुद्ध हो तो TCP पोर्ट प्रोब के माध्यम से होस्ट का पता लगाना; PowerShell अब cmd.exe को पाइप | की व्याख्या करने से रोकने के लिए पूर्ण निरपेक्ष पथ + EncodedCommand (base64) का उपयोग करता है; एडमिन अधिकारों के बिना पूर्ण फॉलबैक श्रृंखला: OS ver के माध्यम से, CPU रजिस्ट्री के माध्यम से, RAM systeminfo के माध्यम से, डिस्क wmicfsutil (लोकेल-जागरूक EN अल्पविराम / FR स्पेस) → dir /-C
  • एसेट इन्वेंट्री — मल्टी-क्रेडेंशियल SSH: एकाधिक SSH क्रेडेंशियल सेट समर्थित; macOS डिस्क ठीक की गई (/System/Volumes/Data), Apple Silicon CPU फॉलबैक (hw.model), Synology (/volume1), Unraid (/mnt/user)
  • बग फिक्स: WinRM त्रुटियाँ अब मौन फॉलबैक के बजाय तालिका में दिखाई जाती हैं; WinRM/SNMP होस्ट का पता लगाना अब SSH क्रेडेंशियल की उपस्थिति से अवरुद्ध नहीं होता; pywinrm टाइमआउट सही किया गया।

v1.5.3 — 2026-06-24

  • macOS .app — Homebrew टूल पहचान: Homebrew के माध्यम से स्थापित sshpass, nmap और snmpget अब उनके निरपेक्ष पथ का उपयोग करके पाए और कॉल किए जाते हैं; macOS पर .app बंडल Homebrew PATH (/opt/homebrew/bin, /usr/local/bin) को इनहेरिट नहीं करते, इसलिए पहले स्थापित उपकरण चुपचाप अनदेखा कर दिए जाते थे।
  • macOS अपडेट पथ: रेपो रूट से git pull && bash packaging/install_macos_app.sh चलाना अब प्रलेखित अपग्रेड विधि है; स्क्रिप्ट अपना स्वयं का venv (~/.local/share/nmlinux/venv) प्रबंधित करती है और इसके लिए किसी सिस्टम-स्तरीय pip या pipx की आवश्यकता नहीं होती।

v1.5.2 — 2026-06-24

  • एसेट इन्वेंट्री — नया मॉड्यूल (29वाँ); CIDR रेंज स्कैन करता है और प्रत्येक होस्ट से SSH, WinRM, SNMP या Nmap के माध्यम से OS, CPU, RAM, डिस्क और अपटाइम एकत्र करता है; प्रति प्रोटोकॉल एकाधिक क्रेडेंशियल सेट का समर्थन करता है (प्रत्येक को क्रम से आज़माता है); शून्य-प्रतिधारण नीति: क्रेडेंशियल कभी डिस्क पर नहीं लिखे जाते, स्कैन के बाद मेमोरी से साफ़ कर दिए जाते हैं; परिणाम JSON, CSV या Markdown के रूप में निर्यात करें; Dashboard IP Geolocation अनुभाग में एनिमेटेड जियो मैप जोड़ा गया।
  • SSH संग्रह फिक्स: डिस्क कमांड awk कोटिंग त्रुटि ठीक की गई; free -h को BusyBox-संगत free से बदला गया; macOS कोड पथ अब OS नाम के लिए sw_vers, Apple Silicon CPU के लिए hw.model फॉलबैक, APFS उपयोगकर्ता-डेटा वॉल्यूम के लिए /System/Volumes/Data का उपयोग करता है; Synology/Unraid वॉल्यूम (/volume1, /mnt/user) रूट से पहले पहचाने जाते हैं; df | tail -1 || … झूठी-सफलता पैटर्न test -d गार्ड के साथ ठीक किया गया; lsb_release आउटपुट से आसपास के कोट्स हटाए गए; एकाधिक SSH/WinRM क्रेडेंशियल सेट समर्थित (प्रति होस्ट प्रत्येक को क्रम से आज़माता है)।

v1.5.0 — 2026-06-17

  • फ़ाइल ट्रांसफ़र सर्वर — ऐप से सीधे हल्का TFTP या HTTP सर्वर शुरू/बंद करने के लिए नया मॉड्यूल; क्लासिक उपयोग मामला: राउटर, स्विच या प्रिंटर कॉन्फ़िगरेशन का बैकअप और पुनर्स्थापना; एक समय में एक सर्वर सक्रिय (TFTP या HTTP), कॉन्फ़िगर करने योग्य पोर्ट और रूट निर्देशिका, स्थानीय IPs क्लिपबोर्ड-कॉपी बटन के रूप में दिखाए जाते हैं; HTTP में निर्देशिका सूची (LAN पर किसी भी ब्राउज़र से ब्राउज़ करें), GET (डाउनलोड) और POST/PUT (अपलोड) शामिल है; TFTP GET और PUT (द्विदिश) का समर्थन करता है, पोर्ट 69 के लिए रूट आवश्यक है — ऐप अनुमति त्रुटि पर "Start as root (pkexec)" बटन दिखाता है; लाइव ट्रांसफ़र लॉग तालिका (टाइमस्टैम्प, फ़ाइलनाम, क्लाइंट IP, दिशा ↑/↓, आकार); पोर्ट ट्रैवर्सल सुरक्षा; 8 इंटरफ़ेस भाषाएँ; नई निर्भरता: tftpy

v1.4.3 — 2026-06-14

  • TLS Watchlist फिक्स: सेल्फ-साइन्ड और अविश्वसनीय प्रमाणपत्र अब हरे के बजाय "⚠ Invalid / untrusted cert" (नारंगी) के रूप में सही ढंग से दिखाए जाते हैं; SSL अपवाद पकड़ने का दायरा सभी ssl.SSLError उपवर्गों को कवर करने के लिए बढ़ाया गया; पृष्ठभूमि जाँच चलने के दौरान प्रविष्टियाँ अब "… (checking)" और होस्ट तक पहुँच न होने पर "— (unreachable)" दिखाती हैं।

v1.4.2 — 2026-06-14

  • TLS Watchlist — प्रमाणपत्र समाप्ति की निगरानी के लिए होस्टनामों की स्थायी सूची; + Watch (वर्तमान होस्ट/पोर्ट का उपयोग करता है) या पैनल में मैन्युअल रूप से होस्ट जोड़ें; लॉन्च के 2 सेकंड बाद पृष्ठभूमि जाँच स्वचालित रूप से चलती है; साइडबार "TLS Inspector" प्रविष्टि एक रंगीन बिंदु दिखाती है: यदि कोई प्रमाणपत्र समाप्त हो गया है तो लाल, यदि कोई प्रमाणपत्र 30 दिनों के भीतर समाप्त होता है तो नारंगी; पैनल में पुनः-जाँच बटन; सूची प्रति प्रविष्टि स्थिति (✓ / ⚠ / EXPIRED) रंग कोडिंग के साथ दिखाती है।

v1.4.1 — 2026-06-14

  • macOS — IP स्कैनर: macOS पर MAC पता, विक्रेता और इंटरफ़ेस लुकअप ठीक किया गया; _arp_entry() अब macOS पर arp -n <ip> कॉल करता है और /proc/net/arp (केवल-Linux) पढ़ने के बजाय उसके आउटपुट प्रारूप (? (IP) at AA:BB:CC on en0) को पार्स करता है; तालिका के सभी चार स्तंभ अब macOS पर सही ढंग से भरते हैं।
  • VNC सहायता: सभी 8 भाषाओं में एक नोट जोड़ा गया जिसमें स्पष्ट किया गया कि Linux में डिफ़ॉल्ट रूप से कोई VNC सर्वर नहीं है और स्थापित करने के लिए सामान्य विकल्पों की सूची दी गई है (x11vnc, tigervnc-server, wayvnc)।

v1.4.0 — 2026-06-14- macOS — IP Scanner: क्रॉस-प्लेटफ़ॉर्म रिवर्स DNS रिज़ॉल्यूशन के लिए getent (केवल Linux) को Python के socket.gethostbyaddr() से बदल दिया गया; होस्टनेम लुकअप अब macOS पर बिना किसी अतिरिक्त टूल के मूल रूप से काम करता है

  • macOS — SMB Browser: smbclient (जिसके लिए Homebrew samba आवश्यक है) से smbutil view (macOS में निर्मित टूल) पर स्विच किया गया; SMB शेयर सूचीकरण अब macOS पर बिना किसी इंस्टॉल के काम करता है
  • macOS — NFS Browser: showmount macOS पर निर्मित है लेकिन --no-headers का समर्थन नहीं करता; macOS पर फ़्लैग हटाया गया, पार्सर में हेडर लाइन छोड़ी गई; NFS एक्सपोर्ट सूचीकरण अब मूल रूप से काम करता है
  • macOS — RDP: जब xfreerdp नहीं मिलता है, तो open rdp:// URL स्कीम पर फ़ॉलबैक करता है; यदि इंस्टॉल है तो Microsoft Remote Desktop (App Store) खोलता है, जिसमें होस्ट, पोर्ट, यूज़रनेम और डोमेन पहले से भरे होते हैं
  • macOS — VNC: जब vncviewer नहीं मिलता है, तो open vnc:// URL स्कीम पर फ़ॉलबैक करता है; macOS स्क्रीन शेयरिंग खोलता है (निर्मित, शून्य इंस्टॉल आवश्यक)

v1.3.9 — 2026-06-13

  • SSH एजेंट फ़ॉरवर्डिंग — SSH कनेक्शन फ़ॉर्म में नया "Agent forwarding" चेकबॉक्स; ssh कमांड में -A जोड़ता है; आपकी निजी कुंजी की प्रतिलिपि किए बिना सर्वरों के बीच कूदने की अनुमति देता है (PC → A → B); एक सक्रिय SSH एजेंट (SSH_AUTH_SOCK) की आवश्यकता होती है; सभी 8 भाषाओं में प्रासंगिक सहायता अपडेट की गई

v1.3.8 — 2026-06-13

  • कमांड पैलेट (Ctrl+P) — 27 मॉड्यूल में से किसी के लिए त्वरित कीबोर्ड नेविगेशन; नाम और कीवर्ड पर फ़ज़ी खोज (जैसे "firewall", "tls", "ssh key", "scan"); नेविगेट करने के लिए ऊपर/नीचे तीर + Enter या एकल क्लिक; ऐप में कहीं से भी Ctrl+P से खुलता है
  • एक्सपोर्ट प्रबंधक — File → Export Network Report… से पूर्ण नेटवर्क स्नैपशॉट (इंटरफ़ेस, रूट, DNS रिज़ॉल्वर) JSON, Markdown, सादे पाठ या PDF में एक्सपोर्ट करें (वैकल्पिक: pip install reportlab)
  • मॉड्यूल-स्तरीय एक्सपोर्ट बटन — Interfaces, DNS, Firewall, SSH Connections, और Connection Manager पृष्ठों में एक्सपोर्ट बटन जोड़े गए; प्रत्येक पृष्ठ अपना वर्तमान डेटा चुने गए प्रारूप में एक्सपोर्ट करता है, और प्रारूप फ़िल्टर बदलने पर फ़ाइलनाम एक्सटेंशन लाइव अपडेट होता है

v1.3.6 — 2026-06-12

  • Topology — डिवाइस आइकन — प्रत्येक नोड अब एक सामान्य वृत्त के बजाय अपने डिवाइस प्रकार (router/wifi, computer/laptop, printer, NAS/server, smartphone, network switch, Raspberry Pi) से मेल खाने वाला Lucide SVG आइकन प्रदर्शित करता है; 5 नए बंडल किए गए SVG आइकन (printer, server, smartphone, cpu, laptop)
  • Topology — mDNS पहचान — डिवाइस प्रकार avahi-browse के माध्यम से पहचाना जाता है (वैकल्पिक, nmap स्कैन के समानांतर चलता है); प्रिंटर (_ipp._tcp, PDL Printer), Android फ़ोन और TV (_googlecast._tcp, _androidtvremote2._tcp), Apple Mac (AirPlay TXT में am=Mac16,x मॉडल), NAS डिवाइस (Synology model=Xserve रिपोर्ट करता है), KDE Connect डेस्कटॉप की पहचान करता है; avahi उपलब्ध नहीं होने पर MAC विक्रेता OUI और होस्टनेम ह्यूरिस्टिक्स पर फ़ॉलबैक करता है
  • Topology — विवरण पैनल सामान्य "Host" लेबल के बजाय पहचाने गए डिवाइस वर्ग (Printer, Smartphone, NAS…) दिखाता है; सभी 8 भाषाओं में i18n
  • Traceroute — ऑटो-ज़ूम — प्रत्येक रूट के अंत में विश्व मानचित्र स्वचालित रूप से जियोलोकेटेड हॉप्स के बाउंडिंग बॉक्स पर ज़ूम और केंद्रित होता है; जब उपयोगकर्ता मैन्युअल रूप से पैन या ज़ूम करता है तो अक्षम हो जाता है; अगले ट्रेसरूट पर पुनर्स्थापित होता है; राइट-क्लिक पूर्ण विश्व दृश्य पर रीसेट करता है

v1.3.5 — 2026-06-06

  • macOS संगतता — सभी 9 नेटवर्क मॉड्यूल अब Linux व्यवहार को तोड़े बिना macOS पर चलते हैं; प्रत्येक मॉड्यूल स्टार्टअप पर प्लेटफ़ॉर्म का पता लगाता है (_IS_MACOS) और मूल macOS कमांड पर शाखा करता है: route -n get default, ifconfig, scutil --dns, networksetup, system_profiler SPAirPortDataType, pfctl, netstat -ib; विशेषाधिकार वृद्धि pkexec के बजाय osascript + with administrator privileges का उपयोग करती है; मोनोस्पेस फ़ॉन्ट Monospace के बजाय Menlo का उपयोग करता है
  • दोहरे Linux/macOS पथ वाले मॉड्यूल: Dashboard, Interfaces, Wi-Fi, Topology, Bandwidth, Firewall (pf.conf + pfctl), Connection Manager, Hosts File, MTR
  • अपरिवर्तित मॉड्यूल (दोनों प्लेटफ़ॉर्म पर समान टूल): DNS, Nmap Scan, SNMP, Whois

v1.3.2 — 2026-06-06

  • i18n 8 भाषाओं तक विस्तारित — Italiano, Português, 日本語 (जापानी) और 中文 (सरलीकृत चीनी) जोड़ी गईं; पूर्ण UI (सभी 27 मॉड्यूल, ~720 अनुवाद कुंजियाँ) अब FR / EN / ES / DE / IT / PT / JA / ZH में उपलब्ध है; Settings में भाषा बदलने के बाद पुनरारंभ संकेत दिखाई देता है
  • 8 भाषाओं में प्रासंगिक सहायता? बैज पैनल (विवरण, उपयोग उदाहरण और समकक्ष CLI कमांड) अब हर मॉड्यूल के लिए सभी 8 भाषाओं को कवर करता है; पहले JA और ZH अंग्रेज़ी पर फ़ॉलबैक करते थे
  • बग फिक्स — SMB/NFS और Hosts File के नेव टूलटिप्स चुनी गई भाषा के बावजूद फ्रेंच में प्रदर्शित हो रहे थे; सभी 7 गैर-फ्रेंच भाषा ब्लॉकों में लुप्त nav_hint_smb_nfs और nav_hint_hosts कुंजियाँ जोड़ी गईं

v1.3.1 — 2026-06-05

  • SSH कुंजी प्रबंधक~/.ssh/ में सभी कुंजी जोड़ों की सूची बनाएं (फ़ाइल, प्रकार, बिट्स, टिप्पणी, SHA256 फ़िंगरप्रिंट); वैकल्पिक पासफ़्रेज़ के साथ Ed25519 या RSA 4096 कुंजियाँ उत्पन्न करें (मिसमैच पहचान, प्रकार के अनुसार स्वचालित फ़ाइलनाम); सार्वजनिक कुंजी को क्लिपबोर्ड पर कॉपी करें; पासवर्ड संकेतों के लिए stdin समर्थन के साथ इनलाइन टर्मिनल में ssh-copy-id के माध्यम से दूरस्थ सर्वर पर तैनात करें; पुष्टि के साथ कुंजी जोड़े हटाएं; गायब होने पर स्वचालित रूप से ~/.ssh/ बनाता है; i18n: fr / en / es / de

v1.3.0 — 2026-06-03

  • TLS / SSL इंस्पेक्टर — किसी भी सर्वर के प्रमाणपत्र का निरीक्षण करें: subject CN, SANs, issuer, वैधता तिथियाँ (रंग-कोडित: हरा / नारंगी < 30 दिन / लाल समाप्त), सीरियल नंबर, TLS प्रोटोकॉल, सिफर सूट और प्रमाणपत्र श्रृंखला (openssl s_client के माध्यम से); वैध, समाप्त और स्व-हस्ताक्षरित प्रमाणपत्रों के लिए काम करता है; अप्राप्य होस्ट के लिए अनुकूल त्रुटि संदेश
  • SMB / NFS ब्राउज़र — किसी भी सर्वर से शेयर और एक्सपोर्ट सूचीबद्ध करें; SMB टैब: वैकल्पिक क्रेडेंशियल के साथ smbclient -L, शेयर नाम / प्रकार / टिप्पणी दिखाता है; NFS टैब: showmount -e, एक्सपोर्ट पथ और एक्सेस सूची दिखाता है; डिस्ट्रो-विशिष्ट इंस्टॉल निर्देशों के साथ लुप्त टूल का पता लगाता है
  • Hosts फ़ाइल संपादक/etc/hosts देखें और संपादित करें; सक्षम/अक्षम टॉगल वाली तालिका, डायलॉग के माध्यम से प्रविष्टियाँ जोड़ें/संपादित करें/हटाएं; IP या होस्टनेम द्वारा फ़िल्टर करें; pkexec cp के माध्यम से सहेजता है (polkit प्रमाणीकरण डायलॉग)
  • install.sh — Debian / Ubuntu / Linux Mint के लिए नई स्क्रिप्ट: ~/.local/share/nmlinux/venv में venv बनाता है, apt के माध्यम से सिस्टम निर्भरताएँ इंस्टॉल करता है, लॉन्चर और .desktop प्रविष्टि बनाता है (PEP 668 externally-managed-environment त्रुटि ठीक करता है)

v1.2.9 — 2026-05-30

  • VNC — VNC कनेक्शन प्रोफ़ाइल प्रबंधित करने के लिए नया मॉड्यूल; SSH और RDP की तरह समूह/उपसमूह; vncviewer (TigerVNC) लॉन्च करता है; macOS ARD के साथ संगत (DH30 प्रमाणीकरण vncviewer द्वारा मूल रूप से संभाला जाता है); पासवर्ड कभी संग्रहीत नहीं होता; डिस्ट्रो-विशिष्ट इंस्टॉल निर्देशों के साथ लुप्त vncviewer का पता लगाता है
  • About — Tools & services — ऐप जिन तृतीय-पक्ष टूल और API पर निर्भर करता है, उन्हें सूचीबद्ध करने वाला नया अनुभाग
  • साइडबार i18n — सभी 23 नेव टूलटिप्स अब FR/EN/ES/DE में अनुवादित हैं (पहले हार्डकोडेड फ्रेंच थे); लेबल सही किए गए: Topology, Connections, Subnet

v1.2.8 — 2026-05-30

  • Remote Desktop (RDP) — Windows RDP कनेक्शन प्रोफ़ाइल प्रबंधित करने के लिए नया मॉड्यूल; SSH की तरह समूह/उपसमूह; xfreerdp को बाहरी प्रक्रिया के रूप में लॉन्च करता है; कनेक्ट करते समय पासवर्ड पूछा जाता है, कभी संग्रहीत नहीं होता; फ़ील्ड: host, port, username, domain, resolution, fullscreen; डिस्ट्रो-विशिष्ट इंस्टॉल निर्देशों (Arch / Debian / Fedora) के साथ लुप्त xfreerdp का पता लगाता है

v1.2.7 — 2026-05-26

  • बंडल किए गए Lucide आइकनLucide (MIT) के 21 SVG आइकन अब assets/icons/ में बंडल हैं; रनटाइम पर QSvgRenderer के माध्यम से रेंडर किए जाते हैं; रंग #60a5fa; ऐप को अब किसी सिस्टम आइकन थीम (Breeze, Adwaita, Papirus…) की आवश्यकता नहीं है

v1.2.6 — 2026-05-24

  • GNOME / Adwaita संगतता — गैर-KDE डेस्कटॉप पर आइकन ठीक किए गए: main.py अब gsettings के माध्यम से GTK आइकन थीम का स्वतः पता लगाता है और इसे Qt पर लागू करता है; Wi-Fi, Traceroute, Speed Test, Interfaces, Port Scanner, Firewall, MTR के लिए विस्तारित फ़ॉलबैक श्रृंखलाएँ; themed_icon() अब थीम आइकन स्वीकार करने से पहले सत्यापित करता है कि वास्तविक पिक्समैप मौजूद है
  • NixOS / KDE संगतता — NixOS पर सभी आइकन ठीक किए गए: Breeze 6.x केवल SVGZ आइकन भेजता है; Nix रैपर अब QT_PLUGIN_PATH में qt6.qtsvg जोड़ता है ताकि Qt SVG आइकन रेंडर कर सके; themed_icon() आकार 22/24/16/32/48 आज़माता है (Breeze 22 px उपयोग करता है, 24 नहीं); Nix-बंडल आइकन सेट का पता चलने पर थीम को breeze पर बाध्य किया जाता है; सिस्टम-व्यापी KDE कॉन्फ़िग के लिए /etc/xdg/kdeglobals भी जाँचता है

v1.2.5 — 2026-05-23

  • MTR — एम्बेडेड My Traceroute: mtr --report चलाता है, टेक्स्ट आउटपुट पार्स करता है, प्रति हॉप Loss %, RTT Last/Avg/Best/Worst/Jitter के साथ एक लाइव तालिका प्रदर्शित करता है, हानि गंभीरता के अनुसार रंग-कोडित; निरंतर मोड; CSV + TXT एक्सपोर्ट
  • स्पीड टेस्टcurl + Cloudflare (speed.cloudflare.com) के माध्यम से निर्भरता-मुक्त स्पीड टेस्ट: डाउनलोड (25 MB), अपलोड (10 MB), 1.1.1.1 पर पिंग; 5 तक रन JSON में संग्रहीत; ऐतिहासिक लाइन ग्राफ़ (डाउनलोड/अपलोड)
  • फ़ायरवॉल व्यूअर — केवल-पठनीय रूलसेट व्यूअर: बिना root के /etc/nftables.conf और /etc/iptables/*.rules पार्स करता है; pkexec nft list ruleset के माध्यम से लाइव रूलसेट; कॉलम: Table / Chain / Rule / Port / Action / Comment; रंग-कोडित क्रियाएँ; लाइव फ़िल्टर
  • साइडबार संकेत — प्रत्येक नेव प्रविष्टि अब एक सूक्ष्म ? बैज दिखाती है; होवर करने पर मॉड्यूल के कार्य का वर्णन करने वाला टूलटिप प्रदर्शित होता है; साइडबार और सामग्री क्षेत्र के बीच ऊर्ध्वाधर विभाजक जोड़ा गया
  • i18n — सभी नए मॉड्यूल फ्रेंच, अंग्रेज़ी और स्पेनिश में अनुवादित

v1.2.0 — 2026-05-22

  • थीम अनुकूलन — सभी पृष्ठों पर पूर्ण रनटाइम लाइट/डार्क स्विचिंग समर्थन; is_dark(), color_ok(), color_err() के साथ नया core/theme.py; कस्टम पेंटर विजेट (_Graph, _MapWidget) पेंट समय पर पैलेट पढ़ते हैं; सभी हार्डकोडेड Catppuccin Mocha रंगों को सिमेंटिक Qt पैलेट भूमिकाओं से बदल दिया गया
  • सबनेट मास्क — Dashboard, Interfaces, और Connexions पृष्ठ अब CIDR प्रीफ़िक्स से व्युत्पन्न डॉटेड-डेसिमल सबनेट मास्क (जैसे 255.255.255.0) प्रदर्शित करते हैं
  • बैंडविड्थ मॉनिटर — पृष्ठ लोड पर अविश्वसनीय ऑटो-स्टार्ट को स्पष्ट Start/Stop बटन से बदल दिया गया
  • CSV/TXT एक्सपोर्ट — Nmap और Traceroute पृष्ठ अब Export CSV और Export TXT बटन प्रदान करते हैं (स्कैन/ट्रेस पूरा होने के बाद दिखाई देते हैं)
  • i18n — उपरोक्त सभी सुविधाओं के लिए नई अनुवाद कुंजियाँ (fr/en/es/de)

v1.1.1 — 2026-05-16

  • SSH टर्मिनलpyte (VT100/xterm एमुलेटर) + QPainter रेंडरर के साथ पूर्ण पुनर्लेखन; 2000-लाइन स्क्रॉलबैक, कर्सर ब्लिंक, 256-रंग समर्थन
  • विज़ुअल ट्रेसरूट — विश्व मानचित्र (Natural Earth 110m), प्रति हॉप लाइव जियोलोकेशन (ip-api.com), इंटरैक्टिव ज़ूम/पैन, दोहरा पार्सर (traceroute / tracepath फ़ॉलबैक)
  • बैंडविड्थ मॉनिटर — प्रति-इंटरफ़ेस रीयल-टाइम थ्रूपुट, 60s स्लाइडिंग ग्राफ़, लाइव गति, सत्र कुल और शिखर
  • वेक ऑन LAN — शुद्ध Python मैजिक पैकेट (UDP ब्रॉडकास्ट), स्थायी होस्ट बुक (JSON)
  • IP स्कैनरgetent/avahi/nmblookup के माध्यम से होस्टनेम रिज़ॉल्यूशन; MAC पता, विक्रेता (IEEE OUI 39K प्रविष्टियाँ), इंटरफ़ेस कॉलम; CSV/TXT एक्सपोर्ट अपडेट किया गया
  • i18n — सभी नए पृष्ठों के लिए पूर्ण fr/en/es/de अनुवाद

v1.0.0 — 2026-05-14

प्रारंभिक सार्वजनिक रिलीज़ — 13 मॉड्यूल: Dashboard, Interfaces, Wi-Fi, Subnet Calculator, DNS Lookup, Ping Monitor, IP Scanner, Port Scanner, Nmap, Whois, SNMP, SNTP/NTP, SSH.


विशेषताएँ

ModuleDescription
Dashboardस्थानीय मशीन जानकारी, गेटवे, सार्वजनिक IP, जियोलोकेशन, DNS रिज़ॉल्वर
Connection Managernmcli के माध्यम से NetworkManager प्रोफ़ाइल: सूची, फ़िल्टर, कनेक्ट/डिस्कनेक्ट/संपादित/हटाएं
Interfacesप्रति-इंटरफ़ेस विवरण के साथ नेटवर्क इंटरफ़ेस तालिका (ip + nmcli)
Wi-Fiउपलब्ध नेटवर्क, सिग्नल बार, सुरक्षा, कनेक्टेड नेटवर्क हाइलाइट किया गया
Subnet CalculatorCIDR से नेटवर्क/ब्रॉडकास्ट/होस्ट रेंज, 4096 प्रविष्टियों तक होस्ट तालिका
DNS LookupA, AAAA, MX, TXT, NS, CNAME, PTR, SOA, ANY के लिए dig-आधारित लुकअप
Ping Monitorकई होस्टों पर निरंतर पिंग, RTT आँकड़े, पैकेट हानि %
IP ScannerCIDR/रेंज पिंग स्कैन, 50 थ्रेड, होस्टनेम (DNS/mDNS/NetBIOS), MAC पता, विक्रेता (OUI), इंटरफ़ेस, CSV + TXT एक्सपोर्ट
Port ScannerTCP कनेक्ट स्कैन, 200 थ्रेड, सेवा प्रीसेट, CSV + TXT एक्सपोर्ट
Nmap7 स्कैन मोड, XML आउटपुट पार्सिंग, Host/Port/Protocol/State/Service तालिका, CSV + TXT एक्सपोर्ट
Whoisमोनोस्पेस में कच्चा whois आउटपुट
SNMPsnmpwalk/snmpget, v1/v2c, 10 OID प्रीसेट, परिणाम तालिका
SNTP / NTPशुद्ध Python RFC 4330 UDP क्लाइंट, ऑफ़सेट/विलंब/स्ट्रेटम/रेफ़रेंस
SSHएम्बेडेड PTY टर्मिनल (pyte/VT100), सहेजे गए कनेक्शन (JSON), कुंजी प्रमाणीकरण, स्क्रॉलबैक
Remote DesktopRDP कनेक्शन प्रोफ़ाइल (समूह/उपसमूह); xfreerdp लॉन्च करता है; पासवर्ड कभी संग्रहीत नहीं होता
VNCVNC कनेक्शन प्रोफ़ाइल (समूह/उपसमूह); vncviewer (TigerVNC) लॉन्च करता है; macOS ARD संगत; पासवर्ड कभी संग्रहीत नहीं होता
SSH Key Manager~/.ssh/ कुंजी जोड़ों की सूची (प्रकार, बिट्स, फ़िंगरप्रिंट); Ed25519/RSA 4096 उत्पन्न करें; सार्वजनिक कुंजी कॉपी करें; ssh-copy-id के माध्यम से सर्वर पर तैनात करें; पुष्टि के साथ जोड़े हटाएं
TLS Inspectorप्रमाणपत्र विवरण: CN, SANs, issuer, वैधता + समाप्ति काउंटडाउन, सीरियल, प्रोटोकॉल, सिफर, श्रृंखला; पृष्ठभूमि समाप्ति मॉनिटर और साइडबार रंग बिंदु के साथ Watchlist
SMB / NFSकिसी भी सर्वर या NAS से SMB शेयर (smbclient) और NFS एक्सपोर्ट (showmount) सूचीबद्ध करें; SMB के लिए वैकल्पिक क्रेडेंशियल
Hosts File/etc/hosts देखें/संपादित करें: प्रविष्टियाँ जोड़ें, हटाएं, टॉगल करें; फ़िल्टर; pkexec के माध्यम से सहेजें
Visual Tracerouteविश्व मानचित्र पर हॉप-दर-हॉप रूट, लाइव जियोलोकेशन (ip-api.com), ज़ूम और पैन, CSV + TXT एक्सपोर्ट
MTRएम्बेडेड My Traceroute: प्रति हॉप हानि %, RTT Last/Avg/Best/Worst/Jitter, रंग-कोडित, CSV + TXT एक्सपोर्ट
Firewall Viewerकेवल-पठनीय nftables + iptables/ip6tables रूलसेट (कोई root नहीं); pkexec के माध्यम से लाइव; तालिका/श्रृंखला/क्रिया द्वारा फ़िल्टर
Speed TestCloudflare के माध्यम से डाउनलोड/अपलोड/पिंग; curl के अलावा कोई बाहरी टूल नहीं; इतिहास ग्राफ़ (पिछले 5 रन)
Bandwidthप्रति-इंटरफ़ेस रीयल-टाइम थ्रूपुट: 60s स्लाइडिंग ग्राफ़, लाइव गति, सत्र कुल, शिखर
Wake on LANशुद्ध Python मैजिक पैकेट (UDP ब्रॉडकास्ट), स्थायी होस्ट बुक, कोई बाहरी टूल आवश्यक नहीं
Topology Mapnmap -sn के माध्यम से LAN डिवाइसों का स्वतः पता लगाता है; खींचने योग्य नोड्स के साथ इंटरैक्टिव ग्राफ़, ज़ूम/पैन, विवरण पैनल
Settingsभाषा चयन (FR / EN / ES / DE / IT / PT / JA / ZH), संग्रहीत; परिवर्तन के बाद पुनरारंभ आवश्यक
Command PaletteCtrl+P ओवरले: सभी 29 मॉड्यूल में नाम या कीवर्ड द्वारा फ़ज़ी खोज
File Transferऑन-डिमांड TFTP या HTTP सर्वर; कॉन्फ़िगर करने योग्य पोर्ट और रूट डायरेक्टरी; स्थानीय IP कॉपी बटन के रूप में; लाइव लॉग तालिका (फ़ाइलनाम, क्लाइंट IP, दिशा ↑/↓, आकार); HTTP डायरेक्ट्री लिस्टिंग + GET/POST/PUT; TFTP GET + PUT; पोर्ट 69 pkexec संकेत देता है
ExportFile → Export Network Report (JSON/Markdown/Text/PDF); Interfaces, DNS, Firewall, SSH, Connections पर प्रति-मॉड्यूल एक्सपोर्ट

आवश्यकताएँ

सिस्टम टूल

Linux — अधिकांश मानक इंस्टॉल पर पहले से मौजूद हैं:```bash

Arch / EndeavourOS

sudo pacman -S iproute2 networkmanager bind-tools nmap whois net-snmp iputils mtr curl

Debian / Ubuntu

sudo apt install iproute2 network-manager dnsutils nmap whois snmp mtr-tiny curl

Fedora

sudo dnf install iproute NetworkManager bind-utils nmap whois net-snmp-utils mtr curl

**macOS** — [Homebrew](https://brew.sh) के माध्यम से इंस्टॉल करें:```bash
# Required
brew install nmap mtr curl

# Optional — enable additional modules
brew install whois          # WHOIS page
brew install net-snmp       # SNMP page (snmpwalk / snmpget)
brew install samba          # SMB scan with credentials (smbclient)

macOS ping, dig, traceroute, netstat, ifconfig, smbutil और route को मूल रूप से शामिल करता है। networksetup और scutil अंतर्निर्मित macOS उपकरण हैं, इन्हें इंस्टॉल करने की आवश्यकता नहीं है। IP Scanner में OUI वेंडर लुकअप के लिए भी किसी इंस्टॉल की आवश्यकता नहीं है — Wireshark manuf डेटाबेस पहली बार उपयोग करने पर पृष्ठभूमि में स्वचालित रूप से डाउनलोड होता है और स्थानीय रूप से कैश हो जाता है।

Optional tools

ToolFeatureLinuxmacOS
xfreerdp / xfreerdp3रिमोट डेस्कटॉप (RDP)Arch: freerdp · Ubuntu ≤24.04: freerdp2-x11 · Ubuntu 26.04+: freerdp3-x11वैकल्पिक — Microsoft Remote Desktop पर फ़ॉलबैक करता है (open rdp://)
vncviewerVNCArch: tigervnc · Debian: tigervnc-viewerवैकल्पिक — macOS Screen Sharing पर फ़ॉलबैक करता है (open vnc://, अंतर्निर्मित)
nm-connection-editorकनेक्शन मैनेजर से कनेक्शन संपादित करेंArch: nm-connection-editor— (इसके बजाय System Preferences खुलती है)
tracerouteट्रेसरूट विकल्प (डिफ़ॉल्ट रूप से tracepath उपयोग होता है)Arch: tracerouteअंतर्निर्मित
mount.cifs (cifs-utils)राइट-क्लिक मेनू से SMB शेयर माउंट करेंArch/Debian: cifs-utilsअंतर्निर्मित (mount_smbfs)
iperf3स्पीड टेस्ट — LAN टैबArch: iperf3 · Debian/Ubuntu: iperf3brew install iperf3

Python

  • Python 3.11+
  • PySide6 6.6+
  • ptyprocess 0.7+
  • pyte 0.8+ (pip install pyte या sudo pacman -S python-pyte)
  • tftpy 0.8+ (pip install tftpy या sudo pacman -S python-tftpy) — फ़ाइल ट्रांसफ़र मॉड्यूल

इंस्टॉलेशन

विकल्प 1 — Arch Linux / Manjaro / EndeavourOS (AUR)```bash

yay -S nmlinux

सभी निर्भरताएँ (PySide6, ptyprocess, pyte, nmcli, …) स्वचालित रूप से संभाली जाती हैं।

### विकल्प 2 — NixOS / Nix

बंडल किए गए `flake.nix` के साथ सीधे चलाएँ — किसी सिस्टम-व्यापी स्थापना की आवश्यकता नहीं है:```bash
git clone https://github.com/thongor77/nmlinux.git
cd nmlinux
nix run .

या डेवलपमेंट शेल में प्रवेश करें:```bash nix develop python3 -m nmlinux.main

सभी Python निर्भरताएँ (PySide6, ptyprocess, pyte, tftpy) और सिस्टम टूल्स (nmcli, nmap, freerdp, vncviewer, mtr, avahi-browse…) Nix wrapper के माध्यम से स्वचालित रूप से उपलब्ध कराए जाते हैं।

### विकल्प 4 — AppImage (कोई भी Linux डिस्ट्रो, इंस्टॉल की आवश्यकता नहीं)

`NMLinux-x.y.z-x86_64.AppImage` को [नवीनतम रिलीज़](https://github.com/thongor77/nmlinux/releases/latest) से डाउनलोड करें:```bash
chmod +x NMLinux-*.AppImage
./NMLinux-*.AppImage

कोई स्थापना आवश्यक नहीं — Python, Qt और सभी NMLinux मॉड्यूल एक ही फ़ाइल में बंडल किए गए हैं।
glibc 2.17+ वाले किसी भी x86_64 Linux पर काम करता है (Ubuntu 16.04+, Fedora 26+, Arch, Mint, आदि)।

सिस्टम नेटवर्क टूल्स (nmap, whois, mtr…) बंडल नहीं हैं — संबंधित मॉड्यूल के काम करने के लिए उन्हें अपने पैकेज मैनेजर से इंस्टॉल करें। नीचे Requirements देखें।

विकल्प 5 — macOS

सबसे तेज़ तरीका — एक-लाइनर बूटस्ट्रैप। पूरी तरह से खाली Mac पर काम करता है: Xcode Command Line Tools, Homebrew, सभी सिस्टम टूल्स और फिर NMLinux स्वयं इंस्टॉल करता है। दोबारा चलाना सुरक्षित है (पुनः इंस्टॉल के बजाय अपडेट करता है):```bash curl -fsSL https://raw.githubusercontent.com/thongor77/nmlinux/main/packaging/bootstrap_macos.sh -o /tmp/bootstrap_macos.sh && bash /tmp/bootstrap_macos.sh

`~/Applications` के बजाय सिस्टम-व्यापी (`/Applications`) में इंस्टॉल करें:```bash
curl -fsSL https://raw.githubusercontent.com/thongor77/nmlinux/main/packaging/bootstrap_macos.sh -o /tmp/bootstrap_macos.sh && bash /tmp/bootstrap_macos.sh --system

कोई Apple Developer खाता या भुगतान किया गया notarization शामिल नहीं है — यह वही ओपन-सोर्स install_macos_app.sh है जो अंतर्निहित रूप से आपके लिए लाया और चलाया जाता है। स्क्रिप्ट सादा, पठनीय bash है; चलाने से पहले /tmp/bootstrap_macos.sh खोलकर पढ़ने के लिए स्वतंत्र महसूस करें, या इसे सीधे यहाँ देखें: packaging/bootstrap_macos.sh

डाउनलोड-फिर-चलाएँ (सीधे bash में पाइप करने के बजाय) जानबूझकर है: एक नए Mac पर, स्क्रिप्ट नेस्टेड इंटरैक्टिव चरणों को ट्रिगर करती है (Xcode Command Line Tools इंस्टॉलर, Homebrew का अपना इंस्टॉलर जो आपका sudo पासवर्ड पूछता है) जो टर्मिनल से पढ़ते हैं — स्क्रिप्ट को सीधे bash में पाइप करने से वे नेस्टेड प्रॉम्प्ट स्क्रिप्ट की अपनी इनपुट स्ट्रीम के साथ हस्तक्षेप कर सकते हैं और इसे बीच में रोक सकते हैं। डाउनलोड की गई फ़ाइल से चलाना उससे पूरी तरह बचाता है।

मैन्युअल इंस्टॉल — यदि आप प्रत्येक चरण स्वयं चलाना पसंद करते हैं, या आपके पास पहले से Homebrew है:```bash

1. Install Homebrew system tools (see Requirements above)

brew install nmap mtr curl

2. Clone and install

git clone https://github.com/thongor77/nmlinux.git cd nmlinux bash packaging/install_macos_app.sh

अपडेट करने के लिए: `git pull && bash packaging/install_macos_app.sh`  
अनइंस्टॉल करने के लिए: `bash packaging/uninstall_macos.sh`  
सिस्टम-व्यापी (`/Applications`) इंस्टॉल करने के लिए: `bash packaging/install_macos_app.sh --system`

स्क्रिप्ट निम्नलिखित Python पैकेज स्वचालित रूप से venv में इंस्टॉल करती है:
- `PySide6`, `ptyprocess`, `pyte`, `tftpy`
- `pyobjc-framework-Cocoa` — macOS मेनू बार, नेटिव डायलॉग
- `pyobjc-framework-CoreWLAN` — Wi-Fi SSID स्कैनिंग
- `pyobjc-framework-CoreLocation` — Wi-Fi नामों के लिए Location Services अनुमति

**macOS 26 (Tahoe) पर Wi-Fi:** पहली बार लॉन्च करने पर, macOS Location Services अनुमति माँगेगा — Wi-Fi नेटवर्क नाम प्रदर्शित करने के लिए इसे दें। यह अनुमति *System Settings › Privacy & Security › Location Services* के अंतर्गत दिखाई देती है।

> अधिकांश मॉड्यूल macOS पर बिना किसी संशोधन के काम करते हैं। RDP `open rdp://` (Microsoft Remote Desktop) पर फ़ॉलबैक करता है, VNC `open vnc://` (बिल्ट-इन Screen Sharing) पर फ़ॉलबैक करता है। macOS पर Connection Manager की कार्यक्षमता सीमित है (`nmcli` उपलब्ध नहीं है)।

### विकल्प 6 — डेबियन / उबंटू / लिनक्स मिंट (इंस्टॉल स्क्रिप्ट)

> **Linux Mint / Ubuntu उपयोगकर्ताओं के लिए नोट:** Python 3.12+ पर `pip install` सिस्टम-व्यापी रूप से अवरुद्ध है (PEP 668 — `externally-managed-environment`)। प्रदान की गई इंस्टॉल स्क्रिप्ट का उपयोग करें — यह स्वचालित रूप से एक वर्चुअल वातावरण बनाती है और एक `.desktop` प्रविष्टि इंस्टॉल करती है।```bash
git clone https://github.com/thongor77/nmlinux.git
cd nmlinux
bash install.sh

The script will:

  • apt के माध्यम से सिस्टम निर्भरताएँ स्थापित करें (libgl1, python3-venv, freerdp, tigervnc…)
  • ~/.local/share/nmlinux/venv में एक वर्चुअल वातावरण बनाएँ
  • venv के अंदर NMLinux और इसकी Python निर्भरताएँ स्थापित करें
  • ~/.local/bin/nmlinux पर एक लॉन्चर बनाएँ
  • एक .desktop प्रविष्टि जोड़ें ताकि NMLinux आपके एप्लिकेशन मेनू में दिखाई दे

स्थापना के बाद, टर्मिनल से nmlinux चलाएँ या इसे एप्लिकेशन मेनू से लॉन्च करें।

विकल्प 7 — Wheel (सभी डिस्ट्रो / macOS)

.whl को नवीनतम रिलीज़ से डाउनलोड करें और इसे स्थापित करें:```bash

Arch / Fedora / macOS — no pip restrictions

pip install nmlinux-1.5.3-py3-none-any.whl

Debian / Ubuntu / Mint — install system libs first, then use pipx

Ubuntu ≤24.04:

sudo apt install libgl1 libglib2.0-0 libdbus-1-3 freerdp2-x11 tigervnc-viewer

Ubuntu 26.04+:

sudo apt install libgl1 libglib2.0-0 libdbus-1-3 freerdp3-x11 tigervnc-viewer

pipx install nmlinux-1.5.3-py3-none-any.whl

> **Ubuntu 26.04+ के लिए नोट:** `pipx` के लिए पहले सिस्टम लाइब्रेरीज़ (libGL, आदि) स्थापित होना आवश्यक है — ऊपर दिए गए कमांड उन्हें कवर करते हैं। यदि `pipx install` PySide6 बिल्ड त्रुटि के कारण विफल हो जाता है, तो इसके बजाय **Option 4** (इंस्टॉल स्क्रिप्ट) का उपयोग करें, जो सब कुछ स्वचालित रूप से संभाल लेती है।

### Option 8 — स्रोत से (Arch / Fedora / macOS)```bash
git clone https://github.com/thongor77/nmlinux.git
cd nmlinux
pip install PySide6 ptyprocess pyte tftpy
python3 -m nmlinux.main

विकल्प 9 — डेस्कटॉप प्रविष्टि (KDE / GNOME / आदि)

NMLinux को आपके एप्लिकेशन लॉन्चर में दिखाने के लिए .desktop फ़ाइल कॉपी करें:```bash cp data/nmlinux.desktop ~/.local/share/applications/ update-desktop-database ~/.local/share/applications/

फिर ज़रूरत पड़ने पर फ़ाइल में `Exec=` पथ संपादित करें।

---

## चलाना```bash
./nmlinux.sh
# or, after pip install:
nmlinux
# or directly:
python3 -m nmlinux.main

परियोजना संरचना```

nmlinux/ core/ i18n.py — Translation system (8 languages: fr/en/es/de/it/pt/ja/zh), tr(key) function icons.py — themed_icon(): 21 bundled Lucide SVG icons via QSvgRenderer theme.py — is_dark(), color_ok(), color_err(): runtime light/dark helpers settings.py — AppSettings dataclass, JSON persistence ssh.py — SshConnection dataclass, SshStore rdp.py — RdpConnection dataclass, RdpStore, find_xfreerdp() vnc.py — VncConnection dataclass, VncStore, find_vncviewer() terminal.py — SshWorker (QThread) + PTY via ptyprocess, emits raw bytes tls_watchlist.py — TlsWatchlist: background cert expiry checker, JSON persistence http_server.py — ThreadedHTTPServer: directory listing, GET/PUT/POST, port binding tftp_helper.py — TftpServerThread: tftpy wrapper, configurable port and root help_content.py — Module contextual help strings (all 8 languages) cli_bar.py — CliBar singleton: pedagogical CLI equivalent bar export_dialog.py — open_export_dialog(): QFileDialog with live extension update command_palette.py — CommandPalette (Ctrl+P): fuzzy search across 29 modules export_manager.py — collect_snapshot(), to_json/text/markdown/pdf, save_export() pages/ about.py — About page (credits, tools & services) bandwidth.py — Bandwidth Monitor: per-interface 60s graph, live stats connection_manager.py — Connection Manager: nmcli profiles, connect/disconnect/edit dashboard.py — Dashboard dns.py — DNS Lookup file_transfer.py — File Transfer: TFTP + HTTP server, live log, pkexec for port 69 firewall.py — Firewall Viewer: nftables + iptables parser, live via pkexec help_page.py — Contextual help overlay hosts.py — Hosts File: view/edit /etc/hosts, toggle entries, save via pkexec interfaces.py — Network Interfaces ip_scanner.py — IP Scanner mtr.py — MTR: mtr --report parser, live hop stats table, export nmap_scan.py — Nmap ping.py — Ping Monitor port_scanner.py — Port Scanner rdp.py — Remote Desktop: RDP profiles, launches xfreerdp settings.py — Settings page smb_nfs.py — SMB/NFS Browser: smbclient + showmount snmp.py — SNMP sntp.py — SNTP / NTP speedtest.py — Speed Test: curl + Cloudflare, history graph ssh.py — SSH page (connection manager + terminal) ssh_keys.py — SSH Key Manager: list/generate/deploy/delete key pairs subnet.py — Subnet Calculator terminal_view.py — TerminalView: pyte VT100 emulator + QPainter renderer tls.py — TLS Inspector + TLS Watchlist: cert details, background expiry monitor topology.py — Topology Map: nmap -sn, interactive graph, zoom/pan traceroute.py — Visual Traceroute: world map, geolocation, zoom/pan vnc.py — VNC: connection profiles, launches vncviewer whois.py — Whois wifi.py — Wi-Fi wol.py — Wake on LAN: magic packet, persistent host book assets/ icons/ — 21 bundled Lucide SVG icons (#60a5fa) world.geojson — Natural Earth 110m countries (map background) window.py — MainWindow (sidebar + QStackedWidget) main.py — Entry point

---

## डेस्कटॉप वातावरण संगतता

v1.2.7 से, NMLinux रनटाइम पर `QSvgRenderer` के माध्यम से प्रस्तुत 21 बंडल किए गए [Lucide](https://lucide.dev) SVG आइकन का उपयोग करता है। ऐप अब किसी भी सिस्टम आइकन थीम (Breeze, Adwaita, Papirus…) पर निर्भर नहीं है और KDE, GNOME, XFCE और अन्य पर सही ढंग से प्रदर्शित होता है। Qt शैली चालू डेस्कटॉप पर स्वचालित रूप से समायोजित हो जाती है।

---

## सीमाएँ

### Linux
पूर्ण समर्थन — सभी 29 मॉड्यूल उपलब्ध हैं।

### macOS
अधिकांश मॉड्यूल बिना किसी अतिरिक्त सेटअप के काम करते हैं क्योंकि वे दोनों प्लेटफ़ॉर्म पर उपलब्ध टूल्स पर निर्भर हैं (`ssh`, `dig`, `ping`, `curl`, `nmap`, `openssl`…)।

**9 मॉड्यूल को स्पष्ट macOS अनुकूलन की आवश्यकता थी** (स्टार्टअप पर प्लेटफ़ॉर्म का पता लगाने वाले दोहरे कोड पथ): Dashboard, Interfaces, Wi-Fi, Topology, Bandwidth, Firewall, Connection Manager, Hosts File, MTR — ये अपने Linux समकक्षों के बजाय मूल macOS कमांड (`ifconfig`, `networksetup`, `scutil`, `pfctl`, `system_profiler`…) का उपयोग करते हैं।

**सीमित या बिना macOS समर्थन वाले मॉड्यूल:**

| Module | Status | Notes |
|--------|--------|-------|
| **RDP** | ✓ macOS | `open rdp://` पर फ़ॉलबैक → Microsoft Remote Desktop (App Store) |
| **VNC** | ✓ macOS | `open vnc://` पर फ़ॉलबैक → Screen Sharing (अंतर्निहित, शून्य इंस्टॉल) |
| **IP Scanner** | ✓ macOS | `socket.gethostbyaddr()` का उपयोग करता है — मूल Python, कोई अतिरिक्त टूल नहीं |
| **SMB** | ✓ macOS | `smbclient` के बजाय `smbutil view` (अंतर्निहित) का उपयोग करता है |
| **NFS** | ✓ macOS | `showmount` अंतर्निहित; हेडर पार्सिंग अनुकूलित |
| **Connection Manager** | ⚠ सीमित | संपादन/हटाने के लिए `nmcli` (केवल Linux) आवश्यक है; सूची दृश्य काम करता है |

### सामान्य
- कोई root/polkit एकीकरण नहीं — उन्नत विशेषाधिकारों की आवश्यकता वाले टूल्स (कुछ Nmap मोड, रॉ सॉकेट) को `sudo` के साथ चलाना चाहिए; macOS पर, विशेषाधिकार वृद्धि `osascript` + `administrator privileges` का उपयोग करती है
- SSH agent फ़ॉरवर्डिंग के लिए एक सक्रिय SSH agent (`SSH_AUTH_SOCK`) आवश्यक है; macOS पर यह सिस्टम द्वारा स्वचालित रूप से संभाला जाता है, किसी मैन्युअल सेटअप की आवश्यकता नहीं है

---

## श्रेय और आभार

- **[Anthropic](https://www.anthropic.com)** — Claude Code, इस प्रोजेक्ट को बनाने के लिए उपयोग किया गया AI सहायक
- लेखक, दृष्टि, परीक्षण और दिशा के लिए

---

## परियोजना का समर्थन करें

यदि NMLinux आपके लिए उपयोगी है, तो इसके विकास में सहयोग करने पर विचार करें:

- **PayPal** — [PayPal के माध्यम से दान करें](https://www.paypal.com/donate/?business=JFQGY7NU3ANCN&no_recurring=0&item_name=Every+donation%2C+no+matter+how+small%2C+helps+me+keep+this+project+alive.+Thank+you%21%0A&currency_code=EUR)
- **Bitcoin** — `bc1qspe0tky7552qas72wgn8w9dswr0dxlv24w39t6ztjqk3nz6kc5tqv753a4`

---

## लाइसेंस

GPL-2.0 — [LICENSE](https://github.com/thongor77/nmlinux/blob/main/LICENSE) देखें।

यह प्रोजेक्ट एक स्वतंत्र पुनर्कार्यान्वयन है। NETworkManager से कोई कोड उपयोग या अनुवादित नहीं किया गया।

श्रेणियाँ