nosignal-shell/services
Kalagmitan dd2d7dceab
systemusage: optimized storage aggregation and improved device filtering (#1261)
* refactor: Optimized storage aggregation

+ The storage aggregation logic doesn't account more complex storage
setups and relied too much on risky string parsing to guess where
partitions are. For example, in my case, I had a LUKS-encrypted drive
which lives inside a "crypt," because it couldn't match the type (it
only matched "disk" and "part"), it did not include my entire drive at
all. Also, Linux devices names aren't always predictable (take mapper
devices or complex NVMe paths), so if the RegEx doesn't match the name
of those devices, the data just dissapears.

I decided to go for a JSON approach making the code shorter and safer.

Everything should work about the same.

* systemusage: More intuitive filtering for storage devices

+ Removes "useless" drives from being show on the storage dashboard
+ Prioritizes the root disk to be shown first

* refactor: formatted code properly
2026-03-15 17:49:37 +11:00
..
Audio.qml audio: replace reactive reduce with imperative node categorisation 2026-03-12 21:55:22 +11:00
Brightness.qml feat: add excluded screens config opt 2026-03-13 00:25:58 +11:00
Colours.qml plugin: add image analyser 2025-09-24 01:37:53 +10:00
GameMode.qml plugin/hypr: add more helpers 2025-09-25 00:40:55 +10:00
Hypr.qml shortcuts: add special workspace cycle (#1158) 2026-02-11 11:44:23 +11:00
IdleInhibitor.qml idleinhibitor: completely hide window 2025-09-18 13:23:58 +10:00
Network.qml network: debounce nmcli monitor events 2026-03-12 21:51:38 +11:00
NetworkUsage.qml feat: replace canvas -> c++ component 2026-03-12 22:51:07 +11:00
Nmcli.qml nmcli: use Map-based lookups for network deduplication 2026-03-12 21:51:44 +11:00
Notifs.qml notifs: use adaptive timer for timeStr instead of reactive binding 2026-03-12 21:49:55 +11:00
Players.qml toasts: add toast for media track change (#790) 2025-10-15 14:03:14 +11:00
Recorder.qml utilities: fix fullscreen record (#1085) 2026-01-16 22:10:33 +11:00
Screens.qml feat: add excluded screens config opt 2026-03-13 00:25:58 +11:00
SystemUsage.qml systemusage: optimized storage aggregation and improved device filtering (#1261) 2026-03-15 17:49:37 +11:00
Time.qml background: fix desktop clock 12h format 2026-01-20 20:53:34 +11:00
Visibilities.qml background: add visualiser 2025-08-25 20:13:55 +10:00
VPN.qml internal: format 2026-01-28 19:21:44 +11:00
Wallpapers.qml plugin: refactor into modules 2025-09-13 14:38:44 +10:00
Weather.qml lock: fix weather 2026-01-04 00:15:40 +11:00