permanent URLs · always newest SemVer

/current
never rewrite the site for a release.

These paths and GitHub …/releases/latest/download/… names are versionless. Every tag republishes the same filenames → you keep one link forever.

GUI installers (prefer these)

PlatformSite (permanent)GitHub latest (permanent)
Windows Setup.exe /current/windows/setup.exe joule-windows-x86_64-setup.exe
macOS Apple Silicon .pkg /current/macos/arm64.pkg joule-darwin-aarch64.pkg
macOS Apple Silicon .dmg /current/macos/arm64.dmg joule-darwin-aarch64.dmg
macOS Intel .pkg /current/macos/intel.pkg joule-darwin-x86_64.pkg
macOS Intel .dmg /current/macos/intel.dmg joule-darwin-x86_64.dmg
Linux amd64 .deb /current/linux/amd64.deb joule-linux-x86_64.deb
Linux arm64 .deb /current/linux/arm64.deb joule-linux-aarch64.deb

Shortcuts: /current/win · /current/mac · /current/mac-intel · /current/linux

CLI (secondary)

WhatSiteGitHub latest
Linux / macOS one-liner curl -fsSL https://joule.f00.sh/current/install.sh | sh
Windows PowerShell irm https://joule.f00.sh/current/install.ps1 | iex
Windows portable ZIP /current/windows/portable.zip joule-windows-x86_64.zip
macOS arm64 tarball /current/macos/arm64.tar.gz joule-darwin-aarch64.tar.gz
macOS intel tarball /current/macos/intel.tar.gz joule-darwin-x86_64.tar.gz
Linux amd64 tarball /current/linux/amd64.tar.gz joule-linux-x86_64.tar.gz
Linux arm64 tarball /current/linux/arm64.tar.gz joule-linux-aarch64.tar.gz

How this stays permanent

  1. Each SemVer release still attaches versioned assets (joule-0.1.x-…).
  2. CI also attaches stable names (joule-windows-x86_64-setup.exe, …).
  3. GitHub /releases/latest/download/<stable-name> always resolves to the newest tag.
  4. This site’s /current/… paths are Cloudflare redirects to those stable names — no per-release HTML edits.

Pretty download UI: /download.html · Source: f00-sh/joule