live-kernel-updater (0.2.30+16) mx; urgency=medium

  * Fix stale-slot false positive when a kernel was purged in the current
    live session: stale_vm is now computed from the unfiltered squashfs
    boot_all before the session-filtering step; previously filtering removed
    the purged version from boot_all first, causing stale_vm to wrongly mark
    the corresponding live slot with '?' even without persistence
  * Hide session-purged kernels from the add/update selection on any live-
    boot run (with or without persistence): kernels removed from the running
    /boot overlay in the current session are filtered out of the selectable
    pool so they cannot be offered as add/update candidates
  * Mark live slots as questionable ('?') when the slot's kernel was purged
    under root persistence: persist_removed_vm detects slots whose kernel
    exists in the squashfs but is absent from the running /boot overlay,
    and adds the '?' warning to those slots in the action menu
  * Replace fatal root-check error with sudo re-exec: instead of aborting
    with "must be run as root", non-root invocations now re-execute the
    script via 'sudo -k' (forcing a fresh password prompt, no cached
    credentials reused)
  * Add 'Legend:' header above the '*'/'?' marker lines in the action menu
    so they are clearly identified as a key and not part of the kernel list;
    reduce spacing after '?' from two spaces to one to align with '*' line;
    remove redundant '*' marker line from kernel selection sub-screen (it was
    shown without the Legend header and is already visible inline in the list);
    suppress legend entirely when no markers are relevant: '*' only shown when
    there are at least two distinct kernel versions across live slots (marking
    identical versions in multiple slots adds no information), '?' only when
    at least one slot is flagged; with a single kernel version the legend is
    never shown
  * Version string: 26.05.4

 -- fehlix <fehlix@mxlinux.org>  Tue, 26 May 2026 12:03:43 -0400

live-kernel-updater (0.2.30+15) mx; urgency=medium

  * Fix LUKS live-usb detection
  * Fix partition probe for LUKS live-usb when a disk device is given
  * Fix mount --move failing on systemd hosts (all mounts are shared by
    default, which prohibits moving them): replace with plain umount +
    remount when LKU owns the mount, or bind-mount when the device is
    already mounted by an automounter (GIO/Thunar/KDE Plasma)
  * Reuse already-opened LUKS mapper on external LUKS USB: detect an
    existing crypt-type child via lsblk and use /dev/mapper/NAME directly
    instead of calling cryptsetup open (which would fail on an already-
    opened device)
  * Reuse already-mounted LUKS device on external LUKS USB: detect via
    findmnt and bind-mount to USB_DIR; set LKU_DID_MOUNT=true in all LUKS
    paths so mp_cleanup always tears down the mount on exit
  * Fix initrd rebuild on LUKS live-usb: copy_programs() now writes
    etc/encrypt into the initrd work directory when IS_ENCRYPTED=true
    or --encrypt is given, so the rebuilt initrd activates LUKS at boot
  * Fix disk-device partition probe: replace first-with-FSTYPE heuristic
    with a mount-and-probe loop that skips BIOS-boot (no FSTYPE), ESP
    (vfat), crypto_LUKS, and swap partitions, mounts each remaining
    candidate, and verifies live content with find_live_boot_dir; handles
    any partition layout including leading data partitions and ESP at any
    position
  * Version string: 26.05.3

 -- fehlix <fehlix@mxlinux.org>  Thu, 21 May 2026 19:58:13 -0400

live-kernel-updater (0.2.30+14) mx; urgency=medium

  * Add -e/--encrypt flag to force cryptsetup into initrd regardless of
    boot environment (useful for testing on non-encrypted live systems)
  * Suppress running-kernel warning when only one vmlinuzN slot exists
  * Fix "Found one new kernel" message shown incorrectly during reassign
    with the same kernel; now says "Found one kernel" in that case
  * Fix live detection with toram boot parameter: remount boot device at
    LIVE_MP so LKU detects and offers "current live system" correctly;
    unmount on exit to restore toram state; handle device already mounted
    elsewhere via bind mount
  * Fix already-mounted boot device unmounted by LKU: detect existing mount
    with findmnt and use it directly; skip umount_all; preserve mount on exit
    (affects GIO/Thunar, KDE Plasma, and any other automounter)
  * Remove stale -a/--auto option: caused infinite loop via offer_restart()
    (YES_no auto-answered "yes" to "Perform another operation?" forever) and
    would start remaster immediately without user confirmation if suggested
  * Add sync in clean_up() before any unmount to prevent filesystem
    corruption on unclean unmount
  * Fix defrag: include initrdN.gz files; exclude .md5, .ver, .kold and
    other small/backup files (kernels and initrds only)
  * Fix offer_restart() arg replay: expand stacked short opts (e.g. -VVd)
    into UNPACKED_ARGS at startup so -d/--device stripping works correctly
    regardless of how args were originally combined
  * Review and adjust man page: replace -G/--graphic-ui description with
    "interactive terminal menu with keyboard navigation"
  * Update bash completion: add -e/--encrypt
  * Rewrite initrd_modules_ver(): use last TRAILER!!! boundary directly
    (grep -boa + tail -1) instead of looping all boundaries; detect
    compression format from magic bytes (kernel lib/decompress.c source)
    instead of trying all decompressors; add lzma support; emit explicit
    warning on unknown format or missing decompressor instead of silent
    failure

 -- fehlix <fehlix@mxlinux.org>  Thu, 21 May 2026 07:37:17 -0400

