feat: pos media sync — incremental Music→USB sync (mp3/mp4) + shared lib/usb-lib.sh
gates / consistency-and-conventions (push) Successful in 46s

This commit is contained in:
he
2026-08-14 18:02:03 -04:00
parent 8026300005
commit 16bda822ff
13 changed files with 451 additions and 192 deletions
+16 -7
View File
@@ -1,8 +1,8 @@
# ~/.config/linux_post_install/system.env — shared "system" tool config
#
# Loaded by `pos system health` and `pos system backup` via load_system_env()
# with precedence: already-exported environment > this file > defaults.
# Commented lines are defaults — uncomment to override.
# Loaded by `pos system health`, `pos system backup` and `pos media sync` via
# load_system_env() with precedence: already-exported environment > this file
# > defaults. Commented lines are defaults — uncomment to override.
# Roots scanned by `pos system backup --service` and by the backup-age check
# in `pos system health`. Default: /srv $HOME/srv
@@ -19,9 +19,18 @@
# cron). The copy lands in <root>/backups/ and is still sha256-verified.
#BACKUP_USB_ROOT=/mnt/usb
# Where `pos system backup` mounts an unmounted stick it found. Default: /media
#BACKUP_MOUNT_BASE=/media
# Where `pos system backup` / `pos media sync` mount an unmounted stick they
# found. Default: /media (BACKUP_MOUNT_BASE is kept as an alias)
#USB_MOUNT_BASE=/media
# Dir holding by-id symlinks used to cross-check devices that show no TRAN in
# lsblk. Default: /dev/disk/by-id
#BACKUP_USB_BYID=/dev/disk/by-id
# lsblk. Shared by `pos system backup` and `pos media sync`. Default:
# /dev/disk/by-id (BACKUP_USB_BYID is kept as an alias)
#USB_BYID=/dev/disk/by-id
# Source folder synced by `pos media sync`. Default: $HOME/Music
#MEDIA_SYNC_SOURCE=/home/you/Music
# Subfolder on the USB stick that `pos media sync` mirrors the source into.
# Default: Music
#MEDIA_SYNC_DEST=Music