From 467466e5ce24089c4ffa86408fc7289220026190 Mon Sep 17 00:00:00 2001 From: Anthony Ettinger Date: Fri, 23 Oct 2026 10:27:50 +0000 Subject: [PATCH] w3bs.org/os: W3BS OS 1.2 is Debian 13; retire the Alpine release workflow The page describes the Debian 13 (systemd) ISO now that os-v1.2.0 is published: network by itself, SSH with a one-time password, root then user, domain, encryption, servers first. os-iso.yml (Alpine) runs by hand only, so an os/iso change cannot move os-latest back. Co-Authored-By: Claude Opus 5.5 --- .github/workflows/os-iso.yml | 15 ++------------- src/site.mjs | 6 +++--- 2 files changed, 5 insertions(+), 16 deletions(-) diff --git a/.github/workflows/os-iso.yml b/.github/workflows/os-iso.yml index a925791..9337452 100644 --- a/.github/workflows/os-iso.yml +++ b/.github/workflows/os-iso.yml @@ -6,20 +6,9 @@ # point os-latest/latest.json at it for w3bs.org/os. name: os-iso +# Retired 2026-10-23: W3BS OS moved to Debian 13 (os/debian, os-debian.yml). Kept for manual +# Alpine builds only; it no longer runs on push, so it cannot move os-latest back to Alpine. on: - push: - branches: [main] - paths: - - "os/iso/**" - - "os/docker/zshrc" - - "os/docker/init.sh" - - "package-manager/crates/**" - - "package-manager/Cargo.lock" - - "desktop/crates/**" - - "desktop/Cargo.lock" - - "registry/FINGERPRINT" - - ".github/workflows/os-iso.yml" - - ".github/workflows/os-install-test.yml" workflow_dispatch: inputs: publish: diff --git a/src/site.mjs b/src/site.mjs index d1706a6..7bd8763 100644 --- a/src/site.mjs +++ b/src/site.mjs @@ -822,7 +822,7 @@ function osInstall(iso) { 'Upload the ISO in your provider\u2019s panel (on netcup: Media \u203a DVD drive, upload by FTP, pick it under Own DVDs and turn on DVD boot), boot the server from it, open the provider\u2019s web console and run w3bs-os-install. KVM servers with virtio disks, BIOS or UEFI, are what we test on.'; if (iso) routes.push( - `
PCS, INTEL MACS AND VPS SERVERS · ISO ${e(iso.version)}${iso.preview ? ' · PREVIEW' : ''}

One installer ISO for x86-64.

The same ISO installs on Intel and AMD PCs, Intel Macs and VPS servers. Boot it with Secure Boot off and pick the graphical installer (the default on a machine with a screen) or the text installer, the first question it asks. Either one asks for a desktop install (Hyprland, or Plasma, GNOME, Xfce; the default when the machine has a display adapter) or a server install (command line only; the default when it has none, or --server), then zsh, an encrypted disk and the desktop layer, with one review screen before anything is written. In VirtualBox set Display to VMSVGA with 128 MB of video memory. Packages download during the install.

Download the ISO (${e(iso.size)})${iso.torrentUrl ? ` .torrent` : ''}${iso.magnet ? ` Magnet link` : ''}