live-kernel-updater (0.2.30+13) mx; urgency=medium

  * Allow -m/--modules in multi-kernel mode to also add extra modules
    to the selected vmlinuzN (normal update menu runs first)
  * Allow --initrd=file in multi-kernel mode as initrd template for
    the selected vmlinuzN
  * Rewrite man page
  * Add bash completion for all options
  * Version string: 26.05.1

 -- fehlix <fehlix@mxlinux.org>  Mon, 18 May 2026 19:42:08 -0400

live-kernel-updater (0.2.30+12) mx; urgency=medium

  - Mark current kernel with * prefix in kernel selection list
  - Mark running live kernel with * in action menu (update and remove entries)
  - Warn before update or remove when the running live kernel would be removed
  - Detect kernels uninstalled under root persistence and mark with ? in action menu
  - Add legend explaining * (running kernel) and ? (uninstalled under persistence) markers

 -- fehlix <fehlix@mxlinux.org>  Sun, 17 May 2026 19:28:45 -0400

live-kernel-updater (0.2.30+11) mx; urgency=medium

  [ MX multi-kernel mode ]
  * Add per-kernel initrd support (MULTI_KERNEL): each vmlinuzN gets its
    own initrdN.gz; auto-detected from /etc/mx-version presence.
  * Add --multi-kernel / --shared-initrd CLI flags to override detection.
  * Add kernel actions for each vmlinuzN: Add (to next free vmlinuzN),
    Reassign to a different kernel, Remove.
  * Write vmlinuzN.ver version files for GRUB after kernel updates.
  * Warn when syslinux cfg still references shared initrd.gz in
    multi-kernel mode; list affected cfg files.
  * No .kold/.iold backups in MX mode; each vmlinuzN is its own rollback.
  * antiX shared-initrd mode (single initrd.gz for vmlinuz + vmlinuz1)
    unchanged; full backward compatibility maintained.

  [ Early microcode ]
  * Add early microcode update (uc-tool) applied after every initrd repack.
  * Add --no-ucode / -U flag to skip microcode update.

  [ Kernel and initrd handling ]
  * Fix shared-initrd mode: initrd rebuild includes modules for all
    active kernels.
  * Fix initrd-only update incorrectly including .kold backup kernel modules.
  * Fix LUKS encrypted USB: initrd update menu entry was suppressed by
    an obsolete guard; crypto programs are now correctly added.
  * Use squashfs template initrd when updating external USB, for correct
    distro/version match.
  * Support directory argument for --device (pre-mounted live USB).

  [ User interface ]
  * Add --live-dir option to specify live subdirectory non-interactively.
  * Mark currently running kernel (*) in vmlinuzN action menu (live mode only).
  * Mark currently installed vmlinuzN (*) in kernel picker list.
  * Enhance kernel build date detection with multi-format parsing
    and mtime fallback.
  * Sort available kernel list by version descending, date descending.
  * Offer restart after every operation instead of exiting to terminal.
  * Fix quit/cancel from menus closing the terminal on desktop launch.

 -- fehlix <fehlix@mxlinux.org>  Sat, 16 May 2026 17:46:59 -0400

live-kernel-updater (0.2.30+10) mx; urgency=medium

  * if encrypted live media found, also copy encryption programs to initrd

 -- Dolphin Oracle <dolphinoracle@gmail.com>  Fri, 01 May 2026 20:47:07 -0400

