diff --git a/Cargo.lock b/Cargo.lock
index 9b82d6cda6bbc963a51a4616113c0501aa79c919..31be5bda95203ac0bc5c8ac571ce8e7cc1becb8b 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -367,6 +367,29 @@ dependencies = [
 [[package]]
 name = "nm-reactor"
 version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "async-trait",
+ "clap",
+ "collective",
+ "dbus",
+ "dbus-tokio",
+ "futures",
+ "futures-channel",
+ "log",
+ "nm-reactor_dbus_codegen",
+ "num-derive",
+ "num-traits",
+ "pretty_env_logger",
+ "serde",
+ "serde_derive",
+ "tokio",
+ "tokio-stream",
+]
+
+[[package]]
+name = "nm-reactor_dbus_codegen"
+version = "0.1.0"
 dependencies = [
  "anyhow",
  "async-trait",
diff --git a/Cargo.toml b/Cargo.toml
index 86994ae1150fbf54131792ca1009d31254146e64..b9885806778ba46fa0b45edcbde20808596ff077 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -22,4 +22,5 @@ serde_derive = "1.0.115"
 num-derive = "0.3.3"
 num-traits = "0.2"
 futures = "0.3.18"
-async-trait = "0.1.52"
\ No newline at end of file
+async-trait = "0.1.52"
+nm-reactor_dbus_codegen = {path = "dbus_codegen"}
\ No newline at end of file
diff --git a/Makefile b/Makefile
index ff5b85fa9014687de98afee9bc9077b12ff67c0c..9f4f6fb67e3a1c10616cd7df69210ef9b1116030 100644
--- a/Makefile
+++ b/Makefile
@@ -1,28 +1,28 @@
-src/dbus_codegen:
-	mkdir src/dbus_codegen
+dbus_codegen/src:
+	mkdir dbus_codegen/src
 
-src/dbus_codegen/mod.rs: src/dbus_codegen
-	@echo -e "pub mod network_manager;\npub mod network_manager_access_point;\npub mod network_manager_settings;\npub mod network_manager_connection_active;\npub mod network_manager_device;\n" > src/dbus_codegen/mod.rs
+dbus_codegen/src/lib.rs: dbus_codegen/src
+	@echo -e "pub mod network_manager;\npub mod network_manager_access_point;\npub mod network_manager_settings;\npub mod network_manager_connection_active;\npub mod network_manager_device;\n" > dbus_codegen/src/lib.rs
 
-src/dbus_codegen/network_manager.rs: src/dbus_codegen
-	dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.xml -m None -c nonblock -o src/dbus_codegen/network_manager.rs
+dbus_codegen/src/network_manager.rs: dbus_codegen/src
+	dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.xml -m None -c nonblock -o dbus_codegen/src/network_manager.rs
 
-src/dbus_codegen/network_manager_access_point.rs: src/dbus_codegen
-	dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.AccessPoint.xml -m None -c nonblock -o src/dbus_codegen/network_manager_access_point.rs
+dbus_codegen/src/network_manager_access_point.rs: dbus_codegen/src
+	dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.AccessPoint.xml -m None -c nonblock -o dbus_codegen/src/network_manager_access_point.rs
 
-src/dbus_codegen/network_manager_connection_active.rs: src/dbus_codegen
-	dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.Connection.Active.xml -m None -c nonblock -o src/dbus_codegen/network_manager_connection_active.rs
+dbus_codegen/src/network_manager_connection_active.rs: dbus_codegen/src
+	dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.Connection.Active.xml -m None -c nonblock -o dbus_codegen/src/network_manager_connection_active.rs
 
-src/dbus_codegen/network_manager_device.rs: src/dbus_codegen
-	dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.Device.xml -m None -c nonblock -o src/dbus_codegen/network_manager_device.rs
+dbus_codegen/src/network_manager_device.rs: dbus_codegen/src
+	dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.Device.xml -m None -c nonblock -o dbus_codegen/src/network_manager_device.rs
 
-src/dbus_codegen/network_manager_settings.rs: src/dbus_codegen
-	dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.Settings.xml -m None -c nonblock -o src/dbus_codegen/network_manager_settings.rs
+dbus_codegen/src/network_manager_settings.rs: dbus_codegen/src
+	dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.Settings.xml -m None -c nonblock -o dbus_codegen/src/network_manager_settings.rs
 
-dbus: src/dbus_codegen/mod.rs src/dbus_codegen/network_manager.rs src/dbus_codegen/network_manager_connection_active.rs src/dbus_codegen/network_manager_device.rs src/dbus_codegen/network_manager_settings.rs
+dbus: dbus_codegen/src/lib.rs dbus_codegen/src/network_manager.rs dbus_codegen/src/network_manager_access_point.rs dbus_codegen/src/network_manager_connection_active.rs dbus_codegen/src/network_manager_device.rs dbus_codegen/src/network_manager_settings.rs
 
 dbus-clean:
-	rm -r src/dbus_codegen
+	rm -r dbus_codegen/src
 
 all: dbus
 clean: dbus-clean
\ No newline at end of file
diff --git a/dbus_codegen/Cargo.toml b/dbus_codegen/Cargo.toml
new file mode 100644
index 0000000000000000000000000000000000000000..540ac6538eda70202b5a181bf97e84f8a110f285
--- /dev/null
+++ b/dbus_codegen/Cargo.toml
@@ -0,0 +1,23 @@
+[package]
+name = "nm-reactor_dbus_codegen"
+version = "0.1.0"
+authors = ["Eduardo Trujillo <ed@chromabits.com>"]
+edition = "2018"
+
+[dependencies]
+anyhow = "1.0.40"
+pretty_env_logger = "0.4.0"
+log = "0.4.14"
+dbus = {version = "0.9.3", features=["futures"]}
+dbus-tokio = "0.7.4"
+tokio = {version = "1.0", features=["time", "net", "macros", "rt-multi-thread", "signal", "process", "io-std", "io-util"]}
+tokio-stream = "0.1"
+futures-channel = "0.3.17"
+collective = { git = "ssh://git@gitlab.chromabits.com:30022/etcinit/collective.git", branch = "master" }
+clap = "3.0.0-beta.5"
+serde = "1.0.115"
+serde_derive = "1.0.115"
+num-derive = "0.3.3"
+num-traits = "0.2"
+futures = "0.3.18"
+async-trait = "0.1.52"
\ No newline at end of file
diff --git a/src/dbus_codegen/mod.rs b/dbus_codegen/src/lib.rs
similarity index 99%
rename from src/dbus_codegen/mod.rs
rename to dbus_codegen/src/lib.rs
index d39cffe11d622cca23f675218ddb5597e275d7ae..59fda6e8bed3a2ad0dbef50277dcba00d574530f 100644
--- a/src/dbus_codegen/mod.rs
+++ b/dbus_codegen/src/lib.rs
@@ -1,5 +1,6 @@
 pub mod network_manager;
 pub mod network_manager_access_point;
+pub mod network_manager_settings;
 pub mod network_manager_connection_active;
 pub mod network_manager_device;
-pub mod network_manager_settings;
+
diff --git a/src/dbus_codegen/network_manager.rs b/dbus_codegen/src/network_manager.rs
similarity index 57%
rename from src/dbus_codegen/network_manager.rs
rename to dbus_codegen/src/network_manager.rs
index 22d98bd4e4d18d0c174a5978c25feeefab35948b..fd89c3bdae671806f53c601c06b7f0a5f2c3bc7e 100644
--- a/src/dbus_codegen/network_manager.rs
+++ b/dbus_codegen/src/network_manager.rs
@@ -1,5 +1,5 @@
-// This code was autogenerated with `dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.xml -m None -c nonblock -o src/dbus_codegen/network_manager.rs`, see https://github.com/diwic/dbus-rs
-use dbus;
+// This code was autogenerated with `dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.xml -m None -c nonblock -o dbus_codegen/src/network_manager.rs`, see https://github.com/diwic/dbus-rs
+use dbus as dbus;
 #[allow(unused_imports)]
 use dbus::arg;
 use dbus::nonblock;
@@ -9,50 +9,21 @@ pub trait OrgFreedesktopNetworkManager {
     fn get_devices(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>>;
     fn get_all_devices(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>>;
     fn get_device_by_ip_iface(&self, iface: &str) -> nonblock::MethodReply<dbus::Path<'static>>;
-    fn activate_connection(
-        &self,
-        connection: dbus::Path,
-        device: dbus::Path,
-        specific_object: dbus::Path,
-    ) -> nonblock::MethodReply<dbus::Path<'static>>;
-    fn add_and_activate_connection(
-        &self,
-        connection: ::std::collections::HashMap<&str, arg::PropMap>,
-        device: dbus::Path,
-        specific_object: dbus::Path,
-    ) -> nonblock::MethodReply<(dbus::Path<'static>, dbus::Path<'static>)>;
-    fn add_and_activate_connection2(
-        &self,
-        connection: ::std::collections::HashMap<&str, arg::PropMap>,
-        device: dbus::Path,
-        specific_object: dbus::Path,
-        options: arg::PropMap,
-    ) -> nonblock::MethodReply<(dbus::Path<'static>, dbus::Path<'static>, arg::PropMap)>;
+    fn activate_connection(&self, connection: dbus::Path, device: dbus::Path, specific_object: dbus::Path) -> nonblock::MethodReply<dbus::Path<'static>>;
+    fn add_and_activate_connection(&self, connection: ::std::collections::HashMap<&str, arg::PropMap>, device: dbus::Path, specific_object: dbus::Path) -> nonblock::MethodReply<(dbus::Path<'static>, dbus::Path<'static>)>;
+    fn add_and_activate_connection2(&self, connection: ::std::collections::HashMap<&str, arg::PropMap>, device: dbus::Path, specific_object: dbus::Path, options: arg::PropMap) -> nonblock::MethodReply<(dbus::Path<'static>, dbus::Path<'static>, arg::PropMap)>;
     fn deactivate_connection(&self, active_connection: dbus::Path) -> nonblock::MethodReply<()>;
     fn sleep(&self, sleep: bool) -> nonblock::MethodReply<()>;
     fn enable(&self, enable: bool) -> nonblock::MethodReply<()>;
-    fn get_permissions(&self)
-        -> nonblock::MethodReply<::std::collections::HashMap<String, String>>;
+    fn get_permissions(&self) -> nonblock::MethodReply<::std::collections::HashMap<String, String>>;
     fn set_logging(&self, level: &str, domains: &str) -> nonblock::MethodReply<()>;
     fn get_logging(&self) -> nonblock::MethodReply<(String, String)>;
     fn check_connectivity(&self) -> nonblock::MethodReply<u32>;
     fn state(&self) -> nonblock::MethodReply<u32>;
-    fn checkpoint_create(
-        &self,
-        devices: Vec<dbus::Path>,
-        rollback_timeout: u32,
-        flags: u32,
-    ) -> nonblock::MethodReply<dbus::Path<'static>>;
+    fn checkpoint_create(&self, devices: Vec<dbus::Path>, rollback_timeout: u32, flags: u32) -> nonblock::MethodReply<dbus::Path<'static>>;
     fn checkpoint_destroy(&self, checkpoint: dbus::Path) -> nonblock::MethodReply<()>;
-    fn checkpoint_rollback(
-        &self,
-        checkpoint: dbus::Path,
-    ) -> nonblock::MethodReply<::std::collections::HashMap<String, u32>>;
-    fn checkpoint_adjust_rollback_timeout(
-        &self,
-        checkpoint: dbus::Path,
-        add_timeout: u32,
-    ) -> nonblock::MethodReply<()>;
+    fn checkpoint_rollback(&self, checkpoint: dbus::Path) -> nonblock::MethodReply<::std::collections::HashMap<String, u32>>;
+    fn checkpoint_adjust_rollback_timeout(&self, checkpoint: dbus::Path, add_timeout: u32) -> nonblock::MethodReply<()>;
     fn devices(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>>;
     fn all_devices(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>>;
     fn checkpoints(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>>;
@@ -84,102 +55,59 @@ pub trait OrgFreedesktopNetworkManager {
     fn set_global_dns_configuration(&self, value: arg::PropMap) -> nonblock::MethodReply<()>;
 }
 
-impl<'a, T: nonblock::NonblockReply, C: ::std::ops::Deref<Target = T>> OrgFreedesktopNetworkManager
-    for nonblock::Proxy<'a, C>
-{
+impl<'a, T: nonblock::NonblockReply, C: ::std::ops::Deref<Target=T>> OrgFreedesktopNetworkManager for nonblock::Proxy<'a, C> {
+
     fn reload(&self, flags: u32) -> nonblock::MethodReply<()> {
-        self.method_call("org.freedesktop.NetworkManager", "Reload", (flags,))
+        self.method_call("org.freedesktop.NetworkManager", "Reload", (flags, ))
     }
 
     fn get_devices(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>> {
         self.method_call("org.freedesktop.NetworkManager", "GetDevices", ())
-            .and_then(|r: (Vec<dbus::Path<'static>>,)| Ok(r.0))
+            .and_then(|r: (Vec<dbus::Path<'static>>, )| Ok(r.0, ))
     }
 
     fn get_all_devices(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>> {
         self.method_call("org.freedesktop.NetworkManager", "GetAllDevices", ())
-            .and_then(|r: (Vec<dbus::Path<'static>>,)| Ok(r.0))
+            .and_then(|r: (Vec<dbus::Path<'static>>, )| Ok(r.0, ))
     }
 
     fn get_device_by_ip_iface(&self, iface: &str) -> nonblock::MethodReply<dbus::Path<'static>> {
-        self.method_call(
-            "org.freedesktop.NetworkManager",
-            "GetDeviceByIpIface",
-            (iface,),
-        )
-        .and_then(|r: (dbus::Path<'static>,)| Ok(r.0))
-    }
-
-    fn activate_connection(
-        &self,
-        connection: dbus::Path,
-        device: dbus::Path,
-        specific_object: dbus::Path,
-    ) -> nonblock::MethodReply<dbus::Path<'static>> {
-        self.method_call(
-            "org.freedesktop.NetworkManager",
-            "ActivateConnection",
-            (connection, device, specific_object),
-        )
-        .and_then(|r: (dbus::Path<'static>,)| Ok(r.0))
-    }
-
-    fn add_and_activate_connection(
-        &self,
-        connection: ::std::collections::HashMap<&str, arg::PropMap>,
-        device: dbus::Path,
-        specific_object: dbus::Path,
-    ) -> nonblock::MethodReply<(dbus::Path<'static>, dbus::Path<'static>)> {
-        self.method_call(
-            "org.freedesktop.NetworkManager",
-            "AddAndActivateConnection",
-            (connection, device, specific_object),
-        )
-    }
-
-    fn add_and_activate_connection2(
-        &self,
-        connection: ::std::collections::HashMap<&str, arg::PropMap>,
-        device: dbus::Path,
-        specific_object: dbus::Path,
-        options: arg::PropMap,
-    ) -> nonblock::MethodReply<(dbus::Path<'static>, dbus::Path<'static>, arg::PropMap)> {
-        self.method_call(
-            "org.freedesktop.NetworkManager",
-            "AddAndActivateConnection2",
-            (connection, device, specific_object, options),
-        )
+        self.method_call("org.freedesktop.NetworkManager", "GetDeviceByIpIface", (iface, ))
+            .and_then(|r: (dbus::Path<'static>, )| Ok(r.0, ))
+    }
+
+    fn activate_connection(&self, connection: dbus::Path, device: dbus::Path, specific_object: dbus::Path) -> nonblock::MethodReply<dbus::Path<'static>> {
+        self.method_call("org.freedesktop.NetworkManager", "ActivateConnection", (connection, device, specific_object, ))
+            .and_then(|r: (dbus::Path<'static>, )| Ok(r.0, ))
+    }
+
+    fn add_and_activate_connection(&self, connection: ::std::collections::HashMap<&str, arg::PropMap>, device: dbus::Path, specific_object: dbus::Path) -> nonblock::MethodReply<(dbus::Path<'static>, dbus::Path<'static>)> {
+        self.method_call("org.freedesktop.NetworkManager", "AddAndActivateConnection", (connection, device, specific_object, ))
+    }
+
+    fn add_and_activate_connection2(&self, connection: ::std::collections::HashMap<&str, arg::PropMap>, device: dbus::Path, specific_object: dbus::Path, options: arg::PropMap) -> nonblock::MethodReply<(dbus::Path<'static>, dbus::Path<'static>, arg::PropMap)> {
+        self.method_call("org.freedesktop.NetworkManager", "AddAndActivateConnection2", (connection, device, specific_object, options, ))
     }
 
     fn deactivate_connection(&self, active_connection: dbus::Path) -> nonblock::MethodReply<()> {
-        self.method_call(
-            "org.freedesktop.NetworkManager",
-            "DeactivateConnection",
-            (active_connection,),
-        )
+        self.method_call("org.freedesktop.NetworkManager", "DeactivateConnection", (active_connection, ))
     }
 
     fn sleep(&self, sleep: bool) -> nonblock::MethodReply<()> {
-        self.method_call("org.freedesktop.NetworkManager", "Sleep", (sleep,))
+        self.method_call("org.freedesktop.NetworkManager", "Sleep", (sleep, ))
     }
 
     fn enable(&self, enable: bool) -> nonblock::MethodReply<()> {
-        self.method_call("org.freedesktop.NetworkManager", "Enable", (enable,))
+        self.method_call("org.freedesktop.NetworkManager", "Enable", (enable, ))
     }
 
-    fn get_permissions(
-        &self,
-    ) -> nonblock::MethodReply<::std::collections::HashMap<String, String>> {
+    fn get_permissions(&self) -> nonblock::MethodReply<::std::collections::HashMap<String, String>> {
         self.method_call("org.freedesktop.NetworkManager", "GetPermissions", ())
-            .and_then(|r: (::std::collections::HashMap<String, String>,)| Ok(r.0))
+            .and_then(|r: (::std::collections::HashMap<String, String>, )| Ok(r.0, ))
     }
 
     fn set_logging(&self, level: &str, domains: &str) -> nonblock::MethodReply<()> {
-        self.method_call(
-            "org.freedesktop.NetworkManager",
-            "SetLogging",
-            (level, domains),
-        )
+        self.method_call("org.freedesktop.NetworkManager", "SetLogging", (level, domains, ))
     }
 
     fn get_logging(&self) -> nonblock::MethodReply<(String, String)> {
@@ -188,308 +116,162 @@ impl<'a, T: nonblock::NonblockReply, C: ::std::ops::Deref<Target = T>> OrgFreede
 
     fn check_connectivity(&self) -> nonblock::MethodReply<u32> {
         self.method_call("org.freedesktop.NetworkManager", "CheckConnectivity", ())
-            .and_then(|r: (u32,)| Ok(r.0))
+            .and_then(|r: (u32, )| Ok(r.0, ))
     }
 
     fn state(&self) -> nonblock::MethodReply<u32> {
         self.method_call("org.freedesktop.NetworkManager", "state", ())
-            .and_then(|r: (u32,)| Ok(r.0))
+            .and_then(|r: (u32, )| Ok(r.0, ))
     }
 
-    fn checkpoint_create(
-        &self,
-        devices: Vec<dbus::Path>,
-        rollback_timeout: u32,
-        flags: u32,
-    ) -> nonblock::MethodReply<dbus::Path<'static>> {
-        self.method_call(
-            "org.freedesktop.NetworkManager",
-            "CheckpointCreate",
-            (devices, rollback_timeout, flags),
-        )
-        .and_then(|r: (dbus::Path<'static>,)| Ok(r.0))
+    fn checkpoint_create(&self, devices: Vec<dbus::Path>, rollback_timeout: u32, flags: u32) -> nonblock::MethodReply<dbus::Path<'static>> {
+        self.method_call("org.freedesktop.NetworkManager", "CheckpointCreate", (devices, rollback_timeout, flags, ))
+            .and_then(|r: (dbus::Path<'static>, )| Ok(r.0, ))
     }
 
     fn checkpoint_destroy(&self, checkpoint: dbus::Path) -> nonblock::MethodReply<()> {
-        self.method_call(
-            "org.freedesktop.NetworkManager",
-            "CheckpointDestroy",
-            (checkpoint,),
-        )
-    }
-
-    fn checkpoint_rollback(
-        &self,
-        checkpoint: dbus::Path,
-    ) -> nonblock::MethodReply<::std::collections::HashMap<String, u32>> {
-        self.method_call(
-            "org.freedesktop.NetworkManager",
-            "CheckpointRollback",
-            (checkpoint,),
-        )
-        .and_then(|r: (::std::collections::HashMap<String, u32>,)| Ok(r.0))
-    }
-
-    fn checkpoint_adjust_rollback_timeout(
-        &self,
-        checkpoint: dbus::Path,
-        add_timeout: u32,
-    ) -> nonblock::MethodReply<()> {
-        self.method_call(
-            "org.freedesktop.NetworkManager",
-            "CheckpointAdjustRollbackTimeout",
-            (checkpoint, add_timeout),
-        )
+        self.method_call("org.freedesktop.NetworkManager", "CheckpointDestroy", (checkpoint, ))
+    }
+
+    fn checkpoint_rollback(&self, checkpoint: dbus::Path) -> nonblock::MethodReply<::std::collections::HashMap<String, u32>> {
+        self.method_call("org.freedesktop.NetworkManager", "CheckpointRollback", (checkpoint, ))
+            .and_then(|r: (::std::collections::HashMap<String, u32>, )| Ok(r.0, ))
+    }
+
+    fn checkpoint_adjust_rollback_timeout(&self, checkpoint: dbus::Path, add_timeout: u32) -> nonblock::MethodReply<()> {
+        self.method_call("org.freedesktop.NetworkManager", "CheckpointAdjustRollbackTimeout", (checkpoint, add_timeout, ))
     }
 
     fn devices(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "Devices",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "Devices")
     }
 
     fn all_devices(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "AllDevices",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "AllDevices")
     }
 
     fn checkpoints(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "Checkpoints",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "Checkpoints")
     }
 
     fn networking_enabled(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "NetworkingEnabled",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "NetworkingEnabled")
     }
 
     fn wireless_enabled(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "WirelessEnabled",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "WirelessEnabled")
     }
 
     fn wireless_hardware_enabled(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "WirelessHardwareEnabled",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "WirelessHardwareEnabled")
     }
 
     fn wwan_enabled(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "WwanEnabled",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "WwanEnabled")
     }
 
     fn wwan_hardware_enabled(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "WwanHardwareEnabled",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "WwanHardwareEnabled")
     }
 
     fn wimax_enabled(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "WimaxEnabled",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "WimaxEnabled")
     }
 
     fn wimax_hardware_enabled(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "WimaxHardwareEnabled",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "WimaxHardwareEnabled")
     }
 
     fn active_connections(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "ActiveConnections",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "ActiveConnections")
     }
 
     fn primary_connection(&self) -> nonblock::MethodReply<dbus::Path<'static>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "PrimaryConnection",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "PrimaryConnection")
     }
 
     fn primary_connection_type(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "PrimaryConnectionType",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "PrimaryConnectionType")
     }
 
     fn metered(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "Metered",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "Metered")
     }
 
     fn activating_connection(&self) -> nonblock::MethodReply<dbus::Path<'static>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "ActivatingConnection",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "ActivatingConnection")
     }
 
     fn startup(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "Startup",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "Startup")
     }
 
     fn version(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "Version",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "Version")
     }
 
     fn capabilities(&self) -> nonblock::MethodReply<Vec<u32>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "Capabilities",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "Capabilities")
     }
 
     fn state_(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "State",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "State")
     }
 
     fn connectivity(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "Connectivity",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "Connectivity")
     }
 
     fn connectivity_check_available(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "ConnectivityCheckAvailable",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "ConnectivityCheckAvailable")
     }
 
     fn connectivity_check_enabled(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "ConnectivityCheckEnabled",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "ConnectivityCheckEnabled")
     }
 
     fn connectivity_check_uri(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "ConnectivityCheckUri",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "ConnectivityCheckUri")
     }
 
     fn global_dns_configuration(&self) -> nonblock::MethodReply<arg::PropMap> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "GlobalDnsConfiguration",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager", "GlobalDnsConfiguration")
     }
 
     fn set_wireless_enabled(&self, value: bool) -> nonblock::MethodReply<()> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::set(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "WirelessEnabled",
-            value,
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::set(&self, "org.freedesktop.NetworkManager", "WirelessEnabled", value)
     }
 
     fn set_wwan_enabled(&self, value: bool) -> nonblock::MethodReply<()> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::set(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "WwanEnabled",
-            value,
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::set(&self, "org.freedesktop.NetworkManager", "WwanEnabled", value)
     }
 
     fn set_wimax_enabled(&self, value: bool) -> nonblock::MethodReply<()> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::set(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "WimaxEnabled",
-            value,
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::set(&self, "org.freedesktop.NetworkManager", "WimaxEnabled", value)
     }
 
     fn set_connectivity_check_enabled(&self, value: bool) -> nonblock::MethodReply<()> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::set(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "ConnectivityCheckEnabled",
-            value,
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::set(&self, "org.freedesktop.NetworkManager", "ConnectivityCheckEnabled", value)
     }
 
     fn set_global_dns_configuration(&self, value: arg::PropMap) -> nonblock::MethodReply<()> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::set(
-            &self,
-            "org.freedesktop.NetworkManager",
-            "GlobalDnsConfiguration",
-            value,
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::set(&self, "org.freedesktop.NetworkManager", "GlobalDnsConfiguration", value)
     }
 }
 
 #[derive(Debug)]
-pub struct OrgFreedesktopNetworkManagerCheckPermissions {}
+pub struct OrgFreedesktopNetworkManagerCheckPermissions {
+}
 
 impl arg::AppendAll for OrgFreedesktopNetworkManagerCheckPermissions {
-    fn append(&self, _: &mut arg::IterAppend) {}
+    fn append(&self, _: &mut arg::IterAppend) {
+    }
 }
 
 impl arg::ReadAll for OrgFreedesktopNetworkManagerCheckPermissions {
     fn read(_: &mut arg::Iter) -> Result<Self, arg::TypeMismatchError> {
-        Ok(OrgFreedesktopNetworkManagerCheckPermissions {})
+        Ok(OrgFreedesktopNetworkManagerCheckPermissions {
+        })
     }
 }
 
@@ -511,7 +293,9 @@ impl arg::AppendAll for OrgFreedesktopNetworkManagerStateChanged {
 
 impl arg::ReadAll for OrgFreedesktopNetworkManagerStateChanged {
     fn read(i: &mut arg::Iter) -> Result<Self, arg::TypeMismatchError> {
-        Ok(OrgFreedesktopNetworkManagerStateChanged { state: i.read()? })
+        Ok(OrgFreedesktopNetworkManagerStateChanged {
+            state: i.read()?,
+        })
     }
 }
 
diff --git a/src/dbus_codegen/network_manager_access_point.rs b/dbus_codegen/src/network_manager_access_point.rs
similarity index 61%
rename from src/dbus_codegen/network_manager_access_point.rs
rename to dbus_codegen/src/network_manager_access_point.rs
index a0308544521b08af9ca0f8f898557e42110edb50..0e4b3dc3f104cde820db3ee3768596400df100b7 100644
--- a/src/dbus_codegen/network_manager_access_point.rs
+++ b/dbus_codegen/src/network_manager_access_point.rs
@@ -1,5 +1,5 @@
-// This code was autogenerated with `dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.AccessPoint.xml -m None -c nonblock -o src/dbus_codegen/network_manager_access_point.rs`, see https://github.com/diwic/dbus-rs
-use dbus;
+// This code was autogenerated with `dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.AccessPoint.xml -m None -c nonblock -o dbus_codegen/src/network_manager_access_point.rs`, see https://github.com/diwic/dbus-rs
+use dbus as dbus;
 #[allow(unused_imports)]
 use dbus::arg;
 use dbus::nonblock;
@@ -17,86 +17,45 @@ pub trait OrgFreedesktopNetworkManagerAccessPoint {
     fn last_seen(&self) -> nonblock::MethodReply<i32>;
 }
 
-impl<'a, T: nonblock::NonblockReply, C: ::std::ops::Deref<Target = T>>
-    OrgFreedesktopNetworkManagerAccessPoint for nonblock::Proxy<'a, C>
-{
+impl<'a, T: nonblock::NonblockReply, C: ::std::ops::Deref<Target=T>> OrgFreedesktopNetworkManagerAccessPoint for nonblock::Proxy<'a, C> {
+
     fn flags(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.AccessPoint",
-            "Flags",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.AccessPoint", "Flags")
     }
 
     fn wpa_flags(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.AccessPoint",
-            "WpaFlags",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.AccessPoint", "WpaFlags")
     }
 
     fn rsn_flags(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.AccessPoint",
-            "RsnFlags",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.AccessPoint", "RsnFlags")
     }
 
     fn ssid(&self) -> nonblock::MethodReply<Vec<u8>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.AccessPoint",
-            "Ssid",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.AccessPoint", "Ssid")
     }
 
     fn frequency(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.AccessPoint",
-            "Frequency",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.AccessPoint", "Frequency")
     }
 
     fn hw_address(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.AccessPoint",
-            "HwAddress",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.AccessPoint", "HwAddress")
     }
 
     fn mode(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.AccessPoint",
-            "Mode",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.AccessPoint", "Mode")
     }
 
     fn max_bitrate(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.AccessPoint",
-            "MaxBitrate",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.AccessPoint", "MaxBitrate")
     }
 
     fn strength(&self) -> nonblock::MethodReply<u8> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.AccessPoint",
-            "Strength",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.AccessPoint", "Strength")
     }
 
     fn last_seen(&self) -> nonblock::MethodReply<i32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.AccessPoint",
-            "LastSeen",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.AccessPoint", "LastSeen")
     }
 }
diff --git a/src/dbus_codegen/network_manager_connection_active.rs b/dbus_codegen/src/network_manager_connection_active.rs
similarity index 65%
rename from src/dbus_codegen/network_manager_connection_active.rs
rename to dbus_codegen/src/network_manager_connection_active.rs
index 5afce418453efa2845f049c4e881999bbd3537a8..6998c12d90e0b102b73d75e8c469b5c27d829be5 100644
--- a/src/dbus_codegen/network_manager_connection_active.rs
+++ b/dbus_codegen/src/network_manager_connection_active.rs
@@ -1,5 +1,5 @@
-// This code was autogenerated with `dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.Connection.Active.xml -m None -c nonblock -o src/dbus_codegen/network_manager_connection_active.rs`, see https://github.com/diwic/dbus-rs
-use dbus;
+// This code was autogenerated with `dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.Connection.Active.xml -m None -c nonblock -o dbus_codegen/src/network_manager_connection_active.rs`, see https://github.com/diwic/dbus-rs
+use dbus as dbus;
 #[allow(unused_imports)]
 use dbus::arg;
 use dbus::nonblock;
@@ -23,135 +23,70 @@ pub trait OrgFreedesktopNetworkManagerConnectionActive {
     fn master(&self) -> nonblock::MethodReply<dbus::Path<'static>>;
 }
 
-impl<'a, T: nonblock::NonblockReply, C: ::std::ops::Deref<Target = T>>
-    OrgFreedesktopNetworkManagerConnectionActive for nonblock::Proxy<'a, C>
-{
+impl<'a, T: nonblock::NonblockReply, C: ::std::ops::Deref<Target=T>> OrgFreedesktopNetworkManagerConnectionActive for nonblock::Proxy<'a, C> {
+
     fn connection(&self) -> nonblock::MethodReply<dbus::Path<'static>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "Connection",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "Connection")
     }
 
     fn specific_object(&self) -> nonblock::MethodReply<dbus::Path<'static>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "SpecificObject",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "SpecificObject")
     }
 
     fn id(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "Id",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "Id")
     }
 
     fn uuid(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "Uuid",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "Uuid")
     }
 
     fn type_(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "Type",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "Type")
     }
 
     fn devices(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "Devices",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "Devices")
     }
 
     fn state(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "State",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "State")
     }
 
     fn state_flags(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "StateFlags",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "StateFlags")
     }
 
     fn default(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "Default",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "Default")
     }
 
     fn ip4_config(&self) -> nonblock::MethodReply<dbus::Path<'static>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "Ip4Config",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "Ip4Config")
     }
 
     fn dhcp4_config(&self) -> nonblock::MethodReply<dbus::Path<'static>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "Dhcp4Config",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "Dhcp4Config")
     }
 
     fn default6(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "Default6",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "Default6")
     }
 
     fn ip6_config(&self) -> nonblock::MethodReply<dbus::Path<'static>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "Ip6Config",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "Ip6Config")
     }
 
     fn dhcp6_config(&self) -> nonblock::MethodReply<dbus::Path<'static>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "Dhcp6Config",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "Dhcp6Config")
     }
 
     fn vpn(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "Vpn",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "Vpn")
     }
 
     fn master(&self) -> nonblock::MethodReply<dbus::Path<'static>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Connection.Active",
