aboutsummaryrefslogtreecommitdiff
path: root/working/weather-kit-integration
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-07-20 15:56:26 -0500
committerCraig Jennings <c@cjennings.net>2026-07-20 15:56:26 -0500
commitb74875295f7ae31e565879e8e83cbe77597813cc (patch)
tree72fb0a30c5c9207ebfc395b7886c223e0038da47 /working/weather-kit-integration
parent86bf4d94333f582e10e5d129f578d29c871cbbd6 (diff)
downloadarchsetup-b74875295f7ae31e565879e8e83cbe77597813cc.tar.gz
archsetup-b74875295f7ae31e565879e8e83cbe77597813cc.zip
fix(sounds): make normalize-notify-sounds write atomically and clean up
The script re-encoded each notify sound with `cat "$tmp" > "$f"`, which truncates the target first -- a short or empty encode left a corrupt, repo-tracked sound file. The mktemp also had no trap, so an interrupted encode leaked a temp. Now it resolves the real target with `readlink -f` (SOUND_DIR is usually the stow-symlinked ~/.local copy), stages the temp beside it, guards on a non-empty encode, and moves it into place. The mv is atomic on one filesystem and replaces the real file, so the stow symlink still points at it. An EXIT trap removes the in-flight temp when a failed encode aborts the run.
Diffstat (limited to 'working/weather-kit-integration')
0 files changed, 0 insertions, 0 deletions