Merge pull request #5 from pop-os/osd-portal
Start `cosmic-osd`, `xdg-desktop-portal-cosmic`, with privileged sockets
This commit is contained in:
commit
9c57475bb6
2 changed files with 24 additions and 1 deletions
3
debian/control
vendored
3
debian/control
vendored
|
|
@ -19,4 +19,7 @@ Depends:
|
||||||
cosmic-panel,
|
cosmic-panel,
|
||||||
cosmic-applet-host,
|
cosmic-applet-host,
|
||||||
cosmic-applets,
|
cosmic-applets,
|
||||||
|
cosmic-osd,
|
||||||
|
cosmic-settings-daemon,
|
||||||
|
xdg-desktop-portal-cosmic,
|
||||||
Description: The session for the COSMIC desktop
|
Description: The session for the COSMIC desktop
|
||||||
|
|
|
||||||
22
src/main.rs
22
src/main.rs
|
|
@ -90,7 +90,6 @@ async fn main() -> Result<()> {
|
||||||
env,
|
env,
|
||||||
vec![fd],
|
vec![fd],
|
||||||
);
|
);
|
||||||
socket_tx.send(sockets).unwrap();
|
|
||||||
generic::run_executable(
|
generic::run_executable(
|
||||||
token.child_token(),
|
token.child_token(),
|
||||||
info_span!(parent: None, "cosmic-settings-daemon"),
|
info_span!(parent: None, "cosmic-settings-daemon"),
|
||||||
|
|
@ -99,6 +98,27 @@ async fn main() -> Result<()> {
|
||||||
vec![],
|
vec![],
|
||||||
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 (exit_tx, exit_rx) = oneshot::channel();
|
||||||
let _ = ConnectionBuilder::session()?
|
let _ = ConnectionBuilder::session()?
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue