Repository navigation
feat(networking): replace custom NetworkManager backend with nmrs - #2068
Conversation
|
This does not build locally. It looks like cosmic-protocols uses an older version of
|
|
@jklgrasso This happened on applets too, and was the case for |
|
Everything is working as I expect it to. Networking and otherwise. Could you create the PRs for |
|
@jklgrasso pop-os/cosmic-applets#1453 in applets is pending review right now. pop-os/cosmic-protocols#81 Is open on protocols |
39e8060 to
f9296bf
Compare
pop-os/cosmic-applets#1453 is merged |
Switch the networking pages to use nmrs 3.4.0 for NetworkManager state, device lists, Wi-Fi operations, VPN imports/activation, and secret-agent handling. Remove the old cosmic-settings-network-manager-subscription crate, drop the direct dbus-settings NetworkManager dependencies, and delete the unused nmcli VPN helper. Keep nm-connection-editor for profile creation/editing where the UI still depends on it. Carry Wi-Fi security metadata through the password flow so SAE/WPA3 personal networks can be activated with SAE key management, and make failed/cancelled auth attempts clear pending connection state
|
Didn't build due to the lock file. It now matches the master branch and builds locally. CI will start building this again in an hour or so. |
jklgrasso
left a comment
There was a problem hiding this comment.
Regression testing passed
Checklist
Network & Wireless
Wi-Fi
- Able to disconnect from and connect to a network.
Bluetooth
- Bluetooth device connects.
- Paired device can be disconnected & reconnected.
- Paired device can be forgotten & connecting again works.
Desktop
Wallpaper
- Clicking a different wallpaper switches to it immediately
- Leaving the page and coming back does not change the wallpaper
Appearance
- Open a COSMIC app and a GNOME app. When switching between Dark and Light mode, the COSMIC app switches immediately, and the GNOME app switches after restarting.
- Changing the accent color works.
- Changing the roundness style works and does not affect other aspects of the theme (e.g. color mode).
- Changing the interface density works.
Panel
- Enable tiling. "Automatically hide panel" takes effect immediately.
- Disable tiling; maximize a window. "Automatically hide panel" takes effect immediately.
- Not a regression
Dock
- Enable tiling. "Automatically hide dock" takes effect immediately.
- Disable tiling; maximize a window. "Automatically hide dock" takes effect immediately.
- Not a regression
- Changing position on screen works.
- All Style settings take effect as expected.
Displays
- Plug in a second display. Displays can be rearranged via dragging.
Sound
TBD after devices/profiles are fixed.
Power & Battery
- Changing power mode takes effect and is reflected by top panel applet.
Input Devices
Touchpad
- All click behavior settings work as expected.
- All scrolling settings work as expected.
Applications
Default Applications
- Changing the default terminal affects Super-T shortcut.
X11 Applications Compatibility
- Global Shortcuts in X11 Applications work (in e.g. Discord).
Time & Language
Date & Time
- Changing time zone works.
- Toggling 24-hour time takes effect in Settings preview, on top panel, and on the lock screen.
- Toggling seconds takes effect in Settings preview and on top panel.
- Changing first day of week takes effect in Calendar applet.
- Turning date on/off for applet works.
System & Accounts
About
- Changing hostname works (check terminal prompt).
|
Perhaps the regression tests should also include importing VPN configurations & testing VPNs after import. This PR may have broken WireGuard configuration import. |
As seen in the applets (pop-os/cosmic-applets#1453 and pop-os/cosmic-applets#1392), this PR migrates the hand-rolled NetworkManager backend in cosmic-settings with nmrs.
Specifically, we switch the networking pages to use nmrs 3.4.0 for NetworkManager state, device lists, Wi-Fi operations, VPN imports/activation, and secret-agent handling.
This PR also removes the old cosmic-settings-network-manager-subscription crate, drops the direct dbus-settings NetworkManager dependencies, and deletes the unused nmcli VPN helper. I kept nm-connection-editor for profile creation/editing where the UI still depends on it since it's not very conducive to switch everything, obviously.
I also carry Wi-Fi security metadata through the password flow so SAE/WPA3 personal networks can be activated with SAE key management, and make failed/cancelled auth attempts clear pending connection state