diff --git a/assets/wrap_term_launch.sh b/assets/wrap_term_launch.sh new file mode 100755 index 00000000..caf60c74 --- /dev/null +++ b/assets/wrap_term_launch.sh @@ -0,0 +1,5 @@ +#!/usr/bin/env sh + +cat ~/.local/state/caelestia/sequences.txt 2>/dev/null + +exec "$@" diff --git a/services/Apps.qml b/services/Apps.qml index e2addcd3..d561d159 100644 --- a/services/Apps.qml +++ b/services/Apps.qml @@ -12,10 +12,14 @@ Searcher { function launch(entry: DesktopEntry): void { if (entry.runInTerminal) - Quickshell.execDetached(["app2unit", "--", "foot", "fish", "-C", entry.execString]); - else if (entry.execString.startsWith("sh -c")) - Quickshell.execDetached(["sh", "-c", `app2unit -- ${entry.execString}`]); + Quickshell.execDetached({ + command: ["app2unit", "--", "foot", `${Quickshell.configDir}/assets/wrap_term_launch.sh`, ...entry.command], + workingDirectory: entry.workingDirectory + }); else - Quickshell.execDetached(["sh", "-c", `app2unit -- '${entry.id}.desktop' || app2unit -- ${entry.execString}`]); + Quickshell.execDetached({ + command: ["app2unit", "--", ...entry.command], + workingDirectory: entry.workingDirectory + }); } }