summaryrefslogtreecommitdiff
path: root/arch/scripts/.local/bin/set-wallpaper
blob: 30b15d84c390157cfed524dc7aa3f15f7393f94c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/usr/bin/env bash
set -euo pipefail
WALLPAPER="${1:?usage: set-wallpaper <path>}"

awww img "$WALLPAPER" \
  --transition-type wipe \
  --transition-angle 30 \
  --transition-duration 1

wallust run "$WALLPAPER" --ignore-sequence background --ignore-sequence foreground

gdbus call --session \
  --dest com.mitchellh.ghostty \
  --object-path /com/mitchellh/ghostty \
  --method org.gtk.Actions.Activate \
  "reload-config" "[]" "{}" > /dev/null 2>&1 || true

hyprctl reload
pkill -x mako || true
mako &
eww reload || true

# spicetify watch -s picks up color.ini changes automatically.
# Fallback: refresh manually if watch isn't running.
pgrep -f "spicetify watch" > /dev/null || spicetify refresh > /dev/null 2>&1 || true

# nvim picks up the new palette automatically via a libuv file watcher in colorscheme.lua