Chat On Steroids 2.0.2 is the first release candidate from the native Windows/macOS/Linux
packaging matrix. The app and standalone companion extension are versioned together, so reload
the browser extension after updating the app.
Choose the artifact for your operating system and CPU:
Chat-On-Steroids-Setup-x64.exe— Windows x64 (Intel/AMD)Chat-On-Steroids-Setup-arm64.exe— Windows on ArmChat-On-Steroids-macOS-x64.dmg— macOS Intel disk imageChat-On-Steroids-macOS-x64.zip— macOS Intel app archiveChat-On-Steroids-macOS-arm64.dmg— macOS Apple silicon disk imageChat-On-Steroids-macOS-arm64.zip— macOS Apple silicon app archiveChat-On-Steroids-Linux-x64.AppImage— Linux x64 portable AppImageChat-On-Steroids-Linux-x64.deb— Linux x64 Debian/Ubuntu packageChat-On-Steroids-Linux-arm64.AppImage— Linux ARM64 portable AppImageChat-On-Steroids-Linux-arm64.deb— Linux ARM64 Debian/Ubuntu packageChat-On-Steroids-Extension.zip— standalone Chrome companion extensionSHA256SUMS.txt— SHA-256 checksums for every release artifact above
macOS caveat: the 2.0.2 DMG and ZIP builds are currently publisher-unsigned (no Apple
Developer ID) and unnotarized. Apple-silicon Mach-O executables may still contain platform-required
ad-hoc signatures; those do not establish a publisher identity or satisfy Gatekeeper trust. The
builds are smoke-tested on native macOS runners, but Developer ID signing/notarization is not
configured yet, so Gatekeeper may warn when opening them. The macOS builds require macOS 12
Monterey or newer.
2.0.2
2.0.2 carries the cross-platform port and release hardening completed after the already-published
2.0.1 Windows release. It keeps the 2.0.1 runtime/worker/session fixes and adds native packaging,
runtime payloads and validation for macOS and Linux without trying to overwrite the historical
v2.0.1 release.
Cross-platform desktop runtime
- Native host/platform behavior now covers Windows, macOS and Linux while keeping Windows-only
Desktop automation gated to Windows. - Shell, environment, process cleanup, tray/window lifecycle and secure-storage startup paths were
audited for POSIX hosts, with deterministic coverage for host-specific decisions where possible. - Platform-specific tunnel-client and ripgrep binaries plus Sharp/libvips, node-pty and tree-sitter
native payloads are staged for each OS/CPU pair instead of relying on the install host's native
modules.
Packaging and release matrix
- The release candidate workflow builds six native jobs: Windows x64/ARM64, macOS Intel/Apple
silicon and Linux x64/ARM64. Artifact names are stable across architectures and packaging formats. - macOS produces both DMG and ZIP artifacts. CI verifies ZIP integrity, verifies/mounts each DMG,
checks the normal Applications drag target, verifies bundle identifiers/version/category/minimum
macOS metadata and thin native Mach-O architectures, and then performs both native-module and
normal BrowserWindow startup smoke tests on the matching Mac runner. - Linux produces AppImage and DEB artifacts. Ubuntu 24.04-compatible DEB dependencies include the
time64 GTK/AT-SPI package alternatives; the generated DEB is installed and executed on its build
runner before upload. - AppImage uses electron-builder's static runtime 1.0.3 rather than legacy FUSE2. CI first launches
the artifact with the runner's normal namespace environment, then launches it again with the
namespace probe forced unavailable to exercise the documented fallback. Each isolated first-run
profile must reach app-started, BrowserWindow-loaded and renderer-state-ready evidence under Xvfb
instead of merely keeping a process alive. The static launcher can add--no-sandboxwhen
unprivileged user namespaces are unavailable; on Debian/Ubuntu, prefer the DEB on such restrictive
hosts if you do not want that AppImage fallback. - Linux desktop metadata now uses
com.chatonsteroids.app.desktopconsistently so the generated
launcher and ElectronStartupWMClasscan associate the running window correctly. - The packaging icon source is generated at 1024×1024 for macOS Retina/ICNS conversion while the
Chrome extension retains the dedicated 16/32/48/128 icon sizes.
Release safety
- Publish preflight rejects a non-tag ref, tag/package version mismatch, missing reviewed release
notes, public-history privacy failure, or an already-existing GitHub release before allocating the
six native packaging runners. - The assembled candidate carries explicit SHA-256 checksums, and the publish job verifies those
checksums again before attaching any artifact to a release. - Candidate artifacts use a run-id-based name, avoiding invalid GitHub artifact names when a direct
candidate build comes from a branch whose ref contains/.
Beta despite the version number. Behaviour may still change between releases.