${iso.torrentUrl || iso.magnet ? '

The torrent is seeded by our seedboxes and falls back to the download above as a web seed.

' : ''}

SHA-256 ${e(iso.sha256)}

${code(`curl -fLO ${iso.url}\ncurl -fLO ${iso.sumsUrl} && sha256sum -c SHA256SUMS`)}

PC or Intel Mac: write it to a USB stick and boot from it.

${code(`sudo dd if=${iso.name} of=/dev/sdX bs=4M status=progress oflag=sync`)}

VPS: ${vpsSteps}

${iso.preview ? '

Preview build: its automated install test is still running. Use it on a machine or server you can wipe.

' : ''}
`, + `
PCS, INTEL MACS AND VPS SERVERS · ISO ${e(iso.version)}${iso.preview ? ' · PREVIEW' : ''}

One installer ISO for x86-64.

W3BS OS 1.2 is Debian 13 "trixie" with systemd (no snap, no cloud-init). The same ISO installs on Intel and AMD PCs and VPS servers, BIOS or UEFI, with Secure Boot off. The live system brings up the network by itself (DHCP and IPv6 on every card) and shows ssh root@<address> with a one-time password, so you can install from your own terminal. w3bs-os-install asks for a root password, your user (sudo), the domain (its web page gets HTTPS), and encrypts the disk unless you say no, with one review screen before anything is written. 1.2 installs servers; the desktop follows. Packages download during the install.

Download the ISO (${e(iso.size)})${iso.torrentUrl ? ` .torrent` : ''}${iso.magnet ? ` Magnet link` : ''}

${iso.torrentUrl || iso.magnet ? '

The torrent is seeded by our seedboxes and falls back to the download above as a web seed.

' : ''}

SHA-256 ${e(iso.sha256)}

${code(`curl -fLO ${iso.url}\ncurl -fLO ${iso.sumsUrl} && sha256sum -c SHA256SUMS`)}

PC or Intel Mac: write it to a USB stick and boot from it.

${code(`sudo dd if=${iso.name} of=/dev/sdX bs=4M status=progress oflag=sync`)}

VPS: ${vpsSteps}

${iso.preview ? '

Preview build: its automated install test is still running. Use it on a machine or server you can wipe.

' : ''}
`, ); else { routes.push( @@ -867,7 +867,7 @@ async function osPage() { const defaults = [ [ 'Base', - 'Alpine Linux (13 MB base): the same OS in Docker, on servers, PCs and Macs; Nura (postmarketOS) on phones', + 'Debian 13 "trixie" with systemd on servers and PCs (the installer ISO); the Docker images are still Alpine; Nura (postmarketOS) on phones', ], [ 'First release', @@ -917,7 +917,7 @@ async function osPage() { const suiteLine = suite ? `The draft suite manifest resolves ${suite.entries} Profullstack packages from the catalog, including all ${suite.named} named inclusions (MoshCode, PairUX, DiskPush, the Agentic Desktop Layer, Training and more). ${suite.blocking_tasks} packaging tasks block M0: ${suite.publisher_scripts} packages install only through publisher scripts and need signed artifacts, ${suite.unpinned} has no pinned release, and ${suite.command_collisions.length} command names have two claimants.` : 'The draft suite manifest is generated from the package catalog.'; - return `
W3BS OS · SPECIFICATION

An OS people
and agents can run.

A lightweight Alpine Linux-based operating system with Hyprland (or KDE Plasma, GNOME), zsh, a full setup wizard and every Profullstack app installed, plus a desktop agents can operate under your control. ${OS_RELEASES.docker ? 'Docker images are the first release; the hardware installer and phone builds follow.' : 'There are no images to download yet: this page tracks the specification and its progress.'}

${osScreens(iso)}${osInstall(iso)}${osStudio()}
DEFAULTS

What you get.

${rows(defaults)}
INCLUDED SOFTWARE

The whole suite, offline.

${suiteLine}

APPS FROM OTHER PLATFORMS

One launcher, honest labels.

w3bs run picks the best route for each app and labels its window, so a remote or guest app is never passed off as local.

${rows(runtimes)}
HARDWARE

Certified, preview, research, unsupported.

Only certified devices get an install button. A device with no supported image is offered the companion app instead.

${rows(hardware)}
ALSO IN THE SPEC

For publishers and developers.

W3BS Publish: ship one signed release and reach users on every OS, with deb, Flatpak, Homebrew, winget, MSIX, dmg and APK built from it. Providers: w3bs install drives apt, dnf, pacman, Homebrew, winget, Flatpak, Nix and the app stores, and records what it installed. W3BS Fleet: one desktop app and cloud app for every server, desktop, laptop and phone you own (spec).

Status: specification. Docker editions are out; the installer ISO and phone builds are in testing. Links and supported-hardware results appear here only once those artifacts and checks exist.
`; + return `
W3BS OS · SPECIFICATION

An OS people
and agents can run.

A Debian 13 based operating system (systemd, no snap) with zsh, sudo, the w3bs CLI, mise, pnpm and bun, and every Profullstack app a command away, plus a desktop agents can operate under your control. ${OS_RELEASES.docker ? 'Docker images are the first release; the hardware installer and phone builds follow.' : 'There are no images to download yet: this page tracks the specification and its progress.'}

${osScreens(iso)}${osInstall(iso)}${osStudio()}
DEFAULTS

What you get.

${rows(defaults)}
INCLUDED SOFTWARE

The whole suite, offline.

${suiteLine}

APPS FROM OTHER PLATFORMS

One launcher, honest labels.

w3bs run picks the best route for each app and labels its window, so a remote or guest app is never passed off as local.

${rows(runtimes)}
HARDWARE

Certified, preview, research, unsupported.

Only certified devices get an install button. A device with no supported image is offered the companion app instead.

${rows(hardware)}
ALSO IN THE SPEC

For publishers and developers.

W3BS Publish: ship one signed release and reach users on every OS, with deb, Flatpak, Homebrew, winget, MSIX, dmg and APK built from it. Providers: w3bs install drives apt, dnf, pacman, Homebrew, winget, Flatpak, Nix and the app stores, and records what it installed. W3BS Fleet: one desktop app and cloud app for every server, desktop, laptop and phone you own (spec).

Status: specification. Docker editions are out; the installer ISO and phone builds are in testing. Links and supported-hardware results appear here only once those artifacts and checks exist.
`; } const TRAINING_INSTALL = 'curl -fsSL https://w3bs.org/training/install.sh | sh'; const TRAINING_INSTALL_WIN = 'irm https://w3bs.org/training/install.ps1 | iex';