Release version 2.3.0
This commit is contained in:
49
CHANGELOG.md
49
CHANGELOG.md
@@ -1,5 +1,54 @@
|
||||
# Changelog
|
||||
|
||||
## [2.3.0] - 2026-07-24
|
||||
|
||||
**✨ New**
|
||||
|
||||
- Guided setup wizard, now the default command: *lim* with no *--type* (or
|
||||
*lim --type guided*) asks everything up front — distribution, target device,
|
||||
hostname, login user + SSH key, password — then builds an encrypted,
|
||||
Tor-remote-unlockable image unattended.
|
||||
- Debian / Raspberry Pi OS remote LUKS unlock. The initramfs unlock stack is
|
||||
now distro-agnostic behind an *InitramfsBackend* abstraction: *mkinitcpio*
|
||||
for Arch/Manjaro, *initramfs-tools* (cryptsetup-initramfs + dropbear-initramfs
|
||||
+ a Tor onion) for Raspberry Pi OS / moode / RetroPie.
|
||||
- Flash full disk images into LUKS. Distributions that ship a *.img* rather
|
||||
than a rootfs tarball (Raspberry Pi OS, moode, RetroPie, Manjaro ARM) are
|
||||
loop-mounted and their boot + root partitions copied into a fresh LUKS
|
||||
container. New Raspberry Pi OS catalog (*lite64* / *desktop64* / *lite32*).
|
||||
- New *remote-unlock* command: reach a waiting initramfs over Tor (onion, via
|
||||
*torsocks*) or plain SSH (host/IP), running *cryptroot-unlock* or presenting
|
||||
the passphrase prompt. The wizard saves a target record under
|
||||
*~/.config/lim/unlocks* so *lim --type remote-unlock* offers it directly.
|
||||
- Cross-architecture builds. Building a foreign-arch image (e.g. arm64
|
||||
Raspberry Pi OS on an x86 host) auto-installs *qemu-user-static* and registers
|
||||
binfmt, or aborts before the target is erased with per-distro instructions.
|
||||
- RTC-less clock hardening. A clock floor (build epoch baked into the initramfs)
|
||||
plus a numeric *tor_ntp=* cmdline let the clock sync without DNS, so the Tor
|
||||
onion still publishes on boards without a real-time clock (which boot at 1970).
|
||||
- Numbered selection menus for distribution and version prompts; typing the
|
||||
name still works.
|
||||
- CI: a full Debian *build → boot → LUKS-unlock* QEMU end-to-end job runs on
|
||||
push (*make test-qemu-debian*).
|
||||
|
||||
**🐛 Fixes**
|
||||
|
||||
- Raspberry Pi OS Bookworm boots the encrypted image: the initramfs is placed on
|
||||
the */boot/firmware* FAT partition instead of the ext4 root, so cryptsetup is
|
||||
present at boot (no more *(initramfs)* emergency shell).
|
||||
- Chroot package installs are robust cross-host: a Debian-safe *PATH* (so
|
||||
*update-initramfs* / *useradd* resolve) and *apt-get update* before install
|
||||
(stock images ship stale lists whose superseded *.deb* URLs 404).
|
||||
- Stock-image *fstab* is normalized (the existing */* line is replaced, not
|
||||
duplicated) when copying a distro image into LUKS.
|
||||
- Large copies show progress (*rsync --info=progress2*, *cp* fallback).
|
||||
|
||||
**💥 Breaking / behavior**
|
||||
|
||||
- *lim* with no *--type* now runs the guided wizard (previously *--type* was
|
||||
required).
|
||||
- The long-deprecated *--extra* argument is removed.
|
||||
|
||||
## [2.2.0] - 2026-07-21
|
||||
|
||||
- Optional remote LUKS unlock via a Tor onion service in the initramfs.
|
||||
|
||||
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
|
||||
|
||||
[project]
|
||||
name = "linux-image-manager"
|
||||
version = "2.2.0"
|
||||
version = "2.3.0"
|
||||
description = "CLI (`lim`) for downloading, verifying and flashing Linux images, LUKS/Btrfs encrypted storage (single drive and RAID1), image backups and chroot maintenance"
|
||||
readme = "README.md"
|
||||
requires-python = ">=3.10"
|
||||
|
||||
Reference in New Issue
Block a user