GhostBSD/networkmgr e2b3a3b. setup.py, src link-up.py auto-switch.py

Merge pull request #123 from ghostbsd/devd

Improve devd scripts and bump version to 6.8
DeltaFile
+17-39src/link-up.py
+21-23src/auto-switch.py
+12-14src/setup-nic.py
+4-4src/networkmgr.conf
+1-1setup.py
+55-815 files

GhostBSD/networkmgr 7289d2dsrc link-up.py

Add PIPE to subprocess.run in link-up.py for stdout capture

- Updated subprocess.run with `stdout=PIPE` for capturing output
- Removed unnecessary `close_fds` parameter (default True in Python 3)
DeltaFile
+2-2src/link-up.py
+2-21 files

GhostBSD/networkmgr ccd165b. setup.py, src link-up.py auto-switch.py

Improve devd scripts and bump version to 6.8

- Replace Popen with subprocess.run() for cleaner code and better resource handling across all devd scripts
- Use proper raw string prefix (r"") for regex patterns
- Remove deprecated close_fds parameter (default True in Python 3)
- Change devd priority from 100 to 5 for faster event handling

auto-switch.py:
- Create marker file /tmp/link-down-{nic} for coordination with link-up.py
- Replace os.system() calls with subprocess.run()

link-up.py:
- Simplify logic using marker file from auto-switch.py
- Remove complex /tmp/network-{nic} state tracking
- Use explicit service calls instead of shell command strings

setup-nic.py:
- Use sysrc command instead of manual rc.conf file writing
- Fix wlan configuration logic to check wlans_{nic} only once
- Use appropriate pccard_ether action (startchildren for WiFi, start forEthernet)
DeltaFile
+17-39src/link-up.py
+21-23src/auto-switch.py
+12-14src/setup-nic.py
+4-4src/networkmgr.conf
+1-1setup.py
+55-815 files

GhostBSD/networkmgr 106d5ccNetworkMgr configuration.py query.py

Merge pull request #121 from Kernel-Error/feature/ipv6-support

Add IPv6 configuration support
DeltaFile
+167-44NetworkMgr/configuration.py
+106-0NetworkMgr/query.py
+61-0NetworkMgr/net_api.py
+334-443 files

GhostBSD/networkmgr 9ccfa4fNetworkMgr query.py

Fix ipv6_defaultrouter regex to properly match interface suffix
DeltaFile
+1-1NetworkMgr/query.py
+1-11 files

GhostBSD/networkmgr 3dbcdf2NetworkMgr net_api.py query.py

Address code review feedback

- Fix ipv6_defaultrouter regex to match link-local with interface suffix
- Fix enable_slaac docstring to match actual behavior
- Fix get_ipv6_addresses docstring (returns all addresses, not filtered)
DeltaFile
+6-4NetworkMgr/net_api.py
+2-1NetworkMgr/query.py
+8-52 files

GhostBSD/networkmgr 134e2e7NetworkMgr configuration.py query.py

Add IPv6 configuration support

Implement IPv6 support in the Network Configuration dialog:

- Add SLAAC (Stateless Address Autoconfiguration) support
- Add static IPv6 address configuration
- Add IPv6 gateway configuration (with link-local address support)
- Add IPv6 DNS server configuration
- Fix existing GUI bugs (labels, connect handlers)

New functions in net_api.py:
- start_static_ipv6_network()
- enable_slaac() / disable_slaac()
- get_ipv6_addresses()
- has_slaac_enabled()
- get_ipv6_gateway()

New function in query.py:
- get_interface_settings_ipv6()

    [4 lines not shown]
DeltaFile
+167-44NetworkMgr/configuration.py
+105-0NetworkMgr/query.py
+59-0NetworkMgr/net_api.py
+331-443 files

GhostBSD/networkmgr e222f08NetworkMgr trayicon.py net_api.py, docs TESTING_ENTERPRISE_WPA.md

