// reference
Versions
Every release, and what each one brought.
1.3.1 — Bug fixes from v1.3 2026-07-30
Targeted fixes for issues found in the field and during testing.
- Snapshot file naming — Visor now falls back to
\EFI\visor\snapshot.conf(singular) whensnapshots.confis missing, and logs which name it found so users don't get confused when the V panel has nothing to show. - Pre-connected USB detection — hotplug now scans volumes that are already present when the menu arms, not just future plugs. Combined with
scan_existing, pre-plugged USB sticks appear in the menu without needing to unplug and reinsert. - Log escape hatch —
log=0is honored before any ESP write, so firmware with a broken ESP write path can still reach the menu and be diagnosed (the boot.log is never created or modified). - Log rotation — boot.log now preserves prior sessions (keeps the last 3, caps at 128 KiB) instead of deleting and recreating each boot, so early-hang diagnostics survive across reboots.
- Wrong passphrase handling —
luks_confirm=1asks for the passphrase twice and reprompts on mismatch instead of silently booting.luks_verbose=1removesquiet splashso the initramfs retry prompt is visible when verification fails. - Password prompt visibility — F2 at the passphrase prompt toggles showing what you typed, so you can verify your keyboard layout before submitting.
- Rescue console from the menu — Esc at the boot menu now opens the options / rescue console (same console as after a failed boot), even when no entry has failed. Esc there returns to the menu.
- Icon auto-detection — auto-detected raw kernels now derive icons from their name (restored v1.2.1 behavior), so entries like
vmlinuz-linuxshow the Linux icon instead of unknown. - Volume-pinned loading — entries detected on a volume now load their kernel and initrd from that volume's handle, fixing multi-disk setups where the ESP's fallback loader would be found instead of the correct one on the target volume.
- cmdline defaulting — the global
cmdline=now only applies to entries that accept a default cmdline (raw kernels). Chainloads and foreign volumes no longer inherit it, so Ventoy-style stick booting works correctly without unwanted root= parameters. - Secure Boot driver connect — firmware block devices that already expose a filesystem are skipped in the driver connect pass, reducing the delay when Secure Boot is enabled and the unsigned EfiFs driver is refused.
1.3 — Cross-platform, snapshots, hotplug latest release 2026-07-26
The big one: ARM64, wallpaper accent colors, snapshot booting, live USB hotplug, and a pile of real-hardware fixes.
- AArch64 build —
make ARCH=aarch64, architecture-neutral GUI core, arch layer for clock and framebuffer write-combining. - Accent colors — Material You palettes extracted from the wallpaper in fixed-point math, with 7 variants.
- Btrfs snapshot booting — snapper/Timeshift/plain layouts, manifest or direct detection, one-shot boot from the menu.
- Live USB hotplug — sticks appear in the menu with a pop-in animation while it is open, and leave when unplugged.
- Filesystem drivers — EfiFs download/install integrated (pinned + hash-verified), started lazily so the menu stays fast.
- Smarter detection — raw kernels are found alongside UKIs, and detected kernels get an automatic, accurate cmdline (UKI
.cmdline→ fstab → GPT root partition type). - Simplified encryption —
visor encrypt kernel initrd: one password, ESP install, generated entry with LUKS auto-detection. - Diagnosable failures — LoadImage status codes logged, Secure Boot rejections named, device-path quirk fallback.
- Hardening — firmware file-size-0 workaround, no config size limits, partition pinning, decode budgets, long-filename handling.
1.2.1 — Firmware fixes 2026-07-18
A field-report release: fixes driven by real machines.
- Raw kernels no longer rejected with "file size is zero or implausibly large" on firmware with broken seek-based size probing (Acer and others) — sizes come from
GetInfo()with the seek probe as fallback (#3, #5). - Auto-detect falls back to chainloading distro loaders (
shimx64.efi/grubx64.efi) from\EFI\<vendor>\when no UKI, BLS entry, or raw kernel is found — fixes Ubuntu-style installs (#6). - "Visor loading…" prints before log rotation, to help diagnose early-init freezes (#8).
- Size warnings log the value the firmware actually reported; README gained the "Booting from non-FAT filesystems" section (#7).
1.2 — Requested Features 2026-07-03
The community-requests release.
- Encrypted kernel/UKI/initrd support (VISORENC) with
tools/visor_encrypt.py. - LUKS password prompt and initrd keyfile handoff.
- Boot-failure recovery console with log viewer and retry/menu options.
- OSTree/BLS deployment detection, version browsing, and boot-count rollback support.
autoboot,animation, andfade_speedconfig options.- Safety work: boot handoff, file reads, config parsing, PNG/BMP bounds checks.
1.1 — A lot of fixes 2026-06-27
No new features — a hardening release from a full security and stability review.
- Malformed/oversized PNGs rejected cleanly; sane decode limits.
- Filesystem drivers verified under Secure Boot like kernels are.
- NVRAM preferences writable only from Visor at boot, not by a running OS.
- Graceful failure on malformed config and low-memory paths; corrupt kernel handoff headers refused.
- Performance: boot log opened once per boot, faster image assembly, quicker scans.
1.0 — Stable Release 2026-06-24
Rebuilt, cleaned up, and tested across distros.
- Mouse, trackpad, and touchscreen support with click-to-boot.
- Theme rotation (
random/cycle) and remember-last. - Recovery: one-shot cmdline editing with e and auto
(recovery)entries. - Secure Boot awareness (verification before starting images).
- Unified
entry { }blocks with automatic boot-method detection; config comments. - Reliability: shim/GRUB chainloading fixes, firmware compatibility fixes, safer installer.
Where the details live
| Document | Contents |
|---|---|
| GitHub Releases | The published release notes for every version, v1.0 through v1.3. |
git log | The ground truth. |