aboutsummaryrefslogtreecommitdiffstats
path: root/desktop/modules/network/README.md
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-09-14 13:49:52 +0200
committerDanilo M. <danix@danix.xyz>2026-09-14 13:49:52 +0200
commit856e7c25ebb244fb58f0da6cf5d5170d6a3cb68e (patch)
tree38a4c80e96baa4482cd4966c77c927a928f17b4d /desktop/modules/network/README.md
parente1a1e4953d90d2c92ae9d6a6fece0fb333639fe7 (diff)
downloadquickshell-856e7c25ebb244fb58f0da6cf5d5170d6a3cb68e.tar.gz
quickshell-856e7c25ebb244fb58f0da6cf5d5170d6a3cb68e.zip
docs(desktop): document the network module
Diffstat (limited to 'desktop/modules/network/README.md')
-rw-r--r--desktop/modules/network/README.md33
1 files changed, 33 insertions, 0 deletions
diff --git a/desktop/modules/network/README.md b/desktop/modules/network/README.md
new file mode 100644
index 0000000..fbf43e1
--- /dev/null
+++ b/desktop/modules/network/README.md
@@ -0,0 +1,33 @@
+# network
+
+Wired and wifi in one module, because a connected `eth0` must not mask the
+wifi state.
+
+The tile shows one line per active link. When both wired and wifi are up it
+shows both: the API exposes no route metric, so it does not guess which link
+carries traffic.
+
+The page lists managed wired devices, then a wifi radio switch and list. A
+row click connects; a secured network that is not yet known reveals an inline
+password field. Known networks offer Forget, the connected one Disconnect.
+
+## Service lifetime
+
+`alwaysActive: true`, and truthfully: the `Quickshell.Networking` backend
+pushes and there is no poll to gate. There is no `Service.qml`, unlike sound
+and vm, because there is no loop to own. Referencing `Networking` in
+`NetworkModule.qml` is what instantiates it at shell start.
+
+The backend is empty for about two seconds after launch and then fills. Every
+binding repaints when it arrives; nothing caches the first paint.
+
+## Not built
+
+Joining a hidden network. It would need a NetworkManager settings profile
+built from scratch, and `NMSettings` is not in QML scope (`typeof` is
+`undefined`), so there is no way to construct one from QML. Enterprise and
+802.1x networks are out for the same class of reason.
+
+Disconnect and forget failures. Neither backend exposes a failure signal for
+them, so a failure shows only as the list not changing. Noted rather than
+faked.