mirror of
				https://github.com/max-moser/network-manager-wireguard.git
				synced 2025-11-04 09:03:49 +03:00 
			
		
		
		
	Network-Manager VPN Plugin for Wireguard
Compilation
./autogen.shmake
Modifying the source (Visual Studio Code)
- Open the folder in Code
 - Do the compilation steps as above
 cat Makefile | ./includes2strings.py- take the output of the script and put it in the appropriate section of 
.vscode/c_cpp_properties.json(for me: appended toincludePathof configurationLinux) 
Execution
The following section briefly describes how to start the stuff for testing purposes
./src/nm-openvpn-service --bus-name org.freedesktop.NetworkManager.wireguardto start the pluginexamples/dbus/dbus.pyto send Disconnect() to the plugin
Files
The following is a list of files that I created over the course of the project and is mainly for myself to keep track of them.
nm-wireguard-service.confincludes2strings.py
Knowledge
- The wireguard plugin basically handles incoming DBUS requests for the NM VPN Plugin Interface (can be looked at via 
examples/dbus/dbus.py) auth-dialog/nm-openvpn-auth-dialogreads the secrets from STDIN until the string "DONE" occurs and then proceeds to handle them
NM VPN Plugin: https://developer.gnome.org/libnm-glib/stable/libnm-glib-NMVPNPlugin.html
Settings VPN (sent via DBus on Connect(a{sa{sv}}) method): https://developer.gnome.org/libnm/stable/NMSettingVpn.html#nm-setting-vpn-get-data-item
Description
				
					Languages
				
				
								
								
									C
								
								89.1%
							
						
							
								
								
									M4
								
								5.3%
							
						
							
								
								
									Python
								
								3.2%
							
						
							
								
								
									Makefile
								
								2.3%
							
						
							
								
								
									Shell
								
								0.1%