DodoApp: Run commands using `/bin/sh -c ...`

Change-Id: I58b4943c7819649f7589dfc7f9488e6abaf6f65c
diff --git a/apps/app-runner/server.go b/apps/app-runner/server.go
index 8c3d9bf..6a98e3a 100644
--- a/apps/app-runner/server.go
+++ b/apps/app-runner/server.go
@@ -9,6 +9,7 @@
 	"os"
 	"os/exec"
 	"path/filepath"
+	"strings"
 	"sync"
 	"syscall"
 	"time"
@@ -106,8 +107,8 @@
 		args = append(args, c.Args...)
 		cmd := &exec.Cmd{
 			Dir:    filepath.Join(newDir, s.rootDir),
-			Path:   c.Bin,
-			Args:   args,
+			Path:   "/bin/sh",
+			Args:   []string{"/bin/sh", "-c", strings.Join(args, " ")},
 			Env:    append(os.Environ(), c.Env...),
 			Stdout: logM,
 			Stderr: logM,
diff --git a/core/installer/app_configs/dodo_app.cue b/core/installer/app_configs/dodo_app.cue
index bc465b5..08049c4 100644
--- a/core/installer/app_configs/dodo_app.cue
+++ b/core/installer/app_configs/dodo_app.cue
@@ -198,10 +198,10 @@
 	lastCmdEnv: [...string]
 
 	runConfiguration: [{
-		bin: "/usr/local/go/bin/go"
+		bin: "go"
 		args: ["mod", "tidy"]
 	}, {
-		bin: "/usr/local/go/bin/go"
+		bin: "go"
 		args: ["build", "-o", ".app", run]
 	}, {
 		bin: ".app"
@@ -269,9 +269,9 @@
 	lastCmdEnv: [...string]
 
 	runConfiguration: [{
-		bin: "/usr/bin/hugo"
+		bin: "hugo"
 	}, {
-		bin: "/usr/bin/hugo"
+		bin: "hugo"
 		args: [
 			"server",
 			"--watch=false",
@@ -299,7 +299,7 @@
 	lastCmdEnv: [...string]
 
 	runConfiguration: [{
-		bin: "/usr/local/bin/apache2-foreground"
+		bin: "apache2-foreground"
 		env: lastCmdEnv
 	}]
 }
@@ -321,7 +321,7 @@
 	lastCmdEnv: [...string]
 
 	runConfiguration: [{
-		bin: "/usr/bin/npm"
+		bin: "npm"
 		args: ["install"]
 	},
 		for c in preBuildCommands {
@@ -332,11 +332,11 @@
 			}
 		},
 		{
-			bin: "/usr/bin/deno"
+			bin: "deno"
 			args: ["task", "build"]
 			env: lastCmdEnv
 		}, {
-			bin: "/usr/bin/deno"
+			bin: "deno"
 			args: ["task", "start"]
 			env: lastCmdEnv
 		}]
@@ -369,7 +369,7 @@
 	lastCmdEnv: [...string]
 
 	runConfiguration: [{
-		bin: "/usr/bin/deno"
+		bin: "deno"
 		args: ["install"]
 	},
 		for c in preBuildCommands {
@@ -380,11 +380,11 @@
 			}
 		},
 		{
-			bin: "/usr/bin/deno"
+			bin: "deno"
 			args: ["task", "build"]
 			env: lastCmdEnv
 		}, {
-			bin: "/usr/bin/deno"
+			bin: "deno"
 			args: ["task", "start"]
 			env: lastCmdEnv
 		}]
@@ -417,11 +417,11 @@
 	lastCmdEnv: [...string]
 
 	runConfiguration: [{
-		bin: "/usr/local/bin/npm"
+		bin: "npm"
 		args: ["install"]
 	},
 		{
-			bin: "/usr/local/bin/npm"
+			bin: "npm"
 			args: ["ci"]
 		},
 		for c in preBuildCommands {
@@ -432,11 +432,11 @@
 			}
 		},
 		{
-			bin: "/usr/local/bin/npm"
+			bin: "npm"
 			args: ["run", "build"]
 			env: lastCmdEnv
 		}, {
-			bin: "/usr/local/bin/node"
+			bin: "node"
 			args: ["./\(buildPath)/index.js"]
 			env: lastCmdEnv
 		}]