net-vm,gui-vm: Enhance xdg-dbus-proxy with system bus D-Bus proxy#1432
net-vm,gui-vm: Enhance xdg-dbus-proxy with system bus D-Bus proxy#1432brianmcgillion merged 1 commit intotiiuae:mainfrom
Conversation
|
Really promising stuff! |
|
No, let's keep it separate.
…On Thu, 25 Sep 2025, at 13:08, Vunny Sodhi wrote:
***@***.**** commented on this pull request.
In packages/pkgs-by-name/dbus-proxy/package.nix <#1432 (comment)>:
> + owner = "tiiuae";
+ repo = "DBus_proxy";
If `DBus_proxy` is a small project, I recommend to move it under ghafpkgs <https://github.com/tiiuae/ghafpkgs/tree/main/packages>
—
Reply to this email directly, view it on GitHub <#1432 (review)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/ABH2BWC5STJGC7X4IFQ7SOD3UO5IXAVCNFSM6AAAAACHLBFKVGVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZTENRWHA3TSNRTGU>.
You are receiving this because your review was requested.Message ID: ***@***.***>
|
|
NetworkManager Integration |
|
Tested on darp11-b:
Additional:
Cosmic settings app Network page works as intended - networks are listed, can be disconnected/connected, Wi-Fi can be disabled/enabled, new connections can be added. Great work! |
kajusnau
left a comment
There was a problem hiding this comment.
Some minor changes
Please also enable Cosmic settings network page, as it seems to work as intended with this proxy:
# in overlays/custom-packages/cosmic/cosmic-settings/default.nix
# uncomment line 23:
"page-networking"
557353d to
97f1d9d
Compare
97f1d9d to
3a4ab38
Compare
|
Tested on Darter Pro ( All seems to be working nicely!
|
Switch nm-applet from private xdg-dbus-proxy to system bus connection.
Previously nm-applet used its own bus with xdg-dbus-proxy in net-vm.
Now uses local dbus-proxy service on gui-vm system bus instead.
Signed-off-by: Jaroslaw Kurowski <jaroslaw.kurowski@tii.ae>
3a4ab38 to
17eb5cc
Compare
Description of Changes
D-Bus Proxy Changes for Ghaf
What Changed
net-vm:
Updated xdg-proxy-config to expose NetworkManager's D-Bus interface to other VMs
gui-vm:
Added dbus-proxy service that:
Connects to net-vm's NetworkManager
Claims NetworkManager's name on local system bus
Exchanges all D-Bus traffic between nm-applet and NetworkManager
Connection:
Reused existing socket connections between VMs
No new security holes or connections needed
nm-applet:
Now connects to local system bus instead of trying to reach net-vm directly
Works normally without knowing NetworkManager is in another VM
Why It Works
The proxy makes NetworkManager in net-vm appear as if it's running locally in gui-vm. nm-applet talks to what it thinks is a local NetworkManager, but the proxy in background forwards everything to net-vm.
This keeps the network isolated in net-vm while letting users control it from gui-vm.
Type of Change
Related Issues / Tickets
Checklist
make-checksand it passesTesting Instructions
Applicable Targets
aarch64aarch64x86_64x86_64x86_64Installation Method
nixos-rebuild ... switchTest Steps To Verify:
Boot Ghaf
Verify both net-vm and gui-vm start successfully
Check dbus-proxy service is running in gui-vm: systemctl status dbus-proxy.service
Log in and verify nm-applet
Check nm-applet icon appears in system tray
Click icon - menu should show available networks
Connect to a WiFi network (verify password prompt works)
Disconnect from network
Toggle WiFi on/off
Disconnect/reconnect USB network card
Check "Connection Information" displays correct IP/DNS details
Verify network changes reflect immediately in icon
Test resilience
Logout, login
Verify nm-applet reconnects
Restart net-vm: sudo systemctl restart microvm@net-vm.service (on host)
Verify it reconnects once net-vm is back (waiting period may be around 10-20 secs)
Restart nm-apple servicet: systemctl --user restart nm-applet.service (under logged in user)
Should reconnect without proxy restart