From 6220f7e197f01846f5e4e3090acf9251f3ae6ade Mon Sep 17 00:00:00 2001 From: Ophestra Umiker Date: Fri, 11 Oct 2024 02:01:03 +0900 Subject: app: migrate to new shim implementation Both machinectl and sudo launch methods launch shim as shim is now responsible for setting up the sandbox. Various app structures are adapted to accommodate bwrap configuration and mediated wayland access. Signed-off-by: Ophestra Umiker --- internal/app/share.runtime.go | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'internal/app/share.runtime.go') diff --git a/internal/app/share.runtime.go b/internal/app/share.runtime.go index b015d45c..c25a89bc 100644 --- a/internal/app/share.runtime.go +++ b/internal/app/share.runtime.go @@ -1,6 +1,7 @@ package app import ( + "os" "path" "git.ophivana.moe/cat/fortify/acl" @@ -11,10 +12,17 @@ const ( xdgRuntimeDir = "XDG_RUNTIME_DIR" xdgSessionClass = "XDG_SESSION_CLASS" xdgSessionType = "XDG_SESSION_TYPE" + + shell = "SHELL" ) // shareRuntime queues actions for sharing/ensuring the runtime and share directories func (seal *appSeal) shareRuntime() { + // look up shell + if s, ok := os.LookupEnv(shell); ok { + seal.appendEnv(shell, s) + } + // ensure RunDir (e.g. `/run/user/%d/fortify`) seal.sys.ensure(seal.RunDirPath, 0700) seal.sys.updatePermTag(state.EnableLength, seal.RunDirPath, acl.Execute) -- cgit v1.3.1