summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-29 03:04:42 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:15 -0300
commit80ed1bf997117a36b9d0e10744de736e84d96e7f (patch)
tree9ad644b3d1abf076959ed4b6aad7bc1622e30828 /docs
parentbeea3aaa8d35c00145c78a746393d71b8b14e658 (diff)
downloadpardes-80ed1bf997117a36b9d0e10744de736e84d96e7f.tar.gz
pardes-80ed1bf997117a36b9d0e10744de736e84d96e7f.zip
Shell refuses a name that is no executable, and bare restores the default
Shell took any word and the host quietly ran another shell at the next spawn. It now refuses a path or name that is not executable ("Shell: x: no executable by that name", failing a ctl write, logged err), a bare Shell goes back to the default, and a default $SHELL that is not executable falls back to /bin/sh. shellset's golden takes the refusal on the message row (re-recorded by name). Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'docs')
-rw-r--r--docs/config.md7
1 files changed, 6 insertions, 1 deletions
diff --git a/docs/config.md b/docs/config.md
index 93190556..95f034d7 100644
--- a/docs/config.md
+++ b/docs/config.md
@@ -47,7 +47,12 @@ The startup path is printed whether or not a file exists — that is usually whe
it is most useful — and is ordinary selectable text, so a right click on it
opens the file. Shell follows the same requested/effective/pending model as
Font. `Default shell` is the one used while no `Shell` is set: `$SHELL`, the
-user's login shell, else `/bin/sh`; an explicit `Shell` overrides it. `Shell
+user's login shell, else `/bin/sh` (also when `$SHELL` names nothing
+executable); an explicit `Shell` overrides it. `Shell <name or path>` is
+refused, `Shell: <it>: no executable by that name`, unless it names an
+executable (a bare name is looked for in the usual bin directories), and a
+bare `Shell` goes back to the default. The root ctl reads `Shell <the one the
+next terminal runs>`. `Shell
effective (last spawn)` is the executable the native host really chose after
installation lookup and fallback. A changed request remains pending until a
terminal is spawned, because the core does not resolve native executables.