live-kernel-updater (0.2.30+9) mx; urgency=medium

  * always copy programs when rebuilding initrd

 -- Dolphin Oracle <dolphinoracle@gmail.com>  Sat, 18 Apr 2026 14:17:07 -0400

live-kernel-updater (0.2.30+8) mx; urgency=medium

  * fix kernel count function by filtering memtest entries

 -- Dolphin Oracle <dolphinoracle@gmail.com>  Fri, 24 Oct 2025 17:37:24 -0400

live-kernel-updater (0.2.30+7) mx; urgency=medium

  [fehlix]
  * filter out memtest from kernel options 

 -- Dolphin Oracle <dolphinoracle@gmail.com>  Thu, 23 Oct 2025 18:05:09 -0400

live-kernel-updater (0.2.30+6) mx; urgency=medium

  * update desktop file

 -- Dolphin Oracle <dolphinoracle@gmail.com>  Sat, 16 Aug 2025 14:34:56 -0400

live-kernel-updater (0.2.30+5) mx; urgency=medium

  * fix syntax error in lib source

 -- Dolphin Oracle <dolphinoracle@gmail.com>  Sat, 07 Jun 2025 09:18:00 -0400

live-kernel-updater (0.2.30+4) mx; urgency=medium

  * change cli-shell-utils location

 -- Dolphin Oracle <dolphinoracle@gmail.com>  Thu, 05 Jun 2025 16:17:51 -0400

live-kernel-updater (0.2.30+3) mx; urgency=medium

  * boot mount point for mx25

 -- Dolphin Oracle <dolphinoracle@gmail.com>  Mon, 24 Mar 2025 21:21:09 -0400

live-kernel-updater (0.2.30+1) mx; urgency=medium

  [fehlix]
  * initrd_release reading

 -- Dolphin Oracle <dolphinoracle@gmail.com>  Mon, 27 Feb 2023 21:42:20 -0500

live-kernel-updater (0.2.21) unstable; urgency=medium

  * add GenericName to desktop file

 -- anticapitalista <antix@operamail.com>  Fri, 20 Jan 2023 17:15:23 +0200

live-kernel-updater (0.2.20) unstable; urgency=medium

  * update desktop file

 -- anticapitalista <antix@operamail.com>  Sat, 28 Aug 2021 21:24:06 +0300

live-kernel-updater (0.2.19) unstable; urgency=medium

  * edits to pt_BR .desktop file

 -- anticapitalista <antix@operamail.com>  Fri, 19 Mar 2021 19:06:36 +0200

live-kernel-updater (0.2.18) unstable; urgency=medium

  * Bump version to 2.30.04 (fix lsblk)

 -- anticapitalista <antix@operamail.com>  Fri, 25 Oct 2019 17:02:57 +0300

live-kernel-updater (0.2.17) unstable; urgency=medium

  * updated default icon to use papirustheme

 -- anticapitalista <antix@operamail.com>  Sat, 07 Sep 2019 14:22:22 +0100

live-kernel-updater (0.2.16) unstable; urgency=medium

  * added MX-Live category back to the desktop file

 -- anticapitalista <antix@operamail.com>  Sat, 20 Jul 2019 18:28:33 +0100

live-kernel-updater (0.2.15) unstable; urgency=medium

  * buster release

 -- anticapitalista <antix@operamail.com>  Fri, 05 Jul 2019 21:05:47 +0300

live-kernel-updater (0.2.14) unstable; urgency=medium

  * Bump version to 2.30.03

 -- anticapitalista <antix@operamail.com>  Thu, 09 May 2019 15:18:47 +0300

live-kernel-updater (0.2.13) unstable; urgency=medium

  * latest upstream changes

 -- anticapitalista <antix@operamail.com>  Thu, 21 Mar 2019 16:41:09 +0200

live-kernel-updater (0.2.12) unstable; urgency=medium

  * use x-terminal-emulator in desktop file

 -- anticapitalista <antix@operamail.com>  Sat, 16 Mar 2019 17:50:05 +0200

live-kernel-updater (0.2.11) unstable; urgency=medium

  * updated pl

 -- anticapitalista <antix@operamail.com>  Sun, 03 Mar 2019 20:11:58 +0200

live-kernel-updater (0.2.10) unstable; urgency=medium

  * edits to desktop file

 -- anticapitalista <antix@operamail.com>  Thu, 28 Feb 2019 19:55:11 +0200

live-kernel-updater (0.2.9) unstable; urgency=medium

  * added icon

 -- anticapitalista <antix@operamail.com>  Mon, 18 Feb 2019 16:51:48 +0200

live-kernel-updater (0.2.8) unstable; urgency=medium

  * added more languages to desktop file

 -- anticapitalista <antix@operamail.com>  Fri, 25 Jan 2019 17:50:40 +0200

live-kernel-updater (0.2.7) unstable; urgency=medium

  * data for the menu is displayed as well as the menu bugfix

 -- anticapitalista <antix@operamail.com>  Mon, 15 Jan 2018 18:54:07 +0200

live-kernel-updater (0.2.6) unstable; urgency=medium

  * Bump version

 -- anticapitalista <antix@operamail.com>  Tue, 03 Oct 2017 01:02:34 +0300

live-kernel-updater (0.2.5) unstable; urgency=medium

  * bump version

 -- anticapitalista <antix@operamail.com>  Mon, 28 Aug 2017 10:51:57 +0100

live-kernel-updater (0.2.4) unstable; urgency=medium

  * Bump version 

 -- anticapitalista <antix@operamail.com>  Sat, 12 Aug 2017 10:52:57 +0100

live-kernel-updater (0.2.3) unstable; urgency=medium

  * Bump version

 -- anticapitalista <antix@operamail.com>  Mon, 31 Jul 2017 20:22:10 +0100

live-kernel-updater (0.2.2) unstable; urgency=medium

  * Switch to graphics user interface by default

 -- anticapitalista <antix@operamail.com>  Sat, 15 Jul 2017 11:50:56 +0100

live-kernel-updater (0.2.1) unstable; urgency=medium

  * Bump version

 -- anticapitalista <antix@operamail.com>  Sat, 20 May 2017 21:53:31 +0300

live-kernel-updater (0.2.0) unstable; urgency=medium

  * Add support for encrypted live usb

 -- anticapitalista <antix@operamail.com>  Mon, 01 May 2017 12:25:20 +0300

live-kernel-updater (0.1.10) unstable; urgency=medium

  * version bumped

 -- anticapitalista <antix@operamail.com>  Fri, 02 Dec 2016 12:14:30 +0200

live-kernel-updater (0.1.9) unstable; urgency=medium

  * Add copyright notice and license file

 -- anticapitalista <antix@operamail.com>  Thu, 24 Nov 2016 13:27:29 +0200

live-kernel-updater (0.1.8) unstable; urgency=medium

  * Added Catalan translation to desktop file

 -- anticapitalista <antix@operamail.com>  Thu, 24 Nov 2016 13:26:59 +0200

live-kernel-updater (0.1.7) unstable; urgency=medium

  * Rename error file to lku.error (no trailing "s")

 -- anticapitalista <antix@operamail.com>  Sat, 12 Nov 2016 13:54:19 +0200

live-kernel-updater (0.1.6) unstable; urgency=medium

  * Update usage in readme
  * Add TEMPLATE_INITRD_2 for antiX + MX support

 -- anticapitalista <antix@operamail.com>  Mon, 07 Nov 2016 12:26:13 +0200

live-kernel-updater (0.1.5) unstable; urgency=medium

  * Remove empty strings in .desktop file

 -- anticapitalista <antix@operamail.com>  Sat, 29 Oct 2016 14:03:58 +0300

live-kernel-updater (0.1.4) unstable; urgency=medium

  * Add "dark" color theme

 -- anticapitalista <antix@operamail.com>  Thu, 13 Oct 2016 12:25:03 +0300

live-kernel-updater (0.1.3) unstable; urgency=medium

  * Fix translation comments 
  * Use -C for color scheme. Update usage.

 -- anticapitalista <antix@operamail.com>  Mon, 10 Oct 2016 12:04:25 +0300

live-kernel-updater (0.1.2) unstable; urgency=medium

  * Send my_done() $action_name, not $action  

 -- anticapitalista <antix@operamail.com>  Sat, 08 Oct 2016 10:55:23 +0300

live-kernel-updater (0.1.1) unstable; urgency=medium

  * updated man page
  * Always copy initrd-release from linuxfs to initrd if it is missing  

 -- anticapitalista <antix@operamail.com>  Fri, 07 Oct 2016 13:33:42 +0300

live-kernel-updater (0.1.0) unstable; urgency=low 
 
  * Initial Release.

 -- anticapitalista <antiX@operamail.com>  Wed, 05 Oct 2016 17:07:00 +0200

