• 26.37.0 13272e2efd

    26.37.0
    All checks were successful
    / docker-tag-ci (push) Successful in 3m50s
    / docker-tag-coder (push) Successful in 4m29s
    / docker-tag-coder-xfce-vnc (push) Successful in 9m19s
    Stable

    claude-bot released this 2026-09-11 09:32:10 +00:00 | 0 commits to master since this release

    What's new in 26.37.0

    Freelens replaces Lens in the desktop variant, the images now install Ubuntu packages from the France mirror, python3 -m venv works out of the box, and two fixes for the coder-xfce-vnc build.

    ⚠️ Ubuntu packages now come from the France mirror (#29)

    This changes the published images. They now use http://fr.archive.ubuntu.com/ubuntu instead of archive.ubuntu.com and security.ubuntu.com, for both the regular archive and security updates. It applies at build time, to apt-get inside containers and workspaces, and to images built FROM Sindri.

    Why: on 2026-09-11 Canonical's main archive went down. Every apt-get stalled, the desktop build went from about 10 minutes to 48, and a release couldn't wait for it to recover. Country mirrors run on separate hosts and kept working.

    What it means for you:

    • Integrity is unchanged: APT still checks every package list against Ubuntu's archive signing key.
    • Security updates can arrive later: the mirror can lag security.ubuntu.com by a few hours.
    • Check which mirror an image uses: docker inspect label com.van-hemmen.sindri.ubuntu-mirror, or grep '^URIs:' /etc/apt/sources.list.d/ubuntu.sources.
    • Choose another mirror when building: --build-arg UBUNTU_MIRROR=http://<cc>.archive.ubuntu.com/ubuntu. An empty value (--build-arg UBUNTU_MIRROR=) keeps Ubuntu's stock sources.
    • Restore the stock sources in an existing image: Ubuntu's original file is kept at /usr/share/sindri/ubuntu.sources.orig.
      • In a derived image: cp /usr/share/sindri/ubuntu.sources.orig /etc/apt/sources.list.d/ubuntu.sources
      • In a workspace: the same command with sudo. /etc isn't on the PVC, so add it to a Coder startup_script to keep it across restarts.

    Full details are in the README's Ubuntu Package Mirror section.

    Freelens replaces Lens in coder-xfce-vnc (#23)

    The desktop variant now ships Freelens, the MIT-licensed community fork of OpenLens, instead of proprietary Lens. It installs from Freelens's official APT repository, and the build checks the signing key's fingerprint before trusting it. Every build picks up the latest Freelens release.

    Freelens launches the same way Lens did: through /usr/local/bin/freelens and a menu entry under Development, with the settings Electron apps need in an unprivileged pod (ELECTRON_DISABLE_SANDBOX=1, --disable-dev-shm-usage).

    If you used Lens in an existing workspace:

    • Freelens stores its data in ~/.config/Freelens/, not ~/.config/Lens/, so clusters added in Lens need to be added again. ~/.kube/config is read as usual.
    • lens-desktop and its wrapper are gone. coder-init-desktop no longer tidies stale Lens menu entries.

    python3-venv in every variant (#22)

    The base image now includes python3-venv, so python3 -m venv works in ci, coder and coder-xfce-vnc. Firebase Python deploys and CI jobs no longer need to apt-get install python3-venv themselves.

    Fixes

    • coder-xfce-vnc build (#25): Nimbalyst 0.36 renamed the files inside its AppImage (@nimbalystelectron → nimbalyst), which broke the build with no error message. The build uses the new names, and if a file goes missing it now says which one and lists the bundle's contents.
    • Image publishing (#27): CI now pushes images to Forgejo's in-cluster registry service instead of through the public ingress, which cut large layer uploads off after 60 seconds (502 Bad Gateway). This needs actions/kaniko 26.37.0 (new REGISTRY_INSECURE setting). Image names don't change: pull from git.van-hemmen.com/actions/sindri:<tag> as before.

    Full changelog: 26.30.0...26.37.0

    Downloads