From 37f32879db3e1b43a7da16bf34d4119b66fb67db Mon Sep 17 00:00:00 2001 From: Ian Douglas Scott Date: Tue, 23 Aug 2022 18:35:29 -0700 Subject: [PATCH] Start `cosmic-osd`, `xdg-desktop-portal-cosmic`, with privileged sockets Also adds these and `cosmic-settings-daemon` as dependencies. --- debian/control | 3 +++ src/main.rs | 22 +++++++++++++++++++++- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/debian/control b/debian/control index 29042da..00545aa 100644 --- a/debian/control +++ b/debian/control @@ -19,4 +19,7 @@ Depends: cosmic-panel, cosmic-applet-host, cosmic-applets, + cosmic-osd, + cosmic-settings-daemon, + xdg-desktop-portal-cosmic, Description: The session for the COSMIC desktop diff --git a/src/main.rs b/src/main.rs index 7342d7b..4a07a64 100644 --- a/src/main.rs +++ b/src/main.rs @@ -90,7 +90,6 @@ async fn main() -> Result<()> { env, vec![fd], ); - socket_tx.send(sockets).unwrap(); generic::run_executable( token.child_token(), info_span!(parent: None, "cosmic-settings-daemon"), @@ -99,6 +98,27 @@ async fn main() -> Result<()> { vec![], vec![], ); + let (env, fd) = comp::create_privileged_socket(&mut sockets, &env_vars) + .wrap_err("failed to create applet host")?; + generic::run_executable( + token.child_token(), + info_span!(parent: None, "cosmic-osd"), + "cosmic-osd", + vec![], + env, + vec![fd], + ); + let (env, fd) = comp::create_privileged_socket(&mut sockets, &env_vars) + .wrap_err("failed to create applet host")?; + generic::run_executable( + token.child_token(), + info_span!(parent: None, "xdg-desktop-portal-cosmic"), + "/usr/libexec/xdg-desktop-portal-cosmic", + vec![], + env, + vec![fd], + ); + socket_tx.send(sockets).unwrap(); let (exit_tx, exit_rx) = oneshot::channel(); let _ = ConnectionBuilder::session()?