diff --git a/libs/scrap/src/wayland/pipewire.rs b/libs/scrap/src/wayland/pipewire.rs index 2f1e2a852..9b2c5a6e0 100644 --- a/libs/scrap/src/wayland/pipewire.rs +++ b/libs/scrap/src/wayland/pipewire.rs @@ -24,6 +24,7 @@ use super::capturable::{Capturable, Recorder}; use super::remote_desktop_portal::OrgFreedesktopPortalRemoteDesktop as remote_desktop_portal; use super::request_portal::OrgFreedesktopPortalRequestResponse; use super::screencast_portal::OrgFreedesktopPortalScreenCast as screencast_portal; +use hbb_common::platform::linux::CMD_SH; use lazy_static::lazy_static; lazy_static! { @@ -880,7 +881,7 @@ pub fn get_capturables() -> Result, Box> { // `remote_desktop_portal` does not support restore_token and persist_mode. fn is_server_running() -> bool { let app_name = config::APP_NAME.read().unwrap().clone().to_lowercase(); - let output = match Command::new("sh") + let output = match Command::new(CMD_SH.as_str()) .arg("-c") .arg(&format!("ps aux | grep {}", app_name)) .output() diff --git a/src/clipboard.rs b/src/clipboard.rs index 3ab95e41e..db8cb4cfe 100644 --- a/src/clipboard.rs +++ b/src/clipboard.rs @@ -427,7 +427,8 @@ impl ClipboardContext { // It's not correct in the server process. #[cfg(target_os = "linux")] let is_kde_x11 = { - let is_kde = std::process::Command::new("sh") + use hbb_common::platform::linux::CMD_SH; + let is_kde = std::process::Command::new(CMD_SH.as_str()) .arg("-c") .arg("ps -e | grep -E kded[0-9]+ | grep -v grep") .stdout(std::process::Stdio::piped()) diff --git a/src/server/wayland.rs b/src/server/wayland.rs index 6c64e0d9f..42c613277 100644 --- a/src/server/wayland.rs +++ b/src/server/wayland.rs @@ -1,5 +1,8 @@ use super::*; -use hbb_common::{allow_err, platform::linux::DISTRO}; +use hbb_common::{ + allow_err, + platform::linux::{CMD_SH, DISTRO}, +}; use scrap::{is_cursor_embedded, set_map_err, Capturer, Display, Frame, TraitCapturer}; use std::io; use std::process::{Command, Output}; @@ -109,7 +112,7 @@ pub(super) fn is_inited() -> Option { fn get_max_desktop_resolution() -> Option { // works with Xwayland - let output: Output = Command::new("sh") + let output: Output = Command::new(CMD_SH.as_str()) .arg("-c") .arg("xrandr | awk '/current/ { print $8,$9,$10 }'") .output()