summaryrefslogtreecommitdiff
path: root/src/caelestia/utils (follow)
Commit message (Collapse)AuthorAgeFilesLines
* feat: add wallpaper post-hook for dynamic theming (#61)Givani Boekestijn2025-10-171-0/+16
| | | | | | | | | | | | | | | * feat: add wallpaper post-hook for dynamic theming Adds support for running custom shell commands after wallpaper changes via the `wallpaper.postHook` config option in `~/.config/caelestia/cli.json`. The wallpaper path is made available to the hook via the $WALLPAPER_PATH environment variable. This enables integration with tools like `matugen` or `pywal` for dynamic theming based on wallpaper colors. The hook runs after apply_colours() in set_wallpaper(), ensuring it executes for all wallpaper change methods (UI, IPC, and direct CLI). * Replaced comment in example config with no-op command
* version: catch correct error2 * r + 2 * t2025-09-141-1/+1
|
* version: fix pacman + use shell version helper2 * r + 2 * t2025-09-141-1/+9
|
* theme: continue execution after failure for one theme (#50)sweenu2025-09-092-0/+34
|
* record: fix wf-recorder audio flag and proc error handling (#48)Matheus Oliveira2025-08-301-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | * fix(recording): Fix wf-recorder audio flag and improve process monitoring - Fix incorrect audio flag format for wf-recorder(Invalid whitespace) Changed from `-a <device>` to `--audio=<device>` as per wf-recorder docs: "Specify device like this: -a<device> or --audio=<device>" - Add fallback to IDLE audio sources Audio sources are typically in IDLE state when no media is playing. Now falls back to IDLE sources if no RUNNING sources are found, ensuring audio capture works when recording starts during silence but media plays later. - Improve process startup monitoring The 0.1s sleep was insufficient for reliable process detection on NVIDIA systems. Process would start and immediately die ~90% of the time when triggered via keybinds. Now shows immediate UI feedback then monitors for 3 seconds to ensure stable process startup while maintaining responsive user experience. * check returncode + timeout 3s -> 1s + format --------- Co-authored-by: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>
* wallpaper: random prevent duplicate2 * r + 2 * t2025-08-231-1/+15
|
* theme: add nvtop, htop, and cava support (#45)Batuhan Edgüer2025-08-181-1/+24
| | | | | | | * templates: add nvtop, htop, and cava support * Triggers htop and cava theme reloads Sends a USR2 signal to htop and cava after their themes are applied. This prompts the applications to reload their configuration files, ensuring new themes are visible instantly without requiring a manual restart.
* pip: use batch request2 * r + 2 * t2025-08-171-0/+6
|
* theme: add Warp terminal theme support (#42)Batuhan Edgüer2025-08-171-0/+11
| | | | | | | | | | | | | | | * theme: add Warp terminal theme support Add support for Warp terminal theming with proper template and integration. - Add warp.yaml template with standard theme variables - Implement apply_warp function with correct 'darker'/'lighter' values - Integrate with main theme application pipeline via enableWarp config * warp: improve theme generation and use proper data directory - Use gen_replace with hash=True for consistent color formatting - Remove # symbols from template to avoid double hashes - Replace warp_mode manually after gen_replace instead of adding to colors dict - Use data_dir for XDG-compliant theme location
* paths: fix custom path envs2 * r + 2 * t2025-08-161-3/+3
| | | | Specify whole path instead of end
* theme: better qt theming2 * r + 2 * t2025-08-152-3/+32
| | | | | Switch to Darkly for default QT style Use qt5ct-kde and qt6ct-kde
* paths: allow configuring via env vars2 * r + 2 * t2025-08-131-3/+3
| | | | Closes #39
* paths: use xdg user paths2 * r + 2 * t2025-08-041-3/+5
| | | | Closes #35
* theme: add config for progs to theme2 * r + 2 * t2025-08-042-9/+34
|
* ci: add flake update workflow2 * r + 2 * t2025-08-041-18/+30
| | | | | | | Also add contributing, funding and issue templates parser: add kill option to shell version: fix errors when not on arch
* theme: add template system (#36)Elio Torquet2025-08-043-1/+63
| | | | | | | | | | | * user template system * fix when templates dir doesnt exist Also color -> colour --------- Co-authored-by: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>
* theme: ignore perm errors for /dev/pts2 * r + 2 * t2025-07-221-2/+5
| | | | Fixes #27
* theme: use dconf instead of gsettings2 * r + 2 * t2025-07-121-3/+3
|
* theme: fix typo2 * r + 2 * t2025-07-121-1/+1
|
* wallpaper: allow relative paths2 * r + 2 * t2025-07-071-2/+4
| | | | Fixes caelestia-dots/shell#200
* version: silence stderr2 * r + 2 * t2025-07-041-1/+4
|
* feat: add version flag2 * r + 2 * t2025-07-041-0/+54
|
* wallpaper: better variant detection2 * r + 2 * t2025-06-252-5/+49
|
* internal: more lazy importing2 * r + 2 * t2025-06-242-9/+13
| | | | Also fix some stuff with scheme checking
* internal: lazy import stuff2 * r + 2 * t2025-06-242-8/+7
| | | | Lazy import material generators
* scheme: no mem cache2 * r + 2 * t2025-06-241-43/+11
|
* [!B] wallpaper: smart variant2 * r + 2 * t2025-06-241-14/+26
|
* scheme: reduce chroma for neutral variant2 * r + 2 * t2025-06-241-0/+4
|
* [!B] colours: better colours2 * r + 2 * t2025-06-246-154/+110
| | | | | Also remove multiple dynamic flavours Add extended material (success colours)
* score: fix for low contrast wallpapers2 * r + 2 * t2025-06-231-3/+7
|
* scheme: handle no wallpaper dynamic scheme2 * r + 2 * t2025-06-181-1/+13
| | | | Throw actually readable error and notify
* scheme: dump scheme data when no args to list2 * r + 2 * t2025-06-171-4/+16
|
* wallpaper: fix print command2 * r + 2 * t2025-06-172-7/+12
|
* scheme: error notif critical urgency2 * r + 2 * t2025-06-171-2/+7
|
* scheme: add notify opt2 * r + 2 * t2025-06-172-0/+25
| | | | For sending a notification on error
* wallpaper: fix smart mode2 * r + 2 * t2025-06-171-3/+3
| | | | Do not switch mode if not dynamic scheme
* feat: theme qt2 * r + 2 * t2025-06-161-0/+14
|
* theme: fix terminal colours2 * r + 2 * t2025-06-161-2/+2
|
* feat: theme gtk2 * r + 2 * t2025-06-151-1/+12
|
* theme: always write2 * r + 2 * t2025-06-151-10/+8
|
* theme: save sequences to state file2 * r + 2 * t2025-06-151-1/+5
|
* material: fix colour generation2 * r + 2 * t2025-06-151-3/+3
| | | | score needs to take a string path
* wallpaper: fix print opt2 * r + 2 * t2025-06-151-1/+7
| | | | Print actual scheme, not just colours
* feat: impl pip subcommand2 * r + 2 * t2025-06-141-1/+3
|
* feat: impl recording subcommand2 * r + 2 * t2025-06-141-0/+4
|
* wallpaper: fix when no wall2 * r + 2 * t2025-06-131-9/+12
|
* internal: fix file perms2 * r + 2 * t2025-06-132-0/+0
|
* feat: impl screenshot command2 * r + 2 * t2025-06-131-0/+3
|
* scheme: ensure enough colours2 * r + 2 * t2025-06-121-2/+5
|
* wallpaper: cache smart mode2 * r + 2 * t2025-06-122-12/+25
|