Merge pull request #119 from Kernel-Error/feature/enterprise-wpa-support

Add Enterprise WPA (802.1X/EAP) support
DeltaFile
+292-9NetworkMgr/trayicon.py
+241-0docs/TESTING_ENTERPRISE_WPA.md
+227-0tests/unit/test_enterprise_wpa.py
+203-4NetworkMgr/net_api.py
+1-2NetworkMgr/wg_api.py
+1-1src/setup-nic.py
+965-166 files

GhostBSD/networkmgr 616c5ecdocs TESTING_ENTERPRISE_WPA.md

Update docs/TESTING_ENTERPRISE_WPA.md

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
DeltaFile
+1-1docs/TESTING_ENTERPRISE_WPA.md
+1-11 files

GhostBSD/networkmgr 00cd68fNetworkMgr net_api.py trayicon.py, tests/unit test_enterprise_wpa.py

Address code review feedback

- Add input escaping for wpa_supplicant.conf values (security)
- Use context manager and error handling for config file reads
- Fix i18n strings to use %s interpolation instead of f-strings
- Fix test expectation for bare RSN classification
DeltaFile
+18-9NetworkMgr/net_api.py
+10-4NetworkMgr/trayicon.py
+2-1tests/unit/test_enterprise_wpa.py
+30-143 files

GhostBSD/networkmgr b426c08NetworkMgr trayicon.py

Fix caps_string index bug causing PSK to be detected as WEP

The setup_wpa_supplicant function was using index 6 (short CAPS like
"EPS") instead of index 7 (full caps_string like "RSN HTCAP WME...").

Since "EPS" doesn't contain 'RSN' or 'WPA', networks were incorrectly
falling through to WEP configuration, causing authentication failures.
DeltaFile
+3-1NetworkMgr/trayicon.py
+3-11 files

GhostBSD/networkmgr 7174afcNetworkMgr net_api.py

Improve enterprise network detection heuristic for FreeBSD

FreeBSD ifconfig scan doesn't distinguish PSK from EAP explicitly.
Use heuristic: RSN without WPS and without typical consumer router
features (HTCAP, VHTCAP, ATH, WME) suggests enterprise AP.
DeltaFile
+23-2NetworkMgr/net_api.py
+23-21 files

GhostBSD/networkmgr ab62a3aNetworkMgr trayicon.py

Fix enterprise detection: check correct index (9) for enterprise flag
DeltaFile
+2-2NetworkMgr/trayicon.py
+2-21 files

GhostBSD/networkmgr 821460aNetworkMgr wg_api.py

Fix KeyError when WireGuard directory does not exist
DeltaFile
+1-2NetworkMgr/wg_api.py
+1-21 files

GhostBSD/networkmgr 8844266NetworkMgr trayicon.py net_api.py, docs TESTING_ENTERPRISE_WPA.md

Add Enterprise WPA (802.1X/EAP) support

- Add detection of enterprise networks in scan results
- Implement EnterpriseAuthentication dialog with support for:
  - EAP methods: PEAP, TTLS, TLS, LEAP, FAST, PWD
  - Phase 2 authentication: MSCHAPV2, GTC, PAP, CHAP, MD5
  - CA certificate selection
  - Client certificate/key for TLS
  - Anonymous identity support
- Generate proper wpa_supplicant.conf blocks for EAP
- Add certificate validation helpers
- Fix security issue: wpa_supplicant.conf permissions (0o765 -> 0o600)
- Add unit tests for enterprise WPA functions
- Add FreeRADIUS test setup documentation

Addresses: ghostbsd/networkmgr#24
DeltaFile
+284-9NetworkMgr/trayicon.py
+241-0docs/TESTING_ENTERPRISE_WPA.md
+226-0tests/unit/test_enterprise_wpa.py
+173-4NetworkMgr/net_api.py
+1-1src/setup-nic.py
+925-145 files

