From 41cdc48105e2c9c21a40f8e57cf46e3be1ba46d8 Mon Sep 17 00:00:00 2001 From: Ashley Wulber Date: Fri, 15 Jul 2022 12:52:23 -0400 Subject: [PATCH 1/3] wip: applet host --- .gitignore | 9 +++++++++ src/main.rs | 8 ++++++++ 2 files changed, 17 insertions(+) diff --git a/.gitignore b/.gitignore index 060ac1c..3f09212 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,7 @@ # Debian packaging stuff .cargo +vendor/ vendor.tar *.xz *.deb @@ -19,3 +20,11 @@ vendor.tar *.deb.tar.* *.buildinfo *.build +debian/* +!debian/*install +!debian/*postinst +!debian/changelog +!debian/control +!debian/links +!debian/rules +!debian/source \ No newline at end of file diff --git a/src/main.rs b/src/main.rs index 6e87af9..b9b4273 100644 --- a/src/main.rs +++ b/src/main.rs @@ -65,6 +65,14 @@ async fn main() -> Result<()> { comp::create_privileged_socket(&mut sockets, &env_vars) .wrap_err("failed to create dock socket")?, ); + generic::run_executable( + token.child_token(), + info_span!(parent: None, "cosmic-applet host"), + "cosmic-applet-host", + vec![], + comp::create_privileged_socket(&mut sockets, &env_vars) + .wrap_err("failed to create applet-host socket")?, + ); socket_tx.send(sockets).unwrap(); let mut signals = Signals::new(vec![libc::SIGTERM, libc::SIGINT]).unwrap(); From 0cc6fe8758eb4ecaa73f5ef99bc81fd73b5006c2 Mon Sep 17 00:00:00 2001 From: Ashley Wulber Date: Wed, 20 Jul 2022 13:16:23 -0400 Subject: [PATCH 2/3] refactor: use new method for creating privileged sockets and running the executable --- src/main.rs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main.rs b/src/main.rs index 75fac29..bf6885e 100644 --- a/src/main.rs +++ b/src/main.rs @@ -75,13 +75,14 @@ async fn main() -> Result<()> { 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, "cosmic-applet host"), + info_span!(parent: None, "cosmic-applet-host"), "cosmic-applet-host", vec![], - comp::create_privileged_socket(&mut sockets, &env_vars) - .wrap_err("failed to create applet-host socket")?, + env, + vec![fd] ); socket_tx.send(sockets).unwrap(); From 84427afcdf5e5564d87adc2002c3fe4837c6a89e Mon Sep 17 00:00:00 2001 From: Ashley Wulber Date: Wed, 20 Jul 2022 13:17:26 -0400 Subject: [PATCH 3/3] fix: add more dependencies --- debian/control | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/debian/control b/debian/control index 9c59262..29042da 100644 --- a/debian/control +++ b/debian/control @@ -15,6 +15,8 @@ Architecture: amd64 arm64 Depends: ${misc:Depends}, ${shlibs:Depends}, + cosmic-comp, cosmic-panel, - cosmic-comp + cosmic-applet-host, + cosmic-applets, Description: The session for the COSMIC desktop