• 26.22.0 b0122d6bcc

    26.22.0
    All checks were successful
    / docker-tag-ci (push) Successful in 3m36s
    / docker-tag-coder (push) Successful in 3m48s
    / docker-tag-coder-xfce-vnc (push) Successful in 6m1s
    Pre-release

    GuillaumeHemmen released this 2026-05-30 07:28:10 +00:00 | 3 commits to master since this release

    Highlights

    • New coder-xfce-vnc image variant: same coder base plus an XFCE desktop served in the browser over noVNC, with Firefox and JetBrains Toolbox preinstalled.
    • Per-user runtime setup (NVM, Node.js, Yarn, bash prompt, global gitignore) now runs at workspace start via scripts/coder-init.sh instead of during image build; same image works whether /home/coder is a fresh PVC or a pre-populated volume.

    New images

    Tag Description
    git.van-hemmen.com/actions/sindri:coder-xfce-vnc-<version> Pinned build of the XFCE/noVNC variant.
    git.van-hemmen.com/actions/sindri:coder-xfce-vnc-latest Rolling tag for the XFCE/noVNC variant.

    The existing tags are unchanged.

    What's in coder-xfce-vnc

    • Everything from the coder variant
    • TigerVNC + XFCE desktop session
    • noVNC web client, autoconnect-ready, with path-based reverse-proxy support (works behind Coder's subdomain = false apps)
    • Firefox (installed from Mozilla's APT repo; Snap is not usable in containers)
    • JetBrains Toolbox with a system-wide .desktop entry, launchable from the XFCE menu
    • Idempotent start-xfce-vnc.sh: re-running it on an already-live session no longer kills it

    New scripts

    • scripts/coder-init.sh: per-user setup at workspace start (NVM, Node.js, Yarn, prompt, global gitignore). Sourced from .bashrc. Used by both variants.
    • scripts/coder-init-desktop.sh: desktop-only additions (Firefox repo, Toolbox).
    • scripts/start-xfce-vnc.sh: standalone launcher, previously inline in the Dockerfile.

    Breaking / behavior changes

    • The bare :latest tag is no longer published. Use coder-latest, coder-xfce-vnc-latest, or ci-latest explicitly.
    • Build-time NODE_VERSION and global-gitignore URL args have been removed from the coder variant. These are now configurable at runtime inside coder-init.sh.
    • The coder variant's image no longer ships a pre-installed NVM/Node; these are provisioned on first start. Workspaces with an already-initialized /home/coder PVC are unaffected.

    Upgrade notes

    • Existing coder workspaces: pull the new image and restart. coder-init.sh will run on next shell start and populate NVM/Node/Yarn if missing.
    • New coder-xfce-vnc workspaces: expose noVNC at the workspace's Desktop app. With subdomain = false, the noVNC URL must be host:port only — the included index.html handles autoconnect=1 redirection.
    • See the Coder template's desktop_readme.md for how to wire both variants behind a single "Use with desktop" checkbox.

    Commits

    12 commits, from 5dd90b4 (initial coder-xfce-vnc variant) through 86b8538 (final Toolbox .desktop cleanup). Full changelog: master...5-differentiate-coder-deployment-and-devcontainer-images.

    Downloads