Hi! Thank YOU!!! it works, I had to fake it with Linux Mint zena, though. If you're trying this on the latest Mint try replacing this block:
get_ubuntu_codename() {
local codename
# Try lsb_release first, fallback to /etc/os-release
if command -v lsb_release &>/dev/null; then
codename=$(lsb_release -sc)
else
codename=$(grep '^UBUNTU_CODENAME=' /etc/os-release | cut -d= -f2)
fi
if [[ -z "$codename" ]]; then
log_error "Could not determine Ubuntu codename. Please set WINE_REPO_CODENAME manually."
fi
# Allow override via environment variable
if [[ -n "$WINE_REPO_CODENAME" ]]; then
echo "$WINE_REPO_CODENAME"
return
fi
# Officially supported by WineHQ (as of June 2026)
local known_codenames=("focal" "jammy" "noble" "plucky" "questing" "resolute")
local known=0
for k in "${known_codenames[@]}"; do
if [[ "$codename" == "$k" ]]; then
known=1
break
fi
done
if [[ $known -eq 0 ]]; then
# Print warnings to stderr (>&2) so they NEVER bleed into variable assignment
echo "Ubuntu codename '$codename' is not yet in the WineHQ repository list." >&2
echo "Falling back to 'noble' (Ubuntu 24.04 LTS) – this usually works for newer releases." >&2
codename="noble"
fi
# ONLY echo the clean codename string to stdout
echo "$codename"
}
I'm telling Mint it's not 'zena'. Anyhow, it fired off just fine, before I was getting this error:
Types: deb
URIs:
https://dl.winehq.org/wine-builds/ubuntu/
---> Suites: [1;33m[!][0m Ubuntu codename 'zena' is not yet in the WineHQ repository list. <--
[1;33m[!][0m Falling back to 'noble' (Ubuntu 24.04 LTS) – this usually works for newer releases.
noble
Components: main
Signed-By: /usr/share/keyrings/winehq.gpg
delete /etc/apt/sources.list.d/winehq.sources, change the script and give it a go if it's erroring and you're running zena.
hope it helps. took about 2 hours for me to figure it out. Yikes! at least B4J is on my machine. I was getting kind of tired of Lazarus. It's a good IDE, no hate,
just isn't for me.