From e5ef33adc831b0176f39b81ca8913108ef9c30fe Mon Sep 17 00:00:00 2001
From: Tom Smeding <tom@tomsmeding.com>
Date: Mon, 6 Jan 2025 21:27:43 +0100
Subject: Take the latest installed version, not the 'latest' only if available

---
 bwrap-files/workdir/entry.sh | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/bwrap-files/workdir/entry.sh b/bwrap-files/workdir/entry.sh
index ce66a8d..61c09d5 100755
--- a/bwrap-files/workdir/entry.sh
+++ b/bwrap-files/workdir/entry.sh
@@ -3,13 +3,17 @@ set -euo pipefail
 
 cd "$(dirname "$0")"
 
-ver=$(ghcup --offline list -t ghc -c installed -r 2>/dev/null | sed -n '/latest/ s/^ghc \([^ ]*\).*/\1/p')
+ghcup='ghcup --no-verbose --offline'
+
+# Just take the latest version that ghcup prints, assuming that that's the latest installed one
+ver=$($ghcup list -t ghc -c installed -r 2>/dev/null | sed -n '$ s/^ghc \([^ ]*\).*/\1/p')
 if [[ -n $ver ]]; then
-  versionargs=( --ghc "$ver" )  # if we can get "latest", take that
+  versionargs=( --ghc "$ver" )
 else
-  versionargs=()  # just fall back to the currently "set" version
+  # If that fails for whatever reason, just fall back to the currently "set" version
+  versionargs=()
 fi
 
-ghcup --offline run "${versionargs[@]}" -- ghci Yahb2Defs.hs 2>&1
+$ghcup run "${versionargs[@]}" -- ghci Yahb2Defs.hs 2>&1
 
 # vim: set sw=2 ts=8 et:
-- 
cgit v1.2.3-70-g09d2