aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoruser <user@clank>2026-08-28 15:38:34 +0200
committeruser <user@clank>2026-08-28 15:38:34 +0200
commit61a65f9db8aefef369e5b0ebfdc3ad47fd8bbce9 (patch)
tree4e9eb2156cb893da63c22323581c76dfb69a2395
parentwindows release: a zip in dist/, built beside the linux tarballs (diff)
downloadslosh-61a65f9db8aefef369e5b0ebfdc3ad47fd8bbce9.tar.gz
slosh-61a65f9db8aefef369e5b0ebfdc3ad47fd8bbce9.tar.xz
slosh-61a65f9db8aefef369e5b0ebfdc3ad47fd8bbce9.zip
web: the Windows port, on the front page and out of install.sh
The install section says what Windows gets (one slosh.exe, ConPTY panes, AF_UNIX sessions) and points at the docs; the front-page doc list gains the windows page. install.sh states in its header that Windows is not its job, and refuses under MSYS/MinGW/Cygwin with a pointer instead of building a binary that is the wrong shape for the machine.
-rw-r--r--web/index.html8
-rwxr-xr-xweb/install.sh9
2 files changed, 17 insertions, 0 deletions
diff --git a/web/index.html b/web/index.html
index 931d32e..ccce836 100644
--- a/web/index.html
+++ b/web/index.html
@@ -62,6 +62,13 @@
<span class="prompt">$</span> sudo install build/slosh /usr/local/bin/</code></pre>
</div>
+ <p class="aside">On Windows it is the same one binary: <code>slosh.exe</code>,
+ Windows 10/11, x86-64 and ARM64, no runtime dependency beyond the OS. Panes
+ are ConPTYs and sessions are AF_UNIX sockets, so everything below works there
+ too. It is cross-compiled from a mac or a Linux box
+ (<code>make -f Makefile.windows</code>), then copied across —
+ <a href="docs/windows.html">the details</a>.</p>
+
<p>Then:</p>
<div class="cmd">
@@ -148,6 +155,7 @@
<li><a href="docs/layouts.html">layouts</a><span> — a session as a file you check in</span></li>
<li><a href="docs/scripting.html">scripting</a><span> — the control socket, and what a pane can draw</span></li>
<li><a href="docs/design.html">how it works</a><span> — the two decisions that shape the rest</span></li>
+ <li><a href="docs/windows.html">windows</a><span> — the native port, and what is different there</span></li>
</ul>
</section>
diff --git a/web/install.sh b/web/install.sh
index 126bd07..93695c7 100755
--- a/web/install.sh
+++ b/web/install.sh
@@ -18,6 +18,10 @@
# Nothing is downloaded except the git clone and what `make vendor` fetches
# (the pinned libghostty-vt). No package manager, no config written, nothing
# started. Uninstall is `rm /usr/local/bin/slosh`.
+#
+# Windows is not this script's job: slosh runs there natively, but as a
+# cross-compiled slosh.exe rather than a shell-script install -- see
+# docs/windows.md in the repo.
set -eu
@@ -28,6 +32,11 @@ ZIG="${ZIG:-zig}"
say() { printf ' %s\n' "$*"; }
fail() { printf 'install.sh: %s\n' "$*" >&2; exit 1; }
+case "$(uname -s 2>/dev/null || true)" in
+ *MINGW*|*MSYS*|*CYGWIN*)
+ fail "this builds the POSIX binary; Windows runs slosh.exe -- see docs/windows.md" ;;
+esac
+
command -v git >/dev/null 2>&1 || fail "git is required"
# zig 0.16, the one thing the build wants. Also try the location the