The release note under the download had grown into a paragraph: version, platform, the Gatekeeper explanation, and an instruction to verify the SHA-256 — all of it repeating what the button already says or what belongs on the release page. The unavailable states were no better, explaining which platform comes first. A landing page hero is not the place for it. Both notes are now just "release history". Removing the only reader of `#portal-release-status` made three things dead: that element, `portalManifestReason`, and `portalManifestStatus`. They are gone rather than left assigned and never read. `build.note` goes with them. This also removes the element whose absence used to freeze the download button, since `updatePortalDownload` no longer looks it up at all.
- commit
- 95470b2ccdcf8092a3f7089189624854b554cf1f
- parent
- 7ad5cad3939a1ec21c43915db3a28cb8e1aa4cb1
- author
- Dami <dami.etoile@gmail.com>
| M | website/ | 23 | +++-------------------- |
| M | website/ | 4 | ++-- |
@@ -380,8 +380,6 @@
380380 "windows-x86": null,381381 };382382 var ARCH_NAMES = { arm: "arm64", x86: "x86_64" };383- var portalManifestStatus = "loading";384- var portalManifestReason = "checking the signed release manifest";385383 386384 function portalBuildFromManifest(manifest) {387385 if (!manifest || manifest.format !== 1 || manifest.product !== "portal-client" ||@@ -393,7 +391,6 @@
393391 if (build.available !== false || typeof build.reason !== "string" || !build.reason.trim()) {394392 throw new Error("invalid unavailable Portal release entry");395393 }396- portalManifestReason = build.reason.trim();397394 return null;398395 }399396 var version = build.version;@@ -410,7 +407,6 @@
410407 return {411408 href: build.download_url,412409 label: "download Portal " + version + " · macOS arm64",413- note: "Portal " + version + " · macOS arm64 · not notarized: macOS will block the first launch until you allow it in System Settings › Privacy & Security. Verify the SHA-256 before opening.",414410 };415411 }416412 @@ -419,39 +415,29 @@
419415 return el ? el.value : null;420416 }421417 418+ // The button label already carries the state. The hero does not repeat it as419+ // prose, so nothing writes release notes into the panel.422420 function updatePortalDownload() {423421 var button = document.getElementById("portal-download");424- var note = document.getElementById("portal-release-status");425422 var os = pickedPortalValue("portal-os");426423 var arch = pickedPortalValue("portal-arch");427- if (!button || !note || !os || !arch) return;424+ if (!button || !os || !arch) return;428425 var build = PORTAL_BUILDS[os + "-" + arch];429426 if (build) {430427 button.classList.remove("disabled");431428 button.removeAttribute("aria-disabled");432429 button.setAttribute("href", build.href);433430 button.textContent = build.label;434- note.textContent = build.note;435431 } else {436432 button.classList.add("disabled");437433 button.setAttribute("aria-disabled", "true");438434 button.removeAttribute("href"); // href-less anchor: unfocusable, unclickable439435 button.textContent = "no " + os + " " + ARCH_NAMES[arch] + " build yet";440- if (os === "macos" && arch === "arm" && portalManifestStatus !== "loaded") {441- note.textContent = portalManifestReason + " · no download offered";442- } else if (os === "macos" && arch === "arm" && portalManifestReason) {443- note.textContent = portalManifestReason;444- } else {445- note.textContent = "portal for " + os + "/" + ARCH_NAMES[arch] +446- " is not released yet · macos arm64 comes first";447- }448436 }449437 }450438 451439 function loadPortalReleaseManifest() {452440 if (typeof window.fetch !== "function") {453- portalManifestStatus = "failed";454- portalManifestReason = "signed release manifest could not be loaded";455441 updatePortalDownload();456442 return;457443 }@@ -464,11 +450,8 @@
464450 return response.json();465451 }).then(function (manifest) {466452 PORTAL_BUILDS["macos-arm"] = portalBuildFromManifest(manifest);467- portalManifestStatus = "loaded";468453 }).catch(function () {469454 PORTAL_BUILDS["macos-arm"] = null;470- portalManifestStatus = "failed";471- portalManifestReason = "signed release manifest is unavailable or invalid";472455 }).then(updatePortalDownload);473456 }474457 @@ -80,14 +80,14 @@
8080 </div>8181 </div>8282 <a class="portal-download disabled" id="portal-download" aria-disabled="true">no macos arm64 build yet</a>83- <p class="release-note"><span id="portal-release-status">portal for macos/arm64 is not released yet · macos arm64 comes first</span> · <a class="release-history" href="https://github.com/FelineStateMachine/goq/releases" rel="noopener">release history</a></p>83+ <p class="release-note"><a class="release-history" href="https://github.com/FelineStateMachine/goq/releases" rel="noopener">release history</a></p>8484 </div>8585 <div class="release-action" data-release-target="sigil" hidden>8686 <div class="install" data-copy="curl -fsSL https://goq.sh/install-sigil | bash">8787 <code class="install-cmd"><span class="install-prompt">$</span> <span class="install-text">curl -fsSL https://goq.sh/install-sigil | bash</span></code>8888 <button class="install-copy" type="button" aria-label="Copy Sigil install command">copy</button>8989 </div>90- <p class="release-note">dedicated bazzite machine · signed release channel open</p>90+ <p class="release-note">dedicated bazzite machine</p>9191 </div>9292 </div>9393 <p class="hero-note">Games over QUIC: low-latency SteamOS streaming over iroh <br> Work in progress. Not a finished product.</p>