-            "Master",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Connection.Active", "Master")
     }
 }
 
diff --git a/src/dbus_codegen/network_manager_device.rs b/dbus_codegen/src/network_manager_device.rs
similarity index 61%
rename from src/dbus_codegen/network_manager_device.rs
rename to dbus_codegen/src/network_manager_device.rs
index 9f83feb3de516f37fa7a514a7d7a6d78b3dce4e6..c90b1d9c1ee06e2511e2679c1d840829548941e9 100644
--- a/src/dbus_codegen/network_manager_device.rs
+++ b/dbus_codegen/src/network_manager_device.rs
@@ -1,20 +1,12 @@
-// This code was autogenerated with `dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.Device.xml -m None -c nonblock -o src/dbus_codegen/network_manager_device.rs`, see https://github.com/diwic/dbus-rs
-use dbus;
+// This code was autogenerated with `dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.Device.xml -m None -c nonblock -o dbus_codegen/src/network_manager_device.rs`, see https://github.com/diwic/dbus-rs
+use dbus as dbus;
 #[allow(unused_imports)]
 use dbus::arg;
 use dbus::nonblock;
 
 pub trait OrgFreedesktopNetworkManagerDevice {
-    fn reapply(
-        &self,
-        connection: ::std::collections::HashMap<&str, arg::PropMap>,
-        version_id: u64,
-        flags: u32,
-    ) -> nonblock::MethodReply<()>;
-    fn get_applied_connection(
-        &self,
-        flags: u32,
-    ) -> nonblock::MethodReply<(::std::collections::HashMap<String, arg::PropMap>, u64)>;
+    fn reapply(&self, connection: ::std::collections::HashMap<&str, arg::PropMap>, version_id: u64, flags: u32) -> nonblock::MethodReply<()>;
+    fn get_applied_connection(&self, flags: u32) -> nonblock::MethodReply<(::std::collections::HashMap<String, arg::PropMap>, u64)>;
     fn disconnect(&self) -> nonblock::MethodReply<()>;
     fn delete(&self) -> nonblock::MethodReply<()>;
     fn udi(&self) -> nonblock::MethodReply<String>;
@@ -52,31 +44,14 @@ pub trait OrgFreedesktopNetworkManagerDevice {
     fn hw_address(&self) -> nonblock::MethodReply<String>;
 }
 
-impl<'a, T: nonblock::NonblockReply, C: ::std::ops::Deref<Target = T>>
-    OrgFreedesktopNetworkManagerDevice for nonblock::Proxy<'a, C>
-{
-    fn reapply(
-        &self,
-        connection: ::std::collections::HashMap<&str, arg::PropMap>,
-        version_id: u64,
-        flags: u32,
-    ) -> nonblock::MethodReply<()> {
-        self.method_call(
-            "org.freedesktop.NetworkManager.Device",
-            "Reapply",
-            (connection, version_id, flags),
-        )
-    }
-
-    fn get_applied_connection(
-        &self,
-        flags: u32,
-    ) -> nonblock::MethodReply<(::std::collections::HashMap<String, arg::PropMap>, u64)> {
-        self.method_call(
-            "org.freedesktop.NetworkManager.Device",
-            "GetAppliedConnection",
-            (flags,),
-        )
+impl<'a, T: nonblock::NonblockReply, C: ::std::ops::Deref<Target=T>> OrgFreedesktopNetworkManagerDevice for nonblock::Proxy<'a, C> {
+
+    fn reapply(&self, connection: ::std::collections::HashMap<&str, arg::PropMap>, version_id: u64, flags: u32) -> nonblock::MethodReply<()> {
+        self.method_call("org.freedesktop.NetworkManager.Device", "Reapply", (connection, version_id, flags, ))
+    }
+
+    fn get_applied_connection(&self, flags: u32) -> nonblock::MethodReply<(::std::collections::HashMap<String, arg::PropMap>, u64)> {
+        self.method_call("org.freedesktop.NetworkManager.Device", "GetAppliedConnection", (flags, ))
     }
 
     fn disconnect(&self) -> nonblock::MethodReply<()> {
@@ -88,269 +63,135 @@ impl<'a, T: nonblock::NonblockReply, C: ::std::ops::Deref<Target = T>>
     }
 
     fn udi(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Udi",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Udi")
     }
 
     fn path(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Path",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Path")
     }
 
     fn interface(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Interface",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Interface")
     }
 
     fn ip_interface(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "IpInterface",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "IpInterface")
     }
 
     fn driver(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Driver",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Driver")
     }
 
     fn driver_version(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "DriverVersion",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "DriverVersion")
     }
 
     fn firmware_version(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "FirmwareVersion",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "FirmwareVersion")
     }
 
     fn capabilities(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Capabilities",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Capabilities")
     }
 
     fn ip4_address(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Ip4Address",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Ip4Address")
     }
 
     fn state(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "State",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "State")
     }
 
     fn state_reason(&self) -> nonblock::MethodReply<(u32, u32)> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "StateReason",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "StateReason")
     }
 
     fn active_connection(&self) -> nonblock::MethodReply<dbus::Path<'static>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "ActiveConnection",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "ActiveConnection")
     }
 
     fn ip4_config(&self) -> nonblock::MethodReply<dbus::Path<'static>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Ip4Config",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Ip4Config")
     }
 
     fn dhcp4_config(&self) -> nonblock::MethodReply<dbus::Path<'static>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Dhcp4Config",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Dhcp4Config")
     }
 
     fn ip6_config(&self) -> nonblock::MethodReply<dbus::Path<'static>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Ip6Config",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Ip6Config")
     }
 
     fn dhcp6_config(&self) -> nonblock::MethodReply<dbus::Path<'static>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Dhcp6Config",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Dhcp6Config")
     }
 
     fn managed(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Managed",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Managed")
     }
 
     fn autoconnect(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Autoconnect",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Autoconnect")
     }
 
     fn firmware_missing(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "FirmwareMissing",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "FirmwareMissing")
     }
 
     fn nm_plugin_missing(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "NmPluginMissing",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "NmPluginMissing")
     }
 
     fn device_type(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "DeviceType",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "DeviceType")
     }
 
     fn available_connections(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "AvailableConnections",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "AvailableConnections")
     }
 
     fn physical_port_id(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "PhysicalPortId",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "PhysicalPortId")
     }
 
     fn mtu(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Mtu",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Mtu")
     }
 
     fn metered(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Metered",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Metered")
     }
 
     fn lldp_neighbors(&self) -> nonblock::MethodReply<Vec<arg::PropMap>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "LldpNeighbors",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "LldpNeighbors")
     }
 
     fn real(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Real",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Real")
     }
 
     fn ip4_connectivity(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Ip4Connectivity",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Ip4Connectivity")
     }
 
     fn ip6_connectivity(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Ip6Connectivity",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "Ip6Connectivity")
     }
 
     fn interface_flags(&self) -> nonblock::MethodReply<u32> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "InterfaceFlags",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "InterfaceFlags")
     }
 
     fn hw_address(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "HwAddress",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Device", "HwAddress")
     }
 
     fn set_managed(&self, value: bool) -> nonblock::MethodReply<()> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::set(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Managed",
-            value,
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::set(&self, "org.freedesktop.NetworkManager.Device", "Managed", value)
     }
 
     fn set_autoconnect(&self, value: bool) -> nonblock::MethodReply<()> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::set(
-            &self,
-            "org.freedesktop.NetworkManager.Device",
-            "Autoconnect",
-            value,
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::set(&self, "org.freedesktop.NetworkManager.Device", "Autoconnect", value)
     }
 }
 
diff --git a/src/dbus_codegen/network_manager_settings.rs b/dbus_codegen/src/network_manager_settings.rs
similarity index 53%
rename from src/dbus_codegen/network_manager_settings.rs
rename to dbus_codegen/src/network_manager_settings.rs
index 2ffe8c629916364fa1ba360f1558ee78a32677e0..3b42e52dd24681f93ac91813afa330e436415c8b 100644
--- a/src/dbus_codegen/network_manager_settings.rs
+++ b/dbus_codegen/src/network_manager_settings.rs
@@ -1,5 +1,5 @@
-// This code was autogenerated with `dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.Settings.xml -m None -c nonblock -o src/dbus_codegen/network_manager_settings.rs`, see https://github.com/diwic/dbus-rs
-use dbus;
+// This code was autogenerated with `dbus-codegen-rust --file third_party/NetworkManager/introspection/org.freedesktop.NetworkManager.Settings.xml -m None -c nonblock -o dbus_codegen/src/network_manager_settings.rs`, see https://github.com/diwic/dbus-rs
+use dbus as dbus;
 #[allow(unused_imports)]
 use dbus::arg;
 use dbus::nonblock;
@@ -7,20 +7,9 @@ use dbus::nonblock;
 pub trait OrgFreedesktopNetworkManagerSettings {
     fn list_connections(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>>;
     fn get_connection_by_uuid(&self, uuid: &str) -> nonblock::MethodReply<dbus::Path<'static>>;
-    fn add_connection(
-        &self,
-        connection: ::std::collections::HashMap<&str, arg::PropMap>,
-    ) -> nonblock::MethodReply<dbus::Path<'static>>;
-    fn add_connection_unsaved(
-        &self,
-        connection: ::std::collections::HashMap<&str, arg::PropMap>,
-    ) -> nonblock::MethodReply<dbus::Path<'static>>;
-    fn add_connection2(
-        &self,
-        settings: ::std::collections::HashMap<&str, arg::PropMap>,
-        flags: u32,
-        args: arg::PropMap,
-    ) -> nonblock::MethodReply<(dbus::Path<'static>, arg::PropMap)>;
+    fn add_connection(&self, connection: ::std::collections::HashMap<&str, arg::PropMap>) -> nonblock::MethodReply<dbus::Path<'static>>;
+    fn add_connection_unsaved(&self, connection: ::std::collections::HashMap<&str, arg::PropMap>) -> nonblock::MethodReply<dbus::Path<'static>>;
+    fn add_connection2(&self, settings: ::std::collections::HashMap<&str, arg::PropMap>, flags: u32, args: arg::PropMap) -> nonblock::MethodReply<(dbus::Path<'static>, arg::PropMap)>;
     fn load_connections(&self, filenames: Vec<&str>) -> nonblock::MethodReply<(bool, Vec<String>)>;
     fn reload_connections(&self) -> nonblock::MethodReply<bool>;
     fn save_hostname(&self, hostname: &str) -> nonblock::MethodReply<()>;
@@ -29,111 +18,55 @@ pub trait OrgFreedesktopNetworkManagerSettings {
     fn can_modify(&self) -> nonblock::MethodReply<bool>;
 }
 
-impl<'a, T: nonblock::NonblockReply, C: ::std::ops::Deref<Target = T>>
-    OrgFreedesktopNetworkManagerSettings for nonblock::Proxy<'a, C>
-{
+impl<'a, T: nonblock::NonblockReply, C: ::std::ops::Deref<Target=T>> OrgFreedesktopNetworkManagerSettings for nonblock::Proxy<'a, C> {
+
     fn list_connections(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>> {
-        self.method_call(
-            "org.freedesktop.NetworkManager.Settings",
-            "ListConnections",
-            (),
-        )
-        .and_then(|r: (Vec<dbus::Path<'static>>,)| Ok(r.0))
+        self.method_call("org.freedesktop.NetworkManager.Settings", "ListConnections", ())
+            .and_then(|r: (Vec<dbus::Path<'static>>, )| Ok(r.0, ))
     }
 
     fn get_connection_by_uuid(&self, uuid: &str) -> nonblock::MethodReply<dbus::Path<'static>> {
-        self.method_call(
-            "org.freedesktop.NetworkManager.Settings",
-            "GetConnectionByUuid",
-            (uuid,),
-        )
-        .and_then(|r: (dbus::Path<'static>,)| Ok(r.0))
+        self.method_call("org.freedesktop.NetworkManager.Settings", "GetConnectionByUuid", (uuid, ))
+            .and_then(|r: (dbus::Path<'static>, )| Ok(r.0, ))
     }
 
-    fn add_connection(
-        &self,
-        connection: ::std::collections::HashMap<&str, arg::PropMap>,
-    ) -> nonblock::MethodReply<dbus::Path<'static>> {
-        self.method_call(
-            "org.freedesktop.NetworkManager.Settings",
-            "AddConnection",
-            (connection,),
-        )
-        .and_then(|r: (dbus::Path<'static>,)| Ok(r.0))
+    fn add_connection(&self, connection: ::std::collections::HashMap<&str, arg::PropMap>) -> nonblock::MethodReply<dbus::Path<'static>> {
+        self.method_call("org.freedesktop.NetworkManager.Settings", "AddConnection", (connection, ))
+            .and_then(|r: (dbus::Path<'static>, )| Ok(r.0, ))
     }
 
-    fn add_connection_unsaved(
-        &self,
-        connection: ::std::collections::HashMap<&str, arg::PropMap>,
-    ) -> nonblock::MethodReply<dbus::Path<'static>> {
-        self.method_call(
-            "org.freedesktop.NetworkManager.Settings",
-            "AddConnectionUnsaved",
-            (connection,),
-        )
-        .and_then(|r: (dbus::Path<'static>,)| Ok(r.0))
+    fn add_connection_unsaved(&self, connection: ::std::collections::HashMap<&str, arg::PropMap>) -> nonblock::MethodReply<dbus::Path<'static>> {
+        self.method_call("org.freedesktop.NetworkManager.Settings", "AddConnectionUnsaved", (connection, ))
+            .and_then(|r: (dbus::Path<'static>, )| Ok(r.0, ))
     }
 
-    fn add_connection2(
-        &self,
-        settings: ::std::collections::HashMap<&str, arg::PropMap>,
-        flags: u32,
-        args: arg::PropMap,
-    ) -> nonblock::MethodReply<(dbus::Path<'static>, arg::PropMap)> {
-        self.method_call(
-            "org.freedesktop.NetworkManager.Settings",
-            "AddConnection2",
-            (settings, flags, args),
-        )
+    fn add_connection2(&self, settings: ::std::collections::HashMap<&str, arg::PropMap>, flags: u32, args: arg::PropMap) -> nonblock::MethodReply<(dbus::Path<'static>, arg::PropMap)> {
+        self.method_call("org.freedesktop.NetworkManager.Settings", "AddConnection2", (settings, flags, args, ))
     }
 
     fn load_connections(&self, filenames: Vec<&str>) -> nonblock::MethodReply<(bool, Vec<String>)> {
-        self.method_call(
-            "org.freedesktop.NetworkManager.Settings",
-            "LoadConnections",
-            (filenames,),
-        )
+        self.method_call("org.freedesktop.NetworkManager.Settings", "LoadConnections", (filenames, ))
     }
 
     fn reload_connections(&self) -> nonblock::MethodReply<bool> {
-        self.method_call(
-            "org.freedesktop.NetworkManager.Settings",
-            "ReloadConnections",
-            (),
-        )
-        .and_then(|r: (bool,)| Ok(r.0))
+        self.method_call("org.freedesktop.NetworkManager.Settings", "ReloadConnections", ())
+            .and_then(|r: (bool, )| Ok(r.0, ))
     }
 
     fn save_hostname(&self, hostname: &str) -> nonblock::MethodReply<()> {
-        self.method_call(
-            "org.freedesktop.NetworkManager.Settings",
-            "SaveHostname",
-            (hostname,),
-        )
+        self.method_call("org.freedesktop.NetworkManager.Settings", "SaveHostname", (hostname, ))
     }
 
     fn connections(&self) -> nonblock::MethodReply<Vec<dbus::Path<'static>>> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Settings",
-            "Connections",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Settings", "Connections")
     }
 
     fn hostname(&self) -> nonblock::MethodReply<String> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Settings",
-            "Hostname",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Settings", "Hostname")
     }
 
     fn can_modify(&self) -> nonblock::MethodReply<bool> {
-        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(
-            &self,
-            "org.freedesktop.NetworkManager.Settings",
-            "CanModify",
-        )
+        <Self as nonblock::stdintf::org_freedesktop_dbus::Properties>::get(&self, "org.freedesktop.NetworkManager.Settings", "CanModify")
     }
 }
 
diff --git a/src/dbus_wrappers/active_connection.rs b/src/dbus_wrappers/active_connection.rs
index 79261a2571b8e832a3e3fada5e72e34bf9490081..93fadf49b8229d382f97066887ded0a5a2ed3eac 100644
--- a/src/dbus_wrappers/active_connection.rs
+++ b/src/dbus_wrappers/active_connection.rs
@@ -6,7 +6,7 @@ use dbus::{
     Path,
 };
 
-use crate::dbus_codegen::network_manager_connection_active::{
+use nm_reactor_dbus_codegen::network_manager_connection_active::{
     OrgFreedesktopNetworkManagerConnectionActive,
     OrgFreedesktopNetworkManagerConnectionActiveStateChanged,
 };
diff --git a/src/dbus_wrappers/connection.rs b/src/dbus_wrappers/connection.rs
index b4c26a13a007243e36fee18a883bea99b54fd380..038e929bcc4373b1e9b120dc5d91ba0a25251695 100644
--- a/src/dbus_wrappers/connection.rs
+++ b/src/dbus_wrappers/connection.rs
@@ -5,7 +5,7 @@ use dbus::{
     Path,
 };
 
-use crate::dbus_codegen::network_manager_connection_active::OrgFreedesktopNetworkManagerConnectionActive;
+use nm_reactor_dbus_codegen::network_manager_connection_active::OrgFreedesktopNetworkManagerConnectionActive;
 
 pub struct ConnectionWrapper<'a> {
     conn: Arc<SyncConnection>,
diff --git a/src/dbus_wrappers/device.rs b/src/dbus_wrappers/device.rs
index 3f8f7f01095637d5c4dc9d2dedabce24ede6317f..e06620956a73fd5d554af20d6bf4cad98a3ba48e 100644
--- a/src/dbus_wrappers/device.rs
+++ b/src/dbus_wrappers/device.rs
@@ -7,7 +7,7 @@ use dbus::{
 };
 use num_traits::FromPrimitive;
 
-use crate::dbus_codegen::network_manager_device::{
+use nm_reactor_dbus_codegen::network_manager_device::{
     OrgFreedesktopNetworkManagerDevice, OrgFreedesktopNetworkManagerDeviceStateChanged,
 };
 
diff --git a/src/dbus_wrappers/manager.rs b/src/dbus_wrappers/manager.rs
index 5740d46356292870025813e04994d3e746644ded..83413db58bd56e2ba605740a6b73d52f3cf40b96 100644
--- a/src/dbus_wrappers/manager.rs
+++ b/src/dbus_wrappers/manager.rs
@@ -8,7 +8,7 @@ use dbus::{
 use futures::{future::join_all, stream, StreamExt};
 use num_traits::FromPrimitive;
 
-use crate::dbus_codegen::network_manager::{
+use nm_reactor_dbus_codegen::network_manager::{
     OrgFreedesktopNetworkManager, OrgFreedesktopNetworkManagerDeviceAdded,
     OrgFreedesktopNetworkManagerDeviceRemoved,
 };
diff --git a/src/dbus_wrappers/manager_settings.rs b/src/dbus_wrappers/manager_settings.rs
index 994532b5bd89c88dbe3d59c500bfe831873d8f5c..f5f0308c6d9fe1ed6b5d0ff7c402cf1349b16d4b 100644
--- a/src/dbus_wrappers/manager_settings.rs
+++ b/src/dbus_wrappers/manager_settings.rs
@@ -6,7 +6,7 @@ use dbus::{
     Path,
 };
 
-use crate::dbus_codegen::network_manager_settings::OrgFreedesktopNetworkManagerSettings;
+use nm_reactor_dbus_codegen::network_manager_settings::OrgFreedesktopNetworkManagerSettings;
 
 use super::connection::ConnectionWrapper;
 
diff --git a/src/main.rs b/src/main.rs
index 56297b6da13fc372ef2101e935660653fa0aa0ca..9e9ccf47f2d483fcbbb5c6685342f2aafb2116ec 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -14,7 +14,6 @@ use crate::event::handle_events;
 mod action;
 mod condition;
 mod config;
-mod dbus_codegen;
 mod dbus_wrappers;
 mod device_watcher;
 mod event;