Connect to systemd over session DBus rather than system (#2)
This seems to be correct for starting user services.
This commit is contained in:
parent
cefd13692b
commit
c450a9ed0d
3 changed files with 5 additions and 1 deletions
1
Cargo.lock
generated
1
Cargo.lock
generated
|
|
@ -251,6 +251,7 @@ dependencies = [
|
|||
"tracing",
|
||||
"tracing-journald",
|
||||
"tracing-subscriber",
|
||||
"zbus",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
|
|
|||
|
|
@ -23,3 +23,4 @@ tokio-util = "0.7"
|
|||
tracing = "0.1"
|
||||
tracing-journald = "0.3.0"
|
||||
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
|
||||
zbus = { version = "2.0.1" }
|
||||
|
|
|
|||
|
|
@ -1,9 +1,11 @@
|
|||
// SPDX-License-Identifier: GPL-3.0-only
|
||||
|
||||
use color_eyre::{eyre::WrapErr, Result};
|
||||
use systemd_client::manager::SystemdManagerProxy;
|
||||
|
||||
pub async fn start_systemd_target() -> Result<()> {
|
||||
let manager = systemd_client::manager::build_nonblock_proxy()
|
||||
let connection = zbus::Connection::session().await?;
|
||||
let manager = SystemdManagerProxy::new(&connection)
|
||||
.await
|
||||
.wrap_err("failed to connect to org.freedesktop.systemd1.Manager")?;
|
||||
manager
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue