vdev (1.4.8-5+genuen6u1) unstable; urgency=medium

  * Add udevadm symlink pointing to vdevadm
  * Adapt vdev initramfs hook to the existance of the udevamd symlink
  * Remove dependency on libudev-compat-helpers, no longer required

 -- Aitor <aitor@genuen.org>  Tue, 28 Jul 2026 12:12:03 +0200

vdev (1.4.8-4+genuen6u1) unstable; urgency=medium

  * initramfs: fix encrypted root (LUKS+LVM) under vdev:
    - Add disk.act and disk-part.act so disk.sh creates
      /dev/disk/by-uuid (and by-label/by-partuuid) before cryptroot.
      Without these, crypttab UUID= sources never resolve; dm-disk.act
      alone only covers dm-* after unlock.
    - Move DM_DISABLE_UDEV=1 and /dev/mapper/control setup from
      local-block/forcelvm to init-top/vdev so cryptsetup runs without
      waiting on udev; persist DM_DISABLE_UDEV via /conf/param.conf
      (init-top scripts run in a subshell, so bare export is lost).
    - Keep forcelvm for post-cryptroot vgscan/vgchange only
      (PREREQ="vdev cryptroot"; invoke via /usr/sbin/lvm).
    - Expand modules.d/vdev: dm_mod/dm_crypt, aesni/xts/sha256 and
      af_alg/algif_*, plus usbhid/hid_generic for passphrase entry.

 -- Aitor <aitor@genuen.org>  Thu, 23 Jul 2026 12:49:00 +0200

vdev (1.4.8-3+genuen6u1) unstable; urgency=medium

  * Moved cdrom_id from /lib/vdev to /lib/udev (required by live-boot)
  * Added libkmod.so.2 to the initramfs

 -- Aitor <aitor@genuen.org>  Mon, 20 Jul 2026 10:43:44 +0200

vdev (1.4.8-2+genuen6u1) unstable; urgency=medium

  * Avoid system hangs in the initramfs environment by disabling udev 
    synchronization and rules during LVM volume activation:
    - Ran `vgscan` and `vgchange` injecting custom inline LVM 
      configuration: 'activation { udev_sync=0 udev_rules=0 }'
    - Forced manual block node creation using `--mknodes`
    - Added `PREREQ="vdev"` to `local-block/forcelvm`script to force 
      execution order

 -- Aitor <aitor@genuen.org>  Sun, 19 Jul 2026 20:16:07 +0200

vdev (1.4.8-1+genuen6u1) unstable; urgency=medium

  * vdev-settle-sync.sh: delegate worker to vdevadm settle --input-worker
  * New upstream version 1.4.8

 -- Aitor <aitor@genuen.org>  Thu, 16 Jul 2026 13:29:47 +0200

vdev (1.4.7-1+genuen6u1) unstable; urgency=medium

  * New vdevadm CLI (info, trigger, settle, control, monitor); monitor derived
    from eudev udevadm-monitor.c (Kay Sievers, GPL-2+)
  * vdevadm: trigger --name-prefix; settle --list, --list-pending, --input-worker;
    control uses eudev /run/udev/control socket
  * vdevd: eudev-compatible /run/udev/control socket (udev-ctrl wire protocol)
    and /run/udev/queue for settle; vdev_ctrl in libvdev
  * dev-setup.sh: eventfs_fstype_ok accepts fuse (not only fuseblk) on Devuan
    Excalibur; skip remount when eventfs serial queue is already healthy
  * udev-compat.sh: merge udisks-props into libudev-compat device DB (E:UDISKS_*)
    so udisks2/gvfs see block devices, not only the synthetic uevent stream
  * udisks2.sh: fix UDISKS_IGNORE for SSD partitions; ignore whole disks and
    zero-size nodes only; use $VDEV_MOUNTPOINT for by-uuid symlinks; also ignore
    MBR extended/container partitions (0x05/0x0f/0x85) and other special DOS/GPT
    types from 80-udisks2.rules so ~1K extended-partition nodes do not break
    udisks2/gvfs presentation of logical volumes; read FS UUID via vdev_blkid on
    the device node instead of scanning /dev/disk/by-uuid/; keep sr* optical drives
    and removable whole-disk USB media visible; exempt hybrid ISO installer sticks
    (DOS 0x0/0x17 + iso9660/udf) from the special-partition ignore list; use
    /etc/fstab install comments (was on /dev/sdXN during installation) to mark
    canonical system UUIDs UDISKS_IGNORE=1 and keep Clonezilla clone copies visible
  * subr.sh: do not overwrite /dev/disk/by-{uuid,partuuid,label} when a clone
    reuses the same IDs (Clonezilla); prevents alias hijacking that hid one of
    two identical partition tables from udisks2/gvfs
  * vdev_root_sys_block.c: preserve bare NVMe namespace names (nvme0n1)
  * New upstream version 1.4.7

 -- Aitor <aitor@genuen.org>  Thu, 09 Jul 2026 20:30:00 +0200

vdev (1.4.6-1+genuen6u1) unstable; urgency=medium

  * debian/init: Pick vdevd.1.conf vs vdevd.conf from a live eventfs mount on 
    /dev/metadata/udev/events/serial (fuse / fuseblk / fuse.* via
    `stat -f '%T'` + `ls`). If the serial queue is already mounted, treat 
    `start` as a `vdev restart` and run long-running vdevd.conf only (skip 
    the second vdevd.0 coldplug pass and phased subshells).
  * dev-setup.sh: inline eventfs mount (metadata/udev layout, fuse type probe,
    setsid background start); no remount when the serial queue is already live
  * Add vdev-eventfs-umount.sh; SysV stop unmounts eventfs only on shutdown
    (runlevels 0/6), not on vdev stop/restart
  * Remove vdev-ensure-eventfs.sh; drop Required-Start: eventfs from vdev init
  * eventfs package no longer provides a separate mount service
  * dev-setup.sh: drop preseed fallback that remounted eventfs when stat(2)
    reported "fuse" instead of "fuseblk"; delegate to vdev-ensure-eventfs.sh
  * vdev-ensure-eventfs.sh: treat findmnt FSTYPE fuse, fuseblk, and fuse.*
    as a live serial-queue mount (ls probe unchanged)
  * event-put: log and report delivery failures to broken listener queues
  * New upstream version 1.4.6

 -- Aitor <aitor@genuen.org>  Sat, 28 Jun 2026 14:00:00 +0200

vdev (1.4.5-3+genuen6u1) unstable; urgency=medium

  * Drop input-only OS_SUBSYSTEM filter in the vdevd.1 profile that left DRM 
    without G:seat / E:ID_SEAT entries

 -- Aitor <aitor@genuen.org>  Wed, 24 Jun 2026 22:50:57 +0200

vdev (1.4.5-2+genuen6u1) unstable; urgency=medium

  * Added alsa actions to d/actions.1
  * Added sound and net subsystems to the early profile in the json config file

 -- Aitor <aitor@genuen.org>  Sat, 20 Jun 2026 11:19:29 +0200

vdev (1.4.5-1+genuen6u1) unstable; urgency=medium

  * uaccess.sh: call elogind-uaccess-command with device node path only; elogind
    255.x parse_argv() rejects a second [SEAT] argument (Usage: DEVPATH [SEAT] on
    every uaccess device during coldplug). Seat defaults to seat0 when omitted
  * Add acl runtime dependency  
  * New upstream version 1.4.5

 -- Aitor <aitor_czr@genuen.org>  Wed, 17 Jun 2026 00:14:09 +0200

vdev (1.4.4-1+genuen6u1) unstable; urgency=medium

  * ALSA / desktop audio: ship vdev actions and helpers matching udev 60/70/78/90
    sound rules (sound-alsa-control, 70-sound-uaccess, 78-sound-card*,
    90-alsa-restore); dev-setup static snd/seq and snd/timer; default
    /etc/asound.conf (PCH analog) via debian/vdev-asound-analog.conf
  * udev-compat.sh: emit E:DEVNAME, E:SUBSYSTEM, E:DEVPATH, E:MAJOR, E:MINOR in
    /run/udev data so elogind syncs session ACLs on snd/* (browser audio without
    apulse); normalize E:DEVNAME to /dev/ paths
  * uaccess.sh: on snd/* run elogind-uaccess-command and audio-acl.sh (vdev has
    no udev RUN for 73-seat-late.rules)
  * check-seat-udev.sh: verify sound uaccess records include E:DEVNAME=/dev/snd/*
  * example/test-alsa-actions.sh, example/test-browser-audio.sh; how-to-test.md
    and example/actions/README.md ALSA sections
  * Drop redundant 72-sound-acl.act (covered by 70-sound-uaccess + uaccess.sh)
  * New upstream version 1.4.4

 -- Aitor <aitor@genuen.org>  Sun, 14 Jun 2026 17:33:07 +0200

vdev (1.4.3-1+genuen6u1) unstable; urgency=medium

  * d/actions.1/uaccess.act: Add `input/event*` to the path regex and `uaccess.sh` 
    group mapping (aligns with udev `70-uaccess` / elogind session ACLs on evdev 
    nodes)
  * Phase-2 reload: run vdevd.2 coldplug from SysV subshell (not SIGHUP in vdevd.1);
    subshell then vdevd -k and exec long-running vdevd.conf. Start vdevd.1 in the
    background so OpenRC stop during phase 2 does not hang on a dying service PID
  * debian/init: vdevd_stop with log_end_msg 0 after vdevd -k (OpenRC halt/reboot)
  * New upstream version 1.4.3

 -- Aitor <aitor@genuen.org>  Sun, 31 May 2026 15:08:54 +0200

vdev (1.4.2-2+genuen6u1) unstable; urgency=medium

  * actions: if_exists=run on char, sysfs-char, dri, seat, tty, ttyN, uaccess;
    uaccess paths include tty[0-9]+ for session console ACL tagging.

 -- Aitor <aitor@genuen.org>  Sat, 30 May 2026 14:00:00 +0200

vdev (1.4.2-1+genuen6u1) unstable; urgency=medium

  * Phase-2 reload: remove fanotify login-triggered SIGHUP (sleep before vdevd.2);
    request reload via os-queue-tracking.sh when QUEUE_TRACKING_FLAG=2 on the
    vdevd.1 profile so phase 2 runs at boot, preserving elogind ACLs on tty nodes
  * Seat / seatd: actions.1/zzz-udev-compat.act no longer limits udev-compat to
    input only, so DRM nodes get seat tags and ID_SEAT in the udev-compat DB
    during phase-1 coldplug (seatd and libudev seat enumeration without
    xserver-xorg-legacy / xserver-xlibre-legacy SUID)
  * seat.sh / seat.act: set VDEV_SEAT=seat0 (E:ID_SEAT); tag fb* with seat and
    master-of-seat on fb0 or hwdb ID_TAG_MASTER_OF_SEAT=1 (71-seat.rules /
    60-seat.hwdb)
  * dev-setup.sh: symlink /run/udev to /dev/metadata/udev when missing after
    real-root boot
  * uaccess.act (actions.1 + example): add dri/renderD* to the uaccess path.
  * New helper check-seat-udev.sh: regression check for DRM/fb seat metadata
    and permissions after vdevd-1-coldplug.ready; how-to-test.md updated
  * Remove second early sysfs coldplug sweep (VDEV_EARLY_PASS_SKIP, early-pass
    manifest/index, os-early-manifest helper); rely on vdev_settle +
    vdev-settle-sync for input handoff after the mixed early vdevd.1 instance
  * vdevd/os: drop sysfs prefilter, netlink coexistence, and fanotify branches
    tied to VDEV_EARLY_PASS_SKIP; fanotify netlink yield uses cmdline only
  * vdevd/device.c: stop injecting VDEV_EARLY_PASS_SKIP / VDEV_EARLY_PASS_MANIFEST
    into helper exec environments
  * libvdev: build helpers/LINUX/common.c into libvdev.a (vdev-helpers-common.o);
    helpers link -lvdev only (no common.o under build/lib/vdev/)
  * helpers/LINUX: remove obsolete binaries (vdev_bind_input_devices,
    vdev_print_input_devices, vdev_reset_usb_devices, vdev_init_bottom,
    vdev_init_top, vdev_modprobe, vdev_modprobe_async) and
    vdev_modprobe_sysfs.inc
  * packaging: stop installing removed helper binaries and drop libevdev-dev
    from Build-Depends; helper Makefile no longer asks pkg-config for libevdev.
  * SysV settle/init: remove VDEV_SETTLE_STAMP and globals.settle-stamp; use
    vdevd.0/vdevd.1 coldplug stamps (QUEUE_TRACKING 1/2) for settle-sync and
    resume; worker waits early stamp plus VDEV_SETTLE_VDEVD_DELAY before retrigger
  * New upstream version 1.4.2

 -- Aitor <aitor@genuen.org>  Wed, 27 May 2026 22:00:00 +0200

vdev (1.4.1-9+genuen6u1) unstable; urgency=medium

  * vdev_settle: repurpose helper as a libinput seat0 monitor daemon with
    in-memory sglib tracking and shell-facing runtime state under /run/vdev.
    Add status files (vdev-settle.status, .seen, .pending), optional FIFO
    request/response endpoints (vdev-settle.ctl/.rsp), and signal handling for
    refresh/reload/stop
  * vdev_settle: store seen devices as "eventN<TAB>name", expose FIFO commands
    (status/list/list-pending/reload), make metadata optional, and keep
    vdev-settle.pid for orchestration
  * SysV settle sync (example + Debian template): run a detached worker that
    starts vdev_settle, retriggers input "add" uevents for /sys/class/input/event*
    nodes, records successful retriggers in /run/vdev/vdev-settle.retriggered
    and failures in /run/vdev/vdev-settle.trigger-failed, then touches settle
    stamp and SIGTERMs vdev_settle
  * SysV settle sync: fix race with long-running vdevd handoff by waiting for
    VDEV_SETTLE_STAMP and applying a short configurable delay
    (VDEV_SETTLE_VDEVD_DELAY, default 0.5s) before the initial retrigger pass
  * SysV init comments (example/debian): document that subshell touches
    VDEV_SETTLE_STAMP immediately before exec -H, clarifying settle-worker timing

 -- Aitor <aitor@genuen.org>  Wed, 27 May 2026 21:20:00 +0200

vdev (1.4.1-8+genuen6u1) unstable; urgency=medium

  * vdevd: parse vdevd.globals.json "profiles" (states back-compat); nest
    early modprobe/once/input configs; tower/desktop sysfs fallback {input,usb}
    for early coldplug only; input profile for second sysfs sweep
  * example/vdevd.globals.json: profiles layout with early.modprobe, .once,
    .input, and once.reload

 -- Aitor <aitor@genuen.org>  Thu, 15 May 2026 20:00:00 +0200

vdev (1.4.1-7+genuen6u1) unstable; urgency=medium

  * example/sysv-initscript.sh: comment the modprobe stamp wait, second synchronous
    vdevd.0 coldplug (using VDEV_CONFIG_DIR/VDEV_MODPROBE), early vdevd start, and
    background subshell (optional second early sweep with VDEV_EARLY_PASS_SKIP, then
    long-running -H handoff)
  * debian/vdev.vdev-modprobe.sh: modprobe boot-VGA KMS (i915 / nouveau; skip AMD)
    before the modprobe-phase vdevd

 -- Aitor <aitor@genuen.org>  Thu, 15 May 2026 12:00:00 +0200

vdev (1.4.1-6+genuen6u1) unstable; urgency=medium

  * vdevd/os/linux.c: Initialize fanotify only for the primary sysfs-early
    profile (VDEV_JSON_STATE disambiguation when needed) with VDEV_EARLY_PASS_SKIP
    unset; omit for second sweep, modprobe, initrd, long-running, etc
  * vdevd/os/linux.c, linux_events.inc: fanotify_init with FAN_REPORT_TID when
    available; yield NETLINK_KOBJECT_UEVENT only when the opener /proc argv is
    hotplug-only (-H) targeting globals long_running and environ is not second
    sweep (VDEV_EARLY_PASS_SKIP); warn and skip strict path if TID unsupported

 -- Aitor <aitor@genuen.org>  Tue, 13 May 2026 18:00:00 +0200

vdev (1.4.1-5+genuen6u1) unstable; urgency=medium

  * libvdev: remove netlink= INI and -N/--netlink; libudev-compat path is
    eventfs-only (system libudev retains netlink)
  * Drop VDEV_EVENTFS from helper env and daemonlet; udev-compat.sh always uses
    event-put (no nl_monitor)
  * Preseed dev-setup.sh with mountpoint + config only; eventfs mount when the
    serial queue path is not already FUSE-backed

 -- Aitor <aitor@genuen.org>  Mon, 12 May 2026 12:00:00 +0200

vdev (1.4.1-4+genuen6u1) unstable; urgency=medium

  * Helpers: VDEV_NETLINK renamed to VDEV_EVENTFS (default 1 = eventfs queues; 0 =
    netlink/eudev-compatible path). dev-setup preseed argv and udev-compat updated

 -- Aitor <aitor@genuen.org>  Sun, 11 May 2026 10:00:00 +0200

vdev (1.4.1-3+genuen6u1) unstable; urgency=medium

  * vdevd/os/linux.c: when VDEV_EARLY_PASS_SKIP is set, skip NETLINK_KOBJECT_UEVENT
    bind so the transient early vdevd coexists with the foreground instance

 -- Aitor <aitor@genuen.org>  Sat, 10 May 2026 12:30:00 +0200

vdev (1.4.1-2+genuen6u1) unstable; urgency=medium

  * vdevd/os/linux_sysfs.inc: when second early sweep skips every queued device
    (empty reg_q) but queue_tracking_flag is set, emit QUEUE_TRACKING using a
    stable sysfs uevent (mem/null then cpu0) so os-queue-tracking can stamp/SIGTERM.
  * vdevd/helpers/LINUX/os-queue-tracking.sh: fix dash tests for unset
    VDEV_EARLY_PASS_SKIP and VDEV_COLDPLUG_ONLY

 -- Aitor <aitor@genuen.org>  Sat, 10 May 2026 10:45:00 +0200

vdev (1.4.1-1+genuen6u1) unstable; urgency=medium

  * vdevd/os/linux_sysfs.inc: in early sysfs second sweep
    (VDEV_EARLY_PASS_SKIP=1), prefilter uevents in
    vdev_linux_sysfs_register_devices() before subsystem queueing so already
    indexed first-pass DEVPATHs are dropped deterministically
  * vdevd/os/linux_sysfs.inc: normalize skip-list comparisons to match entries
    with or without /sys prefix and align default early-pass index path with
    /dev/metadata/udev/early-pass.manifest
  * vdevd/device.c, vdevd/helpers/LINUX/os-early-manifest.sh: keep
    VDEV_EARLY_PASS_IDX and VDEV_EARLY_PASS_MANIFEST compatible across helper
    env propagation and manifest writing (including second-pass _1 output).
  * d/postrm: Cleanup Sysv scripts and rc*.d symlinks
  * New upstream version 1.4.1

 -- Aitor <aitor@genuen.org>  Sat, 09 May 2026 12:05:32 +0200

vdev (1.4.0-1+genuen6u1) unstable; urgency=medium

  * vdev_globals_json.c: strip // and slash-star comments outside JSON strings
    before extraction (vdev_globals_json_strip_comments); no external sed/jq from
    vdevd
  * docs: example/README.md (comments, reload vs scripts), example/actions/README.md,
    how-to-test.md Appendix C — align with globals layout and helper env
  * docs: JSON stamp fields are SysV/helper-only; vdevd keys off INI profiles
    (config basenames from JSON, queue_tracking_flag in vdevd.*.conf)
  * vdevd/device.c: inject VDEV_GLOBALS_JSON and VDEV_JSON_STATE into synthesized
    helper environ (needed because async subprocess uses clearenv+exec)
  * os-queue-tracking.sh + vdevd.globals.json: jq resolves stamp from
    states.* matching VDEV_CONFIG_FILE against .config or .reload.config, and
    stamp directory from globals.stamp_dir; reload is a JSON object
    { config, stamp }; QUEUE_TRACKING_FLAG |1|/|2| touch, |3| SIGTERM
  * Debian: drop obsolete debian/vdev.vdev-x11-sync.sh (settle-sync is the sole
    template); postinst chmod/update-rc loop and postrm target
    vdev-settle-sync.sh; on configure remove legacy /etc/init.d/vdev-x11-sync.sh
    after update-rc.d remove
  * SysV (debian/init, modprobe, settle-sync, example + build copies): read
    globals.stamp_dir into VDEV_COLDPLUG_STAMP_DIR; settle stamp basename from
    globals["vdev-settle-ready"] with fallback to legacy .stamps; compose
    VDEV_SETTLE_STAMP under that directory
  * example/actions/README.md: document queue-tracking jq rules and globals layout.
  * vdevd: implement per-state JSON reload-file support. states.<state>.reload
    now selects a full config file to load on SIGHUP (for example vdevd.2.conf),
    replacing the temporary field-overlay approach
  * globals JSON (root, debian/config, example): keep the state-centric layout
    and point phase-2 behavior to states.early.reload = "vdevd.2.conf"
  * debian/config: restore vdevd.2.conf as the full reload profile selected
    from JSON
  * docs: add example/README.md describing the reload model, startup rationale,
    and coexistence window (TRACKING_FLAG handoff + long-running hotplug_only),
    including ASCII and Mermaid startup diagrams
  * reload control-plane split: linux_events emits SIGHUP when the active state
    defines reload; main.c owns the safe reload sequence (mutex-guarded config
    and action swap, plus stop/rebuild/start lifecycle) loading the configured
    reload file
  * queue tracking helper: os-queue-tracking.sh now resolves per-state stamps
    and reload-end behavior from VDEV_GLOBALS_JSON + VDEV_JSON_STATE
    (states.<state>.stamp / states.<state>.reload), using VDEV_CONFIG_FILE
    basename to distinguish base-vs-reload execution
  * init scripts (debian/example/build): export VDEV_GLOBALS_JSON so shell
    helpers can consume the same JSON source-of-truth used by sysv parsing.
  * linux sysfs queue tracking: unify end-of-queue marker emission to flag=1;
    helper keeps legacy 2/3 aliases for compatibility while behavior is now
    state/JSON-driven
  * packaging/scripts touch-ups: keep helper install name as vdev_settle and
    align SysV references with settle/settle-sync naming
  * debian/postinst: add migration cleanup for obsolete
    /etc/init.d/vdev-x11vdev-sync.sh residues from pre-rename builds.
  * New upstream version 1.4.0

 -- Aitor <aitor_czr@genuen.org>  Sun, 03 May 2026 04:55:52 +0200

vdev (1.3.99-15+genuen6u1) unstable; urgency=medium

  * debian/config/vdevd.globals.json, example/vdevd.globals.json: changed
    json layout — coldplug marker filenames under states.modprobe.stamp and
    states.early.stamp; top-level stamps holds x11-sync-ready only
  * debian/init, debian/vdev.vdev-modprobe.sh, example/sysv-initscript.sh,
    example/sysv-modprobe.sh, build/etc/init.d/vdev,
    build/etc/init.d/vdev-modprobe.sh: resolve ready-marker basenames from
    per-state .stamp when present, else fall back to
    stamps.modprobe-coldplug-ready / stamps.early-coldplug-ready for older JSON
  * New upstream version 1.3.99

 -- Aitor <aitor@genuen.org>  Thu, 30 Apr 2026 01:56:17 +0200

vdev (1.3.98-14+genuen6u1) unstable; urgency=medium

  * vdevd/os/linux_sysfs.inc: fix discarded-qualifier warnings by using
    mutable temporary pointers in vdev_linux_sysfs_fullpath() and
    vdev_linux_uevent_append() where data is freed/reallocated
  * vdevd/helpers/LINUX/stat_scsi.c: fix build break ("else without a
    previous if") in scsi_dump_sense() by replacing the fragile if/else
    logging branch with explicit braced conditionals
  * vdevd/Makefile: restore helper artifact generation during regular
    builds by making the helpers target call helpers/LINUX all, so
    make build repopulates build/lib/vdev/ binaries and scripts
  * debian/install: explicitly install debian/config/vdevd.globals.json
    into /etc/vdev
  * debian/initramfs-tools/hooks/vdev: copy /etc/vdev/vdevd.globals.json
    into initramfs when present so initrd includes JSON-driven settings
  * vdevd/helpers/LINUX: align sysfs mountpoint fallback handling in
    vdev_bind_input_devices, vdev_modprobe, and vdev_wait so failed
    get_sysfs_path() resolution falls back to /sys instead of aborting
  * stat helpers (stat_path, stat_net): add sysfs autodetection via
    get_sysfs_path() with /sys fallback, replacing hardcoded "/sys" uses
    in subsystem/path-resolution calls
  * vdevd/helpers/LINUX/hwdb.sh: load sysfs mountpoint from
    VDEV_GLOBALS_JSON (.globals.sysfs, fallback .sysfs) and default to /sys
    when unset
  * d/control: depend on libudev-compat (>= 3.2.16-1~)
  * New upstream version 1.3.98

 -- Aitor <aitor@genuen.org>  Wed, 29 Apr 2026 21:50:18 +0200

vdev (1.3.97-13+genuen6u1) unstable; urgency=medium

  * vdevd/helpers/LINUX: make input metadata filename configurable via CLI
    for vdev_print_input_devices and vdev_wait (fallback:
    /dev/metadata/udev/input)
  * vdev_wait: add --quiet/-q option to suppress printing detected input
    device names (previously unconditional printf output)
  * SysV init scripts (debian/init, example/sysv-initscript.sh): pass
    VDEV_INPUT_METADATA_FILE explicitly to both helpers and invoke
    vdev_wait in quiet mode
  * globals JSON: add stamps.* names for SysV marker files
    (modprobe-coldplug-ready, early-coldplug-ready, x11-sync-ready)
  * SysV init scripts (debian/init, example/sysv-initscript.sh): consume
    stamps.* with defaults, removing hardcoded *.ready filenames
  * SysV modprobe scripts (debian/vdev.vdev-modprobe.sh,
    example/sysv-modprobe.sh): consume stamps.modprobe-coldplug-ready for
    cleanup of phase-0 ready marker
  * SysV x11-sync scripts (debian/vdev.vdev-x11-sync.sh,
    example/sysv-vdev-x11-sync.sh): derive x11 sync stamp name from
    stamps.x11-sync-ready
  * SysV scripts (debian/init, example/sysv-initscript.sh): consume nested
    vdevd.globals.json keys (.globals.*, .states.*) with backward-compatible
    fallback to legacy flat keys
  * SysV modprobe scripts (debian/vdev.vdev-modprobe.sh,
    example/sysv-modprobe.sh): read config-dir and states.modprobe from
    vdevd.globals.json via jq instead of hard-coding /etc/vdev/vdevd.0.conf.
  * debian/control: add jq to vdev runtime Depends
  * New upstream version 1.3.97

 -- Aitor <aitor@genuen.org>  Wed, 29 Apr 2026 14:44:00 +0200

vdev (1.3.96-12+genuen6u1) unstable; urgency=medium

  * d/control: depend on libfskit (>= 1.0.4~)
  * fs/vdevfs: fix critical mknod path by passing mknodat(2) arguments in the
    correct order (mode, dev)
  * fs/vdevfs: fix ACL predicate execution by actually passing
    proc_predicate_cmd to vdev_subprocess (instead of NULL) and failing cleanly
    on OOM
  * fs/vdevfs: fix ACL sanity checks to validate setuid/setgid target values
    (not uid/gid match fields)
  * fs/vdevfs: return real status from vdev_get_mountpoint and fix mknod route
    registration error check (rh vs rc)
  * fs/vdevfs: fix group lookup buffer ownership in vdev_get_group
    (eliminate success-path leak)
  * fs/vdevfs: harden fd handle packing/unpacking by using sizeof(fd) instead
    of a fixed 4-byte copy
  * fs/vdevfs: fix readdir ACL filtering to evaluate each child entry path/name
    correctly
  * fs/docs: add fs/README.md with practical vdevfs usage and ACL example, plus
    eventfs vs vdevfs scope clarification
  * vdevd/os: split large linux.c into focused C include modules by
    responsibility:
    - linux_sysfs.inc      (sysfs discovery and coldplug registration)
    - linux_events.inc     (signal/fanotify/netlink event loop path)
    - linux_bootstrap.inc  (devtmpfs check + os init/shutdown glue)
    preserving behavior while improving maintainability
  * vdevd/os: add editor mode hint header to all *.inc modules
    ("-*- mode: c; -*-") so they are consistently highlighted as C code
  * New upstream version 1.3.96

 -- Aitor <aitor@genuen.org>  Wed, 29 Apr 2026 11:16:00 +0200

vdev (1.3.95-11+genuen6u1) unstable; urgency=medium

  * vdevd/helpers/LINUX: make C helpers consume sysfs mountpoint from CLI where
    needed: vdev_root_sys_block now accepts [SYSFS_MOUNTPOINT], and
    vdev_print_input_devices accepts [SYSFS_MOUNTPOINT] [SETTLE_MS] while
    keeping backward compatibility with the old settle-only form.
  * init wrappers (debian/init, example/sysv-initscript.sh): parse "sysfs" from
    vdevd.globals.json via jq and pass it to vdev_print_input_devices.
  * udisks metadata action: drop VAR_UDISKS_SYSFS from udisks2.act (example +
    debian copy); udisks2.sh now invokes vdev_root_sys_block with an explicit
    sysfs argument.
  * docs: update example/actions/README.md to remove VAR_UDISKS_SYSFS guidance
    and document VDEV_GLOBALS_JSON among helper-facing environment variables.
  * vdevd: introduce struct vdev_globals in vdev_state and move profile/state
    naming into runtime globals (sysfs/config_dir/initrd/early/early-coldplug/
    long-running), replacing key hardcoded checks in main.c and os/linux.c.
  * vdevd: add optional /etc/vdev/vdevd.globals.json loader (fallback to
    built-in defaults) and install config JSON via debian/install.
  * os/linux coldplug: consume globals-backed subsystem queues instead of local
    hardcoded arrays for vdevd.0, vdevd.1, and vdevd.initrd phases.
  * config/docs: add debian/config/vdevd.globals.json and example/vdevd.globals.json;
    document JSON usage and quick verification in how-to-test.md and reference it
    from example/actions/README.md.
  * vdevd/helpers/LINUX: add keyboard-default.sh and action kbd-default.act
    (example/actions + debian/config/actions.1) to apply /etc/default/keyboard
    on event=add/path=^kbd$ (udev KERNEL=="kbd" equivalent in vdev via VDEV_PATH).
  * example/actions/README.md: expand action guide (field semantics, path regex vs
    OS_DEVPATH, KERNEL vs path mapping, queue-tracking notes, style cleanups) and
    document kbd-default/keyboard-default behavior.
  * example/actions + debian/config/actions.1: set if_exists=run on udisks2.act
    and zzz-udev-compat.act; README now cites sound-alsa-control.act as existing
    if_exists user and explains the adopted policy.
  * example/actions, debian/config/actions.1: rename 000-udisks2.act to udisks2.act
    (lexicographic order still before zzz-udev-compat); comments and VAR_ lines on
    udisks2, seat, uaccess.
  * vdevd/helpers/LINUX/udisks2.sh, subr-event.sh: optional VAR_UDISKS_PROPS_BASENAME
    (default udisks-props); record basename in $VDEV_METADATA/.vdev-udisks-props-basename
    so event_generate_text cats the same file without a second hard-coded name.
  * example/actions/README.md: document OS_* vs VAR_* (incl. empty OS_ values), path=
    ERE vs OS_DEVPATH, action order vs logs, udisks2 flow with zzz / zzzz,
    zzzz-os-queue-tracking.act and negative QUEUE_TRACKING_FLAG recovery; See also
    os-queue-tracking.sh.
  * New upstream version 1.3.95

 -- Aitor <aitor@genuen.org>  Tue, 28 Apr 2026 14:58:00 +0200

vdev (1.3.94-10+genuen6u1) unstable; urgency=medium

  * third-party/uni-json/examples: add comprehensive JSON manipulation examples:
    - simple/ directory with basic JSON parsing example (simple.c, c_bindings.c, Makefile)
    - nested/ directory with advanced nested JSON manipulation (nested_example.c,
      nested_bindings.c, Makefile)
    - examples demonstrate parsing, querying, creation, and modification of JSON
      structures with proper memory management, error handling, and pretty-printing
    - comprehensive documentation with usage examples and Vdev integration guidelines
  * vdevd: add -j/--kill-peers-exit — run vdev_kill_peer_processes like -k then
    exit before preseed (for init scripts).
  * SysV vdev (debian/init, example/sysv-initscript.sh): vdevd_stop calls
    vdevd_kill_peers_for_stop using vdevd -j so stop matches start -k peer sweep.
  * third-party/dmidecode-builtin: vendor dmidecode util.c, util.h, types.h,
    config.h under vendor/ so the helper builds without a sibling dmidecode-3.6
    tree; debian/copyright comment and buildconf note updated.
  * Block / udisks2: move UDISKS_* and VDEV_FS_* generation from subr-event.sh into
    lib/vdev/udisks2.sh, invoked by new 000-udisks2.act (type=block, event=any) so it
    runs before zzz-udev-compat; event_generate_text cats $VDEV_METADATA/udisks-props
    or emits UDISKS_IGNORE=1 if missing.
  * example/actions and debian/config/actions.1: ship 000-udisks2.act.
  * New upstream version 1.3.94

 -- Aitor <aitor@genuen.org>  Mon, 27 Apr 2026 12:55:00 +0200

vdev (1.3.93-10+genuen6u1) unstable; urgency=medium

  * third-party/dmidecode-builtin: minimal sysfs-only helper
    dmidecode-chassis-type-builtin (GPL-2+, util.c from upstream dmidecode tree);
    build via vdevd/helpers and install to lib/vdev; debian/copyright stanza.
  * libvdev: dmi_chassis_builtin.h, vdev_dmi_chassis_type_is_tower_or_desktop()
    (builtin first, then dmidecode|grep|cut fallback); vdevd/os/linux.c and
    helpers/LINUX/vdev_modprobe.c call it instead of duplicating popen logic.
  * debian/control: drop Depends on dmidecode (superseded by builtin helper).
  * debian/install: ship lib/vdev/dmidecode-chassis-type-builtin.
  * libvdev misc: add vdev_fanotify_path_is_login_or_xorg() (basename + dirname
    checks for login/Xorg executables) for fanotify skip logic.
  * Remove --sync argument from config.*, no longer required
  * New upstream version 1.3.93

 -- Aitor <aitor@genuen.org>  Sun, 26 Apr 2026 23:36:52 +0200

vdev (1.3.92-9+genuen6u1) unstable; urgency=medium

  * vdevd/os/linux.c and helpers/LINUX/vdev_modprobe.c: use the helper so login
    session and modprobe fanotify paths stay aligned; comment in modprobe links
    to linux.c.
  * vdevd/main.c: clarify when vdev_daemonize vs vdev_detach_session is used
    (pipe parent vs coldplug_only).
  * SysV vdev (debian/init, example/sysv-initscript.sh, build/etc/init.d/vdev):
    Start path: VDEV_START_CONFIG inside vdevd_start — vdevd.1.conf when stamp 0
    exists and stamp 1 is absent (first start / phase 1 not done); vdevd.conf
    when stamp 1 exists (restart without repeating vdevd.1 coldplug) or when
    /dev/block and no stamp 0; re-eval INI when it differs from global VDEV_CONFIG.
    Global VDEV_CONFIG still follows stamp 0 for stop/status pid hints; add
    vdevd_find_running_pid for stop and status.
  * SysV vdev (debian/init, example/sysv-initscript.sh, build/etc/init.d/vdev):
    Choose vdevd.1.conf vs vdevd.conf using vdevd-0-coldplug.ready before falling
    back to /dev/block (stamp means phased vdevd.0 completed; block alone can be
    initramfs). Export VDEV_COLDPLUG_STAMP_DIR before this check.
  * SysV vdev (debian/init, example/sysv-initscript.sh, build/etc/init.d/vdev):
    vdevd_stop resolves the running vdevd PID across vdevd.pid and vdevd_1.pid
    (phased boot can still be on vdevd.2 while /dev/block makes the script load
    vdevd.conf); verify /proc/PID/comm is vdevd before signalling. LSB add
    Default-Stop 0 6 and Required-Stop $local_fs for clean halt/reboot.
  * New upstream version 1.3.92

 -- Aitor <aitor@genuen.org>  Sat, 25 Apr 2026 09:21:09 +0200

vdev (1.3.91-8+genuen6u1) unstable; urgency=medium

  * SysV vdev-x11-sync (debian/vdev.vdev-x11-sync.sh, example, build): LSB use
    Should-Start vdev (not Required-Start) with Required-Start $local_fs only,
    so insserv/update-rc.d do not FATAL when vdev is not yet registered; start
    still waits on x11-sync.ready.
  * debian/postinst: Run eudev rc cleanup before update-rc.d vdev and
    vdev-x11-sync so insserv does not see duplicate udev providers
  * vdevd (vdev.c): On reload, inherit mountpoint from the previous config when
    the new INI omits it; keep vdev->mountpoint in sync; error FIFO creation uses
    config mountpoint with fallback to vdev->mountpoint.
  * debian/config/vdevd.2.conf: coldplug_only=1 and mountpoint=/dev.
  * vdev_print_input_devices: optional SETTLE_MS argument for
    wait_for_input_settle (default 250 ms; was 1000 ms). Add usage() and -h /
    --help. Max wait for /dev/input settle remains 10 s.
  * SysV vdev (debian/init, example/sysv-initscript.sh, build/etc/init.d/vdev):
    vdevd_start waits for vdevd-0-coldplug.ready (vdevd.0 / os-queue-tracking
    stamp) after log and pid directories, then log_daemon_msg "Starting the
    system device event dispatcher".
  * Coldplug queue tracking (device.c, action.c/h, helpers): On ADD discard paths
    with positive QUEUE_TRACKING_FLAG, negate the flag (discard marker) and run
    actions without UNKNOWN paths; skip mknod/metadata when recovering.
    vdev_action_match ignores non-queue-tracking actions when the flag is
    negative; new .act field queue_tracking_handler=1 (zzzz-os-queue-tracking.act).
    os-queue-tracking.sh treats -1/-2/-3 like 1/2/3.
  * vdev_reload: second argument default_config_path (main.c passes
    /etc/vdev/vdevd.2.conf on SIGHUP phase transition).
  * New upstream version 1.3.91

 -- Aitor <aitor@genuen.org>  Sat, 25 Apr 2026 02:36:20 +0200

vdev (1.3.90-7+genuen6u1) unstable; urgency=medium

  * Linux (os/linux.c): Replace static reloaded with vdev_linux_is_reloaded()
    (vdevd.2.conf from current config_path). Drop responsive_to_netlink_events;
    stop kobject uevents via vdev_linux_stop_netlink (close + clear pollfd).
    shutdown_fanotify clears the fanotify pollfd; shutdown closes netlink.
    Init: under FIXME, set os_ctx coldplug_only when the reloaded profile is
    active (phase-2 coldplug behaviour; provisional).
  * postinst: minor eudev coexistence tweaks (e.g. chmod +x on existing
    /etc/init.d/eudev before update-rc.d).
  * postinst: stop removing /etc/init.d/eudev (allows later eudev install).
  * SysV LSB: vdev Provides "vdev udev"; vdev-x11-sync Required-Start vdev
    (debian/init, example scripts, debian/vdev.vdev-x11-sync.sh, build copies).
  * SysV vdev init: guard stop/status when pidfile is absent (OpenRC/sysv after
    vdevd removes it on exit); LSB-style status exits 0/1/3.
  * SysV vdev subshell: drop lslocks fallback; wait only for vdevd-1-coldplug.ready
    (example/sysv-initscript.sh, debian/init, build/etc/init.d/vdev).
  * Add debian/vdev.vdev-x11-sync.sh; dh_installinit --init-script=vdev-x11-sync.sh;
    postinst/postrm/not-installed paths; example/conf.mk + Makefile use the same
    installed name.
  * New upstream version 1.3.90

 -- Aitor <aitor@genuen.org>  Fri, 24 Apr 2026 12:00:00 +0200

vdev (1.3.89-6+genuen6u1) unstable; urgency=medium

  * vdevd: remove pidfile fcntl write-lock in vdev_start() for vdevd.0.conf /
    vdevd.1.conf and lock_fd / unlock in vdev_signal_coldplug_finished().
  * vdev_modprobe: drop pidfile create/remove (/run/vdev_modprobe.pid); coldplug
    coordination uses /run/vdev stamps and init ordering instead.
  * Rename synthetic uevent field to QUEUE_TRACKING_FLAG (helpers see
    VDEV_OS_QUEUE_TRACKING_FLAG); update os-queue-tracking.sh and daemonlet.
  * Replace coldplug-stamp with os-queue-tracking.sh + zzzz-os-queue-tracking.act
    (daemonlet=false, event=any) in actions.0, actions.1, and example/actions;
    handles TRACKING_FLAG 1/2/3 (stamps + SIGTERM). Drop tracking-flag blocks from
    modprobe.sh and udev-compat.sh.
  * actions.1: add zzz-coldplug-stamp.act + coldplug-stamp.sh so TRACKING_FLAG=2
    creates vdevd-1-coldplug.ready even when zzz-udev-compat.act is input-only;
    remove duplicate stamp logic from udev-compat.sh (comment points to the new
    helper).
  * Coldplug stamps: write vdevd-0-coldplug.ready / vdevd-1-coldplug.ready under
    /run/vdev (VDEV_COLDPLUG_STAMP_DIR, same convention as x11-sync.ready) from
    modprobe.sh and udev-compat.sh instead of mkdir under …/metadata/udev/.
  * SysV vdev / vdev-modprobe init: wait, rm stale, and export
    VDEV_COLDPLUG_STAMP_DIR accordingly; helpers use "${VDEV_DAEMONLET:-0}" for
    dash arithmetic safety.
  * New upstream version 1.3.89

 -- Aitor <aitor@genuen.org>  Thu, 23 Apr 2026 18:07:15 +0200

vdev (1.3.88-5+genuen6u1) unstable; urgency=medium

  * Linux (os/linux.c): TRACKING_FLAG values — last sysfs subsystem-queue uevent
    uses 1 for vdevd.0.conf and 2 for vdevd.1.conf
    (vdev_linux_sysfs_register_devices_subsystem_queue(..., tracking_flag_last));
    last vdevd.2.conf coldplug uevent uses 3 (replacing the previous 2-only scheme).
  * Helpers: modprobe.sh touches vdevd_0_coldplug_done when
    VDEV_OS_TRACKING_FLAG=1; udev-compat.sh touches vdevd_1_coldplug_done for
    flag 2 and kill -SIGTERM $PPID for flag 3; sync build/lib/vdev copies.
  * vdev_modprobe.c: drop pidfile fcntl write-lock and sleep(10) before the
    netlink phase.
  * SysV vdev init: subshell waits for metadata/udev/vdevd_1_coldplug_done
    (with timeout and lslocks idle fallback); remove stale vdevd_1_coldplug_done
    when starting vdevd.1.conf (example/sysv-initscript.sh, debian/init,
    build/etc/init.d/vdev).
  * SysV vdev-modprobe init: default VDEV_MOUNTPOINT, rm vdevd_0_coldplug_done
    before start, pass $VDEV_MOUNTPOINT to vdevd (example/sysv-modprobe.sh,
    debian/vdev.vdev-modprobe.sh, build/etc/init.d/vdev-modprobe.sh).
  * New upstream version 1.3.88

 -- Aitor <aitor@genuen.org>  Thu, 23 Apr 2026 15:08:05 +0200

vdev (1.3.87-4+genuen6u1) unstable; urgency=medium

  * vdevd: vdev_start() — copy config->coldplug_only into vdev->coldplug_only
    before vdev_os_context_init on every backend start so that after
    vdev_reload (e.g. SIGHUP transition to vdevd.2.conf) the OS layer sees the
    value from the current INI instead of the stale flag set at vdev_init.
  * Linux (os/linux.c): drop the workaround that forced os_ctx->coldplug_only
    = true when the config basename was vdevd.2.conf; keep setting reloaded
    only, so vdev_os_next_device still avoids exiting when the initial queue is
    drained in phase 2 while coldplug_only remains true in config.
  * New upstream version 1.3.87

 -- Aitor <aitor@genuen.org>  Thu, 23 Apr 2026 11:10:20 +0200

vdev (1.3.86-3+genuen6u1) unstable; urgency=medium

  * Debian: postinst — before update-rc.d for vdev/vdev-x11-sync, handle
    /etc/init.d/eudev: if the eudev package is not installed, remove the
    orphaned init script (and rc.d links) so only vdev provides the udev
    facility; avoids insserv FATAL when registering vdev-x11-sync. If eudev is
    still installed, keep disabling it from runlevels without deleting the file.
  * Debian: debian/rules — build hwdb.squashfs for packaging with explicit
    `make build` + `make -C hwdb all-full`; assert build artifact exists; remove
    erroneous `export DESTDIR=/usr`; install via `make install
    DESTDIR=$(CURDIR)/debian/tmp PREFIX=`. Top Makefile and vdevd pass
    DESTDIR/PREFIX into recursive `make -C` so files land under debian/tmp (GNU
    Make does not forward DESTDIR to sub-makes by default).
  * New upstream version 1.3.86

 -- Aitor <aitor@genuen.org>  Thu, 23 Apr 2026 09:30:45 +0200

vdev (1.3.85-2+genuen6u1) unstable; urgency=medium

  * Linux: refactor vdevd.0 / vdevd.1 coldplug into
    vdev_linux_sysfs_register_devices_subsystem_queue() with
    sysfs_reg_tower_skip_v0 / _v1; last queued uevent keeps TRACKING_FLAG for
    daemonlets (same idea as vdevd.2.conf).
  * New upstream version 1.3.85

 -- Aitor <aitor@genuen.org>  Thu, 23 Apr 2026 07:25:00 +0200

vdev (1.3.84-2+genuen6u1) unstable; urgency=medium

  * Linux: vdev_linux_sysfs_register_devices — free each uevent path before
    sglib_cstr_vector_set(..., NULL, j); sglib_vector_set does not release the old
    char* (same contract as vdev_cstr_vector_free_all).
  * New upstream version 1.3.84

 -- Aitor <aitor@genuen.org>  Wed, 22 Apr 2026 18:00:00 +0200

vdev (1.3.83-2+genuen6u1) unstable; urgency=medium

  * Build: default target is `build` (top-level Makefile) — libvdev, vdevd, fs, example —
    without generating hwdb.squashfs. Full tree including hwdb uses `make all` (copy
    hwdb/hwdb.squashfs if present, else `hwdb` all-full regeneration). hwdb/Makefile gains
    `all-full` and optional install when the squashfs is missing; d/rules uses
    override_dh_auto_build so Debian packages still run `make all`.
  * New upstream version 1.3.83

 -- Aitor <aitor@genuen.org>  Wed, 22 Apr 2026 14:00:00 +0200

vdev (1.3.82-2+genuen6u1) unstable; urgency=medium

  * example/Makefile: build SysV init scripts into $(BUILD)/etc/init.d — sysv-initscript.sh,
    sysv-modprobe.sh, and sysv-vdev-x11-sync.sh — as for example/conf.mk; extend clean;
    fix initramfs prerequisite and remove stale VDEV_INSTALL_SCRIPT rules.
  * New upstream version 1.3.82

 -- Aitor <aitor@genuen.org>  Tue, 21 Apr 2026 13:00:00 +0200

vdev (1.3.81-2+genuen6u1) unstable; urgency=medium

  * Linux: deliver SIGTERM/SIGINT/SIGQUIT/SIGALRM/SIGHUP via signalfd only — block the
    set with pthread_sigmask before any pthread_create (vdev_linux_signals_block_for_signalfd),
    remove the async sig_handler and static linux_signal; drain signalfd after poll and
    map signalfd_siginfo to the previous return behaviour (including initrd “emergency exit”
    on SIGTERM when using vdevd.initrd.conf).
  * daemonlet / async helpers: reset the signal mask in the child with sigprocmask before
    exec so forked processes do not inherit vdevd’s blocked mask (otherwise SIGINT to
    daemonlets could be ignored and shutdown could hang).
  * SysV init script: vdevd_stop waits for the pidfile PID to exit (up to ~15s) after
    SIGTERM, then SIGKILL if still running; avoid using kill(1) exit status as success of
    shutdown.
  * New upstream version 1.3.81

 -- Aitor <aitor@genuen.org>  Tue, 21 Apr 2026 12:00:00 +0200

vdev (1.3.80-1+genuen6u1) unstable; urgency=medium

  * DRM: add helper dri.sh so dri.act creates /dev/dri/by-path/<ID_PATH>-{card,control,render}
    symlinks via stat_path (equivalent to eudev 60-drm.rules), then applies the
    existing permissions.sh behaviour.
  * New upstream version 1.3.80

 -- Aitor <aitor@genuen.org>  Mon, 20 Apr 2026 12:00:00 +0200

vdev (1.3.79-1+genuen6u1) unstable; urgency=medium

  * Seat: unify former nouveau.act/nouveau.sh and input-seat.act/input-seat.sh
    into seat.act and seat.sh (DRM card/render + evdev); remove the misleading
    "nouveau" name for generic KMS behaviour.
  * Seat: use udev metadata tag "seat" instead of "seat0" so elogind/logind
    seat tagging matches common udev rules (e.g. 71-seat.rules).

 -- Aitor <aitor@genuen.org>  Sun, 19 Apr 2026 12:00:00 +0200

vdev (1.3.78-1+genuen6u1) unstable; urgency=medium

  * subr-event.sh: for SUBSYSTEM=block, call vdev_block_info only when
    $VDEV_MOUNTPOINT/$VDEV_OS_DEVNAME exists. On remove the /dev node is often
    gone already; skipping blkid avoids repeated "Failed to open" diagnostics
    and keeps uevent text fed to event-put starting at the ACTION@DEVPATH line.
  * vdev_block_info: print open failures with newline and strerror(errno); use
    printf("%s", ...) for size and label (never use dynamic text as the format
    string).

 -- Aitor <aitor@genuen.org>  Sat, 18 Apr 2026 12:00:00 +0200

vdev (1.3.77-1+genuen6u1) unstable; urgency=medium

  * event-put: fix file_copy() — do not pass uevent bytes to printf() as a
    format string (undefined behaviour; could SIGSEGV when payload
    contains '%'). Check fopen() results; use fread/fwrite only. Prevents
    vdev_subprocess('udev-compat.sh') reporting exit status 139 when the
    shell propagated event-put's signal death.

 -- Aitor <aitor@genuen.org>  Thu, 16 Apr 2026 20:15:00 +0200

vdev (1.3.76-1+genuen6u1) unstable; urgency=medium

  * Add helper scripts and actions to support display managers 
    such as lightdm, sddm, etc.
  * Ensure proper group assignments (video, render, input) and 
    seat0 metadata tagging during device discovery
  * New upstream version 1.3.76

 -- Aitor <aitor@genuen.org>  Wed, 08 Apr 2026 00:35:15 +0200

vdev (1.3.75-1+genuen6u1) unstable; urgency=medium

  * Modified d/init according to the changes applied to 
    example/sysv-initscript.sh
  * Remove superfluous one-shot service vdev-settle.sh
  * New upstream version 1.3.75

 -- Aitor <aitor@genuen.org>  Tue, 07 Apr 2026 18:54:17 +0200

vdev (1.3.74-3+genuen6u1) unstable; urgency=medium

  * Remove superfluous line in the postintall script

 -- Aitor <aitor@genuen.org>  Thu, 02 Apr 2026 01:52:31 +0200

vdev (1.3.74-2+genuen6u1) unstable; urgency=medium

  * Replace the hook that loads some specific modules with a 
    file installed to /usr/share/initramfs-tools/modules.d

 -- Aitor <aitor@genuen.org>  Mon, 30 Mar 2026 23:39:06 +0200

vdev (1.3.74-1+genuen6u1) unstable; urgency=medium

  * Minor changes in the helpers
  * New upstream version 1.3.74

 -- Aitor <aitor@genuen.org>  Sat, 28 Mar 2026 17:16:53 +0100

vdev (1.3.73-1+genuen6u1) unstable; urgency=medium

  * consider other options such as NVMe, software RAID,
    and ZFS or datasets, in addition to standard drives
    (SATA/USB) in the helper vdev_root_sys_block
  * New upstream version 1.3.73

 -- Aitor <aitor@genuen.org>  Wed, 25 Mar 2026 00:34:46 +0100

vdev (1.3.72-1+genuen6u1) unstable; urgency=medium

  * Fix *** Buffer Overflow *** during the initrd phase of 
    live sessions
  * Fix some issues in Qemu
  * New upstream version 1.3.72

 -- Aitor <aitor@genuen.org>  Tue, 17 Mar 2026 23:32:44 +0100

vdev (1.3.71-1+genuen6u1) unstable; urgency=medium

  * Include __VA_OPT__ in the definitions of vdev_error, 
    vdev_warn, ...
  * New upstream version 1.3.71

 -- Aitor <aitor@genuen.org>  Tue, 10 Mar 2026 00:00:09 +0100

vdev (1.3.70-1+genuen6u1) unstable; urgency=medium

  * Fix compiler warnings
  * New upstream version 1.3.70

 -- Aitor <aitor@genuen.org>  Sat, 07 Mar 2026 01:25:10 +0100

vdev (1.3.69-1+genuen6u1) unstable; urgency=medium

  * switch to -std=gnu11 or gnu23 to enable __VA_OPT__ and 
    modern extensions
  * Add -D_FORTIFY_SOURCE=2 build flag for runtime overflow 
    detection
  * Add other build flags like -Wl,-z,relro to harden the binary 
    against memory exploits (Hardening)
  * Improve vdev_wait to ensure that all input devices are 
    successfully detected early in the boot
  * New upstream version 1.3.69

 -- Aitor <aitor@genuen.org>  Wed, 04 Mar 2026 22:41:45 +0100

vdev (1.3.68-1+genuen6u1) unstable; urgency=medium

  * Remove the shared library libvdev for security reasons and
    instead link the helper programs against a static library
  * Update hardware database
  * New upstream version 1.3.68

 -- Aitor <aitor@genuen.org>  Mon, 29 Dec 2025 23:07:17 +0100

vdev (1.3.67-1+5gnuinos1) unstable; urgency=medium

  * Request TERM signal in daemonlets if parent exits
  * New upstream version 1.3.67

 -- Aitor <aitor_czr@gnuinos.org>  Thu, 16 Oct 2025 23:19:29 +0200

vdev (1.3.66-1+5gnuinos1) unstable; urgency=medium

  * Add missing sysfs mountpoint prefix to $_ROOTSYSBLOCK variable
    in the helper subr-event.sh
  * New upstream version 1.3.66

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 12 Oct 2025 20:38:59 +0200

vdev (1.3.65-1+5gnuinos3) unstable; urgency=medium

  * Add --sysinit parameter to the vgchange command in forcelvm as
    suggested in its manpages when it's being invoked from early
    system initialisation scripts (e.g. rc.sysinit or an initrd),
    before writable filesystems are available

 -- Aitor <aitor_czr@gnuinos.org>  Wed, 08 Oct 2025 16:35:31 +0200

vdev (1.3.65-1+5gnuinos2) unstable; urgency=medium

  * Run initramfs-tools/scripts/local-block/forcelvm only if lvm2
    is present in the initial ram disk

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 05 Oct 2025 20:02:41 +0200

vdev (1.3.65-1+5gnuinos1) unstable; urgency=medium

  * Added dri.act to actions.1
  * Added drm susbsystem to the set of subsystems taken into account
    in both vdev_modprobe and vdevd.1.conf
  * New upstream version 1.3.65

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 04 Oct 2025 00:14:42 +0200

vdev (1.3.64-1+5gnuinos4) unstable; urgency=medium

  * Add missing quotes in expresions like [ "$foo" -eq "1" ] existent
    in disk.sh that caused warnings related to "Illegal numbers" being
    parsed in the daemonlet
  * New upstream version 1.3.64

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 07 Sep 2025 23:15:01 +0200

vdev (1.3.63-1+5gnuinos4) unstable; urgency=medium

  * Add new helper vdev_root_sys_block to determine the device
    where the root partition is mounted
  * Add device-mapper and dm-disk actions to the initrd phase
  * Add new script to initramfs-tools/scripts/local-block that runs
    vgchange in order to activate lvm. Auto-detection with vdev is
    broken.

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 07 Sep 2025 00:32:33 +0200

vdev (1.3.62-1+5gnuinos3) unstable; urgency=medium

  * Reset the console to normal text output after printing in bold
    all input devices found by the helper vdev_wait
  * New upstream version 1.3.62

 -- Aitor <aitor_czr@gnuinos.org>  Wed, 27 Aug 2025 20:35:37 +0200

vdev (1.3.60-1+5gnuinos3) unstable; urgency=medium

  * Bugfix in vdev_blkid() routine of the helper substr.sh: we need to
    skip the slashes and also to add quotes in the 2nd member of the
    'key=value' pairs
  * Minor changes in os/linux.c
  * New upstream version 1.3.60

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 23 Aug 2025 18:19:09 +0200

vdev (1.3.59-1+5gnuinos3) unstable; urgency=medium

  * Redirect to /dev/null error outputs while evaluating the helper
    data gotten from stat_* binaries that lead to weird errors thrown
    by the daemonlet (due to Ilegal numbers)
  * New upstream version 1.3.59

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 22 Aug 2025 11:51:23 +0200

vdev (1.3.58-1+5gnuinos3) unstable; urgency=medium

  * Bugfix in the vdev sysvinit script
  * New upstream version 1.3.58

 -- Aitor <aitor_czr@gnuinos.org>  Thu, 21 Aug 2025 23:57:58 +0200

vdev (1.3.57-1+5gnuinos2) unstable; urgency=medium

  * Add suport for NVMe drives
  * Update stat_ata.c by adding new fields from the IDENTIFY data
  * Add missing variables VDEV_SCSI_WWN and VDEV_SCSI_WWN_WITH_EXTENSION
    to the commonly-used environment variables in the routine
    daemonlet_default_environ() of daemonlet
  * New upstream version 1.3.57

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 16 Aug 2025 13:12:47 +0200

vdev (1.3.56-1+5gnuinos2) unstable; urgency=medium

  * Add a fanotify file descriptor to the enumerated list of FDs to
    poll in os/linux.c, focused primarily to simplify the init script
  * New upstream version 1.3.56

 -- Aitor <aitor_czr@gnuinos.org>  Thu, 14 Aug 2025 19:26:42 +0200

vdev (1.3.55-1+5gnuinos1) unstable; urgency=medium

  * Postpone during the boot process every device related to the acpi
    subsystem, either the device itself or some other parent device
    in the sysfs hierarchy, regardless the device concerned belongs
    to any one of the subsystems in which we are interested. Since
    version 1.3.42 we have been applying the opposite criterion to the
    pci subsystem, but now we take only the acpi subsystem into account
    when it comes to postpone devices in order to speed up the boot
    process. In doing so, we remove the need to distinguish between real
    hardware from virtual machines. And the need to determine the arch
    as well. Moreover, this way is not only more effective, but also
    more rational
  * New upstream version 1.3.55

 -- Aitor <aitor_czr@gnuinos.org>  Wed, 13 Aug 2025 00:58:40 +0200

vdev (1.3.54-1+5gnuinos1) unstable; urgency=medium

  * Fix compiler warning
  * New upstream version 1.3.54

 -- Aitor <aitor_czr@gnuinos.org>  Mon, 11 Aug 2025 09:28:20 +0200

vdev (1.3.53-1+5gnuinos1) unstable; urgency=medium

  * Fix issue in non x86_64 hardware including the whole list of items
    stored in struct sglib_cstr_vector uevents. Same in case we are in
    a virtual machine, regardless the architecture
  * New upstream version 1.3.53

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 10 Aug 2025 10:39:54 +0200

vdev (1.3.52-1+5gnuinos1) unstable; urgency=medium

  * Simplify the runit script
  * Define a tag VDEV_OS_TRACKING_FLAG that allows to keep track of the
    processed coldplug devices. When the last device is processed in
    zzz-udev-compat.act (which takes the value 1 for this flag), the
    aforementioned action sends a SIGTERM signal to the parent, i.e.
    vdevd. TODO: we need to handle the hypothetical case were the last
    device isn't parsed correctly, maybe sending a delayed SIGALRM that
    will terminate the process after a prudent lapse of time.
  * Reload the config file after the preamble phase of the first stage
    during the boot in order to start the whole coldplug processing
    that will coexist with the hotplug process during its life cicle
  * Improve the sysv scripts
  * New upstream version 1.3.52

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 25 Jul 2025 13:35:29 +0200

vdev (1.3.51-1+5gnuinos3) unstable; urgency=medium

  * Add fb.act action to vdevd.1.conf; otherwise startx command
    might fail

 -- Aitor <aitor_czr@gnuinos.org>  Thu, 10 Jul 2025 16:59:52 +0200

vdev (1.3.51-1+5gnuinos2) unstable; urgency=medium

  * Change parameters passed to dh_installinit in d/rules
  * Override dh_link in d/rules

 -- Aitor <aitor_czr@gnuinos.org>  Mon, 07 Jul 2025 21:01:53 +0200

vdev (1.3.51-1+5gnuinos1) unstable; urgency=medium

  * Return zero in vdev-modprobe.sh and vdev-aux.sh even when the
    argument passed to update-rc.d is not supported and revert the
    changes done in the two previous commits
  * New upstream version 1.3.51

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 06 Jul 2025 10:16:07 +0200

vdev (1.3.50-1+5gnuinos2) unstable; urgency=medium

  * Do not stop vdev-modprobe.sh and vdev-aux.sh init script on upgrade.
    This has the side-effect of not restarting the service as a part of
    the upgrade.

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 05 Jul 2025 08:54:18 +0200

vdev (1.3.50-1+5gnuinos1) unstable; urgency=medium

  * Don't run vdev_wait in virtual machines
  * Make use of dh_installinit in d/rules
  * New upstream version 1.3.50

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 04 Jul 2025 22:01:46 +0200

vdev (1.3.49-1+5gnuinos1) unstable; urgency=medium

  * Minor changes in the sysvinit scripts
  * Do not split hotplug and coldplug processes because it causes
    some issues when using the startx command rather than display
    managers
  * Rename vdev-coldplug.sh to vdev-aux.sh
  * New upstream version 1.3.49

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 29 Jun 2025 23:47:13 +0200

vdev (1.3.48-1+5gnuinos1) unstable; urgency=medium

  * Remove the runit core-service in favor of the /etc/rcS.d/S*-vdev*
    sysvinit scripts during the first stage.
  * Remove netdev action from vdevd.1.conf
  * Add a few more susbsystems to vdev_modprobe
  * New upstream version 1.3.48

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 27 Jun 2025 23:00:37 +0200

vdev (1.3.47-1+5gnuinos1) unstable; urgency=medium

  * Split the vdev_modprobe command in a separate sysvinit script
    that doesn't depend on any other service, in order to start it
    early in the boot
  * New upstream version 1.3.47

 -- Aitor <aitor_czr@gnuinos.org>  Mon, 23 Jun 2025 23:14:25 +0200

vdev (1.3.46-1+5gnuinos1) unstable; urgency=medium

  * Changes required in the sysvinit scripts in order to avoid some
    some errors thrown by openrc
  * New upstream version 1.3.46

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 22 Jun 2025 21:25:01 +0200

vdev (1.3.45-1+5gnuinos1) unstable; urgency=medium

  * Define a oneshot sysvinit script to run the coldplug only instance
    of vdev, as an extra service
  * Improve the runit script
  * New upstream version 1.3.45

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 20 Jun 2025 00:58:51 +0200

vdev (1.3.44-1+5gnuinos1) unstable; urgency=medium

  * Take into account whether we are within a virtual machine before
    proceding to discard during the boot process those devices not
    related to pci (see the notes in version 1.3.42 and higher)
  * New upstream version 1.3.44

 -- Aitor <aitor_czr@gnuinos.org>  Wed, 18 Jun 2025 02:21:58 +0200

vdev (1.3.43-1+5gnuinos2) unstable; urgency=medium

  * Modify init-top and init-bottom scripts

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 15 Jun 2025 15:56:37 +0200

vdev (1.3.43-1+5gnuinos1) unstable; urgency=medium

  * Do not discard i2c devices when registering coldplugged devices
    during the boot process, regardless of whether they have a parent
    with subsystem pci (read the notes of the previous release 1.3.42)
  * New upstream version 1.3.43

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 15 Jun 2025 12:42:08 +0200

vdev (1.3.42-1+5gnuinos1) unstable; urgency=medium

  * Discard during the boot process those devices not related to pci,
    taking into account parent devices as well
  * New upstream version 1.3.42

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 14 Jun 2025 13:24:58 +0200

vdev (1.3.41-1+5gnuinos1) unstable; urgency=medium

  * New helper 'vdev_print_input_devices' that determines the list of
    input devices that vdev_wait should expect
  * Rename vdev_libinput to vdev_wait
  * Return a non-zero value in vdev_os_main() when trying to yield the
    next device and the poller in linux.c receives a linux signal, and
    manage the value accordingly in the main loop of main.c.
  * New upstream version 1.3.41

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 07 Jun 2025 09:22:32 +0200

vdev (1.3.40-1+5gnuinos1) unstable; urgency=medium

  * Modify the core service for runit
  * Changed d/vdev.preinst
  * New upstream version 1.3.40

 -- Aitor <aitor_czr@gnuinos.org>  Wed, 04 Jun 2025 15:37:17 +0200

vdev (1.3.39-1+5gnuinos2) unstable; urgency=medium

  * Add missing file /etc/boot.d/vdev to vdev.install

 -- Aitor <aitor_czr@gnuinos.org>  Mon, 02 Jun 2025 18:51:58 +0200

vdev (1.3.39-1+5gnuinos1) unstable; urgency=medium

  * Lock the pidfile while all the coldplugged devices are being
    processed during the first boot runlevel and unlock it afterwards
  * New upstream version 1.3.39

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 01 Jun 2025 20:44:21 +0200

vdev (1.3.38-1+5gnuinos2) unstable; urgency=medium

  * Improve the script in /etc/boot.d

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 31 May 2025 12:53:13 +0200

vdev (1.3.38-1+5gnuinos1) unstable; urgency=medium

  * Use sysvinit's /etc/boot.d to run a coldplug_only instance at boot

 -- Aitor <aitor_czr@gnuinos.org>  Thu, 29 May 2025 03:13:15 +0200

vdev (1.3.37-1+5gnuinos1) unstable; urgency=medium

  * Fix a bug in vdev_libinput helper
  * Take into account the ath9k wireless driver when binding input
    devices
  * New upstream version 1.3.37

 -- Aitor <aitor_czr@gnuinos.org>  Mon, 26 May 2025 16:46:46 +0200

vdev (1.3.36-1+5gnuinos1) unstable; urgency=medium

  * Use select() system call while waiting until previous instances
    have ended, being responsive to linux signals during this interval
  * Remove the oneshot runit service
  * Modify the runit script
  * Improve vdev_bind_input_devices helper
  * Use a daemonlet in vdev_modprobe
  * New upstream version 1.3.36

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 10 May 2025 09:54:37 +0200

vdev (1.3.35-1+5gnuinos1) unstable; urgency=medium

  * Improve the vdev_init_top helpers making use of a daemonlet and
    restore it in the initramfs scripts
  * Add another helper vdev_netlink that works in the initial RAM
    disk image (initrd) together with vdev_init_top; the earlier is the
    poller reactive to netlink events, whereas the latter processes only
    coldplugged devices
  * New upstream version 1.3.35

 -- Aitor <aitor_czr@gnuinos.org>  Thu, 01 May 2025 00:07:36 +0200

vdev (1.3.34-1+5gnuinos1) unstable; urgency=medium

  * Move to the shared library some core functions concerning to
    daemonlets
  * Fix segfault in vdev_modprobe
  * New upstream version 1.3.34

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 26 Apr 2025 10:04:35 +0200

vdev (1.3.33-1+5gnuinos1) unstable; urgency=medium

  * Default to eventfs instead of netlink
  * New upstream version 1.3.33

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 20 Apr 2025 14:00:32 +0200

vdev (1.3.32-1+5gnuinos1) unstable; urgency=medium

  * Create a core service for runit
  * Add new runit script related to a oneshot service doing coldplug
    only
  * Find and remove all stale coldplug devices as long as the preseed
    path has been defined in the config file, as we're using the
    metadata directory to figure this out
  * New upstream version 1.3.32

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 19 Apr 2025 18:41:44 +0200

vdev (1.3.31-1+5gnuinos1) unstable; urgency=medium

  * Improve vdev_bind_input_devices
  * Improve vdev_modprobe
  * Improve vdev_reset_usb_devices
  * New upstream version 1.3.31

 -- Aitor <aitor_czr@gnuinos.org>  Mon, 14 Apr 2025 00:32:37 +0200

vdev (1.3.30-1+5gnuinos1) unstable; urgency=medium

  * Modified sysvinit script
  * New upstream version 1.3.30

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 11 Apr 2025 20:15:26 +0200

vdev (1.3.29-1+5gnuinos1) unstable; urgency=medium

  * New helper vdev_killall that is used in the sysvinit script
  * New upstream version 1.3.29

 -- Aitor <aitor_czr@gnuinos.org>  Mon, 07 Apr 2025 21:26:23 +0200

vdev (1.3.28-1+5gnuinos1) unstable; urgency=medium

  * Unlink the pidfile after signaling that we've processed all coldplugged
    devices as long as the 'restart' option is enabled
  * New upstream version 1.3.28

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 04 Apr 2025 23:28:54 +0200

vdev (1.3.27-1+5gnuinos1) unstable; urgency=medium

  * Bugfix in the initrd phase of live sessions
  * New upstream version 1.3.27

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 30 Mar 2025 23:50:23 +0200

vdev (1.3.26-1+5gnuinos1) unstable; urgency=medium

  * Add new helper vdev_init_top that replaces the daemon whithin the
    initial RAM disk image (initrd)
  * New upstream version 1.3.26

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 21 Feb 2025 21:43:31 +0100

vdev (1.3.25-1+5gnuinos2) unstable; urgency=medium

  * Remove some actions from the initial RAM disk (initrd)

 -- Aitor <aitor_czr@gnuinos.org>  Tue, 11 Feb 2025 00:42:53 +0100

vdev (1.3.25-1+5gnuinos1) unstable; urgency=medium

  * Add a lock file to vdev_modprobe
  * New helper vdev_modprobe_wait
  * Minor changes in the actions
  * New upstream version 1.3.25

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 09 Feb 2025 18:05:11 +0100

vdev (1.3.24-1+5gnuinos1) unstaable; urgency=medium

  * Define new configuration parameter --netlink to use alternatively
    the linux netlink connection instead of using serialized device
    events to the eventfs filesystem
  * Use the netlink connection by default in the runit script
  * New upstream version 1.3.24

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 08 Feb 2025 10:04:02 +0100

vdev (1.3.23-1+5gnuinos1) unstable; urgency=medium

  * Manage linux signals by using a enumerated list of file descriptors
    passed to the poller
  * New upstream version 1.3.23

 -- Aitor <aitor_czr@gnuinos.org>  Tue, 14 Jan 2025 21:01:06 +0100

vdev (1.3.22-1+5gnuinos1) unstable; urgency=medium

  * Define new configuration parameter --hotplug-only
  * Adapt runit and sysvinit scripts
  * Allow coldplug-only processes to run in the background
  * New upstream version 1.3.22

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 10 Jan 2025 00:18:46 +0100

vdev (1.3.21-1+5gnuinos1) unstable; urgency=medium

  * Bring up the network device in netdev.sh via "ip link set up"
  * New upstream version 1.3.21

 -- Aitor <aitor_czr@gnuinos.org>  Wed, 25 Dec 2024 21:17:15 +0100

vdev (1.3.20-1+5gnuinos3) unstable; urgency=medium

  * Add some actions to /etc/vdev/actions.1
  * Update libudev-compat version in d/control
  * New upstream version 1.3.20

 -- Aitor <aitor_czr@gnuinos.org>  Thu, 19 Dec 2024 20:04:47 +0100

vdev (1.3.20-1+5gnuinos2) unstable; urgency=medium

  * Use the shebang operator /lib/runit/invoke-run in the runit script

 -- Aitor <aitor_czr@gnuinos.org>  Tue, 17 Dec 2024 19:29:36 +0100

vdev (1.3.20-1+5gnuinos1) unstable; urgency=medium

  * New helper vdev_wait
  * New upstream version 1.3.20

 -- Aitor <aitor_czr@gnuinos.org>  Tue, 17 Dec 2024 19:00:35 +0100

vdev (1.3.19-1+5gnuinos1) unstable; urgency=medium

  * Remove the use of a lock file, no longer required
  * Fix a mistake in the configuration of the initrd
  * New upstream version 1.3.19

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 30 Nov 2024 12:31:02 +0100

vdev (1.3.18-1+5gnuinos1) unstable; urgency=medium

  * Change the sysvinit script
  * Fix a bug in the Makefile of libvdev
  * New upstream version 1.3.18

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 08 Nov 2024 07:41:46 +0100

vdev (1.3.17-1+5gnuinos3) unstable; urgency=medium

  * Change runit script

 -- Aitor <aitor_czr@gnuinos.org>  Tue, 29 Oct 2024 16:24:08 +0100

vdev (1.3.17-1+5gnuinos2) unstable; urgency=medium

  * Remove the hardware database from the initrd

 -- Aitor <aitor_czr@gnuinos.org>  Mon, 28 Oct 2024 21:10:24 +0100

vdev (1.3.17-1+5gnuinos1) unstable; urgency=medium

  * Changes in the sysvinit script
  * Use a lock file while the child is processing the coldplugged devices
  * New upstream version 1.3.17

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 26 Oct 2024 05:19:09 +0200

vdev (1.3.16-1+5gnuinos1) unstable; urgency=medium

  * build vdev core utilities as shared library; dinamically link vdevd
    and its helpers against it
  * New upstream version 1.3.16

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 18 Aug 2024 10:17:18 +0200

vdev (1.3.15-1+5gnuinos1) unstable; urgency=medium

  * Stick to the "usb" subsytem and "boot_vga" drivers in /lib/vdev/vdev_modprobe
  * Give priority to some subsystems in the vdevd.1.config phase
  * New upstream version 1.3.15

 -- Aitor <aitor_czr@gnuinos.org>  Wed, 31 Jul 2024 22:12:47 +0200

vdev (1.3.14-1+5gnuinos1) unstable; urgency=medium

  * kill previous instances as in older version 1.3.12
  * New upstream version 1.3.14

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 31 May 2024 23:40:51 +0200

vdev (1.3.13-1+5gnuinos1) unstable; urgency=medium

  * New helper vdev_modprobe
  * New upstream version 1.3.13

 -- Aitor <aitor_czr@gnuinos.org>  Tue, 28 May 2024 00:16:16 +0200

vdev (1.3.12-1+5gnuinos1) unstable; urgency=medium

  * Fix compiler warnings
  * New upstream version 1.3.12

 -- Aitor <aitor_czr@gnuinos.org>  Thu, 23 May 2024 21:31:44 +0200

vdev (1.3.11-1+5gnuinos1) unstable; urgency=medium

  * Free allocated sglib vectors in os/linux.c
  * New upstream version 1.3.11

 -- Aitor <aitor_czr@gnuinos.org>  Wed, 22 May 2024 23:03:24 +0200

vdev (1.3.10-1+5gnuinos2) unstable; urgency=medium

  * Minor changes to postinst script

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 03 Mar 2024 20:29:44 +0100

vdev (1.3.10-1+5gnuinos1) unstable; urgency=medium

  * Restore some config variables
  * New upstream version 1.3.10

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 01 Mar 2024 20:10:24 +0100

vdev (1.3.9-1+5gnuinos1) unstable; urgency=medium

  * Change some actions
  * Remove some config variables no longer required
  * New upstream version 1.3.9

 -- Aitor <aitor_czr@gnuinos.org>  Tue, 27 Feb 2024 23:21:18 +0100

vdev (1.3.8-1+5gnuinos1) unstable; urgency=medium

  * Use sigaction() system call to install signal handlers that
    change the actions carried out on receipt of a specific signal.

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 24 Feb 2024 22:04:30 +0100

vdev (1.3.7-1+5gnuinos1) unstable; urgency=medium

  * Helpers bugfix: symlinks at /dev/disk/by-* weren't created for
    attached internal disks (e.g. sda, sda1...)
  * New upstream version 1.3.7

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 24 Feb 2024 15:09:41 +0100

vdev (1.3.6-1+5gnuinos1) unstable; urgency=medium

  * Fix a bug during the boot that affected non removable devices
    which couldn't be removed by file manager's hotplugers even when
    udisksctl power-off command worked. The workaround involves
    unauthorizing these devices during the boot process as soon as
    they are detected, binding them again once coldplug processing has
    finished.
  * New upstream version 1.3.6

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 23 Feb 2024 00:47:47 +0100

vdev (1.3.5-1+5gnuinos1) unstable; urgency=medium

  * Avoid any attempt to kill vdev by the shebang operator
    /lib/runit/invoke-run specified at the beginning of the runit
    run script as a replacement for /bin/sh since version 1.3.5
  * New upstream version 1.3.5

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 18 Feb 2024 22:30:26 +0100

vdev (1.3.4-1+5gnuinos1) unstable; urgency=medium

  * Modified preinst, postinst and postrm scripts
  * Changed the init-top script in the initramfs
  * Changed the script for sysvinit
  * New upstream version 1.3.4

 -- Aitor <aitor_czr@gnuinos.org>  Tue, 06 Feb 2024 22:27:48 +0100

vdev (1.3.3-1+5gnuinos1) unstable; urgency=medium

  * Revert some changes to sysvinit script
  * New upstream version 1.3.3

 -- Aitor <aitor_czr@gnuinios.org>  Thu, 01 Feb 2024 23:15:04 +0100

vdev (1.3.2-1+5gnuinos1) unstable; urgency=medium

  * Improve sysvinit script
  * Fix syntax mistake in vdevd.c
  * New upstream version 1.3.2

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 28 Jan 2024 23:52:35 +0100

vdev (1.3.1-1+5gnuinos1) unstable; urgency=medium

  * Add new binary cdrom_id (forked from eudev) to the helpers
  * Refactor optical block devices into optical.sh and have disk.sh by-pass
    every path matching sr[0-9]*$
  * Add a new vdev action `events-poll.sh` that sets the value storaged in
    /sys/block/sr?/events_poll_msecs to some number greater than zero (by
    default -1), which causes the kernel to poll the device and triggers a
    uevent when it detects the kernel change
  * Fix a couple of bugs in stat_usb.c related to the use of strncpy
  * New upstream version 1.3.1

 -- Aitor <aitor_czr@gnuinos.org>  Mon, 01 Jan 2024 23:45:59 +0100

vdev (1.3.0-1+5gnuinos2) unstable; urgency=medium

  * Modify the init-bottom script in the intramfs

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 17 Dec 2023 00:06:05 +0100

vdev (1.3.0-1+5gnuinos1) unstable; urgency=medium

  * Minor changes in the foreground
  * New upstream version 1.3.0

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 16 Dec 2023 21:29:30 +0100

vdev (1.2.9-1+5gnuinos1) unstable; urgency=medium

  * Fix a bug in the helper subr-event.sh that happens if the script is run
    before the creation of /dev/disks/by-uuid
  * New upstream version 1.2.9

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 16 Dec 2023 02:35:12 +0100

vdev (1.2.8-1+5gnuinos1) unstable; urgency=medium

  * Define new vdev helper variables in order to set default mountpoint for
    udisks to either /media/$USER/$LABEL or /media/$USER/$UUID
  * New upstream version 1.2.8

 -- Aitor <aitor_czr@gnuinos.org>  Thu, 14 Dec 2023 20:41:33 +0100

vdev (1.2.7-1+5gnuinos2) unstable; urgency=medium

  * Fix mdadm bug that leads to no devices being enumerated in /dev during
    the initrd phase

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 10 Dec 2023 20:42:12 +0100

vdev (1.2.7-1+5gnuinos1) unstable; urgency=medium

  * Install sigterm signal handler
  * New upstream version 1.2.7

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 09 Dec 2023 12:39:25 +0100

vdev (1.2.6-1+5gnuinos1) unstable; urgency=medium

  * Fix a mistake in the regex used in the helper disk.sh, responsible for
    skipping inappropriate block devices.
  * Fix lintian errors
  * New upstream version 1.2.6

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 08 Dec 2023 16:06:33 +0100

vdev (1.2.5-1+5gnuinos1) unstable; urgency=medium

  * Bug fix: depending on the disk type, udisksd didn't recognize some
    drive properties and therefore, the assertion G_DBUS_INTERFACE (drive)
    failed. As a result, such drives couldn't be powered off by udisks.
  * New upstream version 1.2.5

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 08 Dec 2023 12:40:44 +0100

vdev (1.2.4-1+5gnuinos1) unstable; urgency=medium

  * Add new helper vdev_block_info in order to customize UDISKS_NAME
  * New upstream version 1.2.4

 -- Aitor <aitor_czr@gnuinos.org>  Wed, 06 Dec 2023 21:46:34 +0100

vdev (1.2.3-1+5gnuinos1) unstable; urgency=medium

  * Prepend network devices when finding devices at frontier in the
    sysfs filesystem.
  * Remove udevadm empty scripts; the dependency on libudev-compat-helpers
    will provide the required backwards compatibility.
  * New upstream version 1.2.3

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 26 Nov 2023 21:21:34 +0100

vdev (1.2.2-1+5gnuinos1) unstable; urgency=medium

  * New upstream release 1.2.2
  * Minor changes in the sysvinit script
  * Add ptmx.act and netdev.act to actions.1

 -- Aitor <aitor_czr@gnuinos.org>  Wed, 08 Nov 2023 21:38:13 +0100

vdev (1.2.1-1+5gnuinos2) unstable; urgency=medium

  * Add an empty script udevadm for backwards compatibility required by some
    initramfs scripts.

 -- Aitor <aitor_czr@gnuinos.org>  Sun, 05 Nov 2023 20:41:25 +0100

vdev (1.2.1-1+5gnuinos1) unstable; urgency=medium

  * New upstream version 1.2.1
  * Fix dbus-proxy delay when running udisks by parsing its synthetic variables

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 04 Nov 2023 12:58:52 +0100

vdev (1.1.2-1+5gnuinos1) unstable; urgency=medium

  * New upstream version 1.1.2

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 02 Sep 2023 20:55:50 +0200

vdev (1.1.1-1) unstable; urgency=medium

  * New upstream version 1.1.1

 -- Aitor <aitor_czr@gnuinos.org>  Fri, 01 Sep 2023 11:20:23 +0200

vdev (1.1.0-1) unstable; urgency=medium

  * Add 001-sysfs-block.act to the actions in the initrd
  * Add 001-sysfs-char.act to the actions in the initrd
  * Add char.act to the actions in the initrd
  * Update hardware data base
  * New upstream version 1.1.0

 -- Aitor <aitor_czr@gnuinos.org>  Sat, 27 May 2023 23:04:28 +0200

vdev (1.1-6+4gnuinos1) unstable; urgency=medium

  * Minor changes in the actions

 -- Aitor Cuadrado Zubizarreta <aitor_czr@gnuinos.org>  Sat, 29 Apr 2023 20:43:12 +0200

vdev (1.1-5+4gnuinos1) unstable; urgency=medium

  * Fix a mistake when trying to terminate the daemon during the bottom stage of
    initramfs
  * Adding more vdev configuration files

 -- Aitor Cuadrado Zubizarreta <aitor_czr@gnuinos.org>  Fri, 28 Apr 2023 11:09:10 +0200

vdev (1.1-4+4gnuinos1) unstable; urgency=medium

  * Add eventfs runtime dependency in order to ensure that the bunch of directories
    created in /dev/metadata/udev/events, into which vdev's udev-compat.sh helper
    writes device events, are automatically removed after the process that created
    them dies.
  * New upstream version 1.1

 -- Aitor Cuadrado Zubizarreta <aitor_czr@gnuinos.org>  Sun, 12 Mar 2023 12:25:19 +0100

vdev (1.0-3+4gnuinos2) unstable; urgency=medium

  * Add hwdb.act to the actions in the initrd

 -- Aitor Cuadrado Zubizarreta <aitor_czr@gnuinos.org>  Mon, 09 Jan 2023 13:13:54 +0100

vdev (1.0-2+4gnuinos2) chimaera; urgency=medium

  * Update sglib.h to 1.0.4

 -- Aitor Cuadrado Zubizarreta <aitor_czr@gnuinos.org>  Tue, 01 Nov 2022 22:10:44 +0100

vdev (1.0-2+4gnuinos1) chimaera; urgency=medium

  * Replace the shebang in d/vdev.runscript

 -- Aitor Cuadrado Zubizarreta <aitor_czr@gnuinos.org>  Thu, 09 Jun 2022 13:04:12 +0200

vdev (1.0-1+4gnuinos1) chimaera; urgency=medium

  * Provide eudev-3.2.9-10~chimaera1
  * Added rsync to build dependencies
  * Add native runit script
  * Depend on imvirt and dmidecode

 -- Aitor Cuadrado Zubizarreta <aitor_czr@gnuinos.org>  Mon, 03 Jan 2022 22:58:09 +0000

vdev (1.0-1+3gnuinos1) beowulf; urgency=medium

  * Split into vdev and libudev-compat
  * Upgrade the hardware data base from:
	http://cgit.freedesktop.org/systemd/systemd/plain/hwdb
  * Added manpages written by Ralph Ronnquist.

 -- Aitor Cuadrado Zubizarreta <aitor_czr@gnuinos.org>  Sun, 20 Dec 2020 15:15:44 +0100

vdev (20161228-ascii1+deb9u1) experimental; urgency=medium

  * Upgraded to ascii.

 -- Aitor Cuadrado Zubizarreta <aitor_czr@gnuinos.org>  Sat, 09 Dec 2017 18:33:57 +0100

vdev (20161015-jessie1) experimental; urgency=medium

  * Initial release, upload to experimental. Closes: #4cf5911
    - Source upstream: https://github.com/jcnelson/vdev/commits/master

 -- Aitor Cuadrado Zubizarreta <aitor_czr@gnuinos.org>  Sun, 16 Oct 2016 11:14:40 +0200