GhostBSD/networkmgr eb901cepo zh_CN.po

Merge pull request #117 from ykla/patch-1

Update Simplified Chinese translation
DeltaFile
+15-15po/zh_CN.po
+15-151 files

GhostBSD/networkmgr 33c50c0NetworkMgr wg_api.py trayicon.py

Merge pull request #116 from MatthiasLanter/master

Add basic WireGuard functions
DeltaFile
+69-0NetworkMgr/wg_api.py
+41-0NetworkMgr/trayicon.py
+110-02 files

GhostBSD/networkmgr ec48633NetworkMgr wg_api.py

suggestion (bug_risk): File handle 'content' is not closed after reading.

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
DeltaFile
+5-5NetworkMgr/wg_api.py
+5-51 files

GhostBSD/networkmgr 286500eNetworkMgr wg_api.py trayicon.py

Revised version, checked with Pylint
Wireguard menu entries only if configuration exists and Wireguard service is stopped
DeltaFile
+36-39NetworkMgr/wg_api.py
+23-21NetworkMgr/trayicon.py
+59-602 files

GhostBSD/networkmgr ae3088dpo zh_CN.po

Update Simplified Chinese translation
DeltaFile
+15-15po/zh_CN.po
+15-151 files

GhostBSD/networkmgr 15a017aNetworkMgr wg_api.py

Use f-string instead of string concatenation

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
DeltaFile
+1-1NetworkMgr/wg_api.py
+1-11 files

GhostBSD/networkmgr 8def754NetworkMgr wg_api.py trayicon.py

Add basic WireGuard functions to connect and disconnect tunnel based on WireGuard configurations
DeltaFile
+72-0NetworkMgr/wg_api.py
+39-0NetworkMgr/trayicon.py
+111-02 files

GhostBSD/networkmgr bdbb110po de.po nb_NO.po, src/locale/ru networkmgr.po

Merge pull request #115 from ghostbsd/fix-il8n

Remove legacy translation files and scripts; add new PO files for translations
DeltaFile
+0-114src/locale/zh_CN/networkmgr.po
+0-113src/locale/ru/networkmgr.po
+113-0po/de.po
+113-0po/nb_NO.po
+113-0po/ru.po
+113-0po/sv.po
+452-22711 files not shown
+471-70817 files

GhostBSD/networkmgr fdcb0b3po ru.po sv.po, src/locale/de networkmgr.po

Remove legacy translation files and scripts; add new PO files for translations
DeltaFile
+0-114src/locale/zh_CN/networkmgr.po
+113-0po/ru.po
+113-0po/sv.po
+0-113src/locale/de/networkmgr.po
+0-113src/locale/nb_NO/networkmgr.po
+0-113src/locale/ru/networkmgr.po
+226-45311 files not shown
+471-70817 files

GhostBSD/networkmgr cae284d. setup.py

Update setup.py
DeltaFile
+1-1setup.py
+1-11 files

GhostBSD/networkmgr 3c1eb58.github FUNDING.yml

Merge pull request #113 from ghostbsd/ericbsd-patch-1

Delete .github/FUNDING.yml
DeltaFile
+0-12.github/FUNDING.yml
+0-121 files

GhostBSD/networkmgr 2998760.github FUNDING.yml

Delete .github/FUNDING.yml
DeltaFile
+0-12.github/FUNDING.yml
+0-121 files

GhostBSD/networkmgr 05d1de9po zh_CN.po

Merge pull request #111 from ykla/master

Added translation for Simplified Chinese
DeltaFile
+114-0po/zh_CN.po
+114-01 files

GhostBSD/networkmgr 429ace3po zh_CN.po

zh_CN.po: Wifi--->WIFI
DeltaFile
+1-1po/zh_CN.po
+1-11 files

GhostBSD/networkmgr 7c1d79fpo zh_CN.po

Added translation for Simplified Chinese
DeltaFile
+114-0po/zh_CN.po
+114-01 files