Turning on a WireGuard profile whose server was unreachable used to cost the whole network stack, and the only way out was nmcli typed into a terminal. Quickshell's Networking module has no VPN surface, so this arrives as the one sanctioned nmcli exception: a helper that lists, raises and lowers profiles, a service that watches NetworkManager for changes made anywhere, a quick settings tile (left-click toggles the most recently used profile, right-click picks among them), and a bar glyph while a tunnel is up. The safety property is in the helper, where it cannot be skipped: activation waits a bounded 25 seconds, and a failure is rolled back down and reported instead of leaving a black-hole default route. The contract pins exactly that, against a stateful stub NetworkManager. Claude-Session: https://claude.ai/code/session_01Epx9ZC1gwm81K3jm9x9CKh
22 lines
742 B
Plaintext
22 lines
742 B
Plaintext
module qs.modules.quicksettings
|
|
AudioDeviceList 1.0 AudioDeviceList.qml
|
|
AudioSlider 1.0 AudioSlider.qml
|
|
BluetoothList 1.0 BluetoothList.qml
|
|
BrightnessControl 1.0 BrightnessControl.qml
|
|
ControlSectionHeader 1.0 ControlSectionHeader.qml
|
|
HomeBrightnessSlider 1.0 HomeBrightnessSlider.qml
|
|
HomeControls 1.0 HomeControls.qml
|
|
HomeTile 1.0 HomeTile.qml
|
|
IconButton 1.0 IconButton.qml
|
|
PhoneActions 1.0 PhoneActions.qml
|
|
PhoneControls 1.0 PhoneControls.qml
|
|
QuickSettings 1.0 QuickSettings.qml
|
|
QuickSettingsPanel 1.0 QuickSettingsPanel.qml
|
|
RecentExchange 1.0 RecentExchange.qml
|
|
RowButton 1.0 RowButton.qml
|
|
ScrollColumn 1.0 ScrollColumn.qml
|
|
Section 1.0 Section.qml
|
|
VpnList 1.0 VpnList.qml
|
|
WifiList 1.0 WifiList.qml
|
|
PowerProfileList 1.0 PowerProfileList.qml
|