Commit Graph

70 Commits

Author SHA1 Message Date
2 * r + 2 * t cc458bf859 scheme: ignore empty lines in schemes 2025-10-25 22:41:34 +11:00
Davi Ribeiro 4593b823d7 wallpaper: fix random for multi-monitor setup (#63) 2025-10-17 04:59:13 +11:00
Givani Boekestijn c6f46db36c feat: add wallpaper post-hook for dynamic theming (#61)
* 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
2025-10-17 04:56:32 +11:00
2 * r + 2 * t e560a6e3d2 version: catch correct error 2025-09-14 20:45:57 +10:00
2 * r + 2 * t 62e7911864 version: fix pacman + use shell version helper 2025-09-14 00:12:42 +10:00
sweenu 3319d2ca19 theme: continue execution after failure for one theme (#50) 2025-09-09 13:59:04 +10:00
Matheus Oliveira 35b10394b6 record: fix wf-recorder audio flag and proc error handling (#48)
* 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>
2025-08-30 21:59:26 +10:00
2 * r + 2 * t 6cdfe72e8b wallpaper: random prevent duplicate 2025-08-23 16:22:09 +10:00
Batuhan Edgüer 3e19fd6919 theme: add nvtop, htop, and cava support (#45)
* 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.
2025-08-18 17:18:26 +10:00
2 * r + 2 * t b22ab08a37 pip: use batch request 2025-08-17 15:02:12 +10:00
Batuhan Edgüer 63e2132830 theme: add Warp terminal theme support (#42)
* 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
2025-08-17 02:17:39 +10:00
2 * r + 2 * t 1cd8cae2d9 paths: fix custom path envs
Specify whole path instead of end
2025-08-16 18:07:29 +10:00
2 * r + 2 * t d727836cc9 theme: better qt theming
Switch to Darkly for default QT style
Use qt5ct-kde and qt6ct-kde
2025-08-15 15:53:39 +10:00
2 * r + 2 * t 386ccf3729 paths: allow configuring via env vars
Closes #39
2025-08-13 16:10:40 +10:00
2 * r + 2 * t 50646cd565 paths: use xdg user paths
Closes #35
2025-08-04 16:48:15 +10:00
2 * r + 2 * t fed8cc5800 theme: add config for progs to theme 2025-08-04 16:43:55 +10:00
2 * r + 2 * t d8037819f0 ci: add flake update workflow
Also add contributing, funding and issue templates

parser: add kill option to shell
version: fix errors when not on arch
2025-08-04 15:40:17 +10:00
Elio Torquet 06a7102490 theme: add template system (#36)
* 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>
2025-08-04 15:14:10 +10:00
2 * r + 2 * t 3deb726278 theme: ignore perm errors for /dev/pts
Fixes #27
2025-07-22 16:01:12 +10:00
2 * r + 2 * t 4b666a797e theme: use dconf instead of gsettings 2025-07-12 17:38:26 +10:00
2 * r + 2 * t 32c0be2488 theme: fix typo 2025-07-12 15:03:26 +10:00
2 * r + 2 * t e2a34210e5 wallpaper: allow relative paths
Fixes caelestia-dots/shell#200
2025-07-07 14:35:39 +10:00
2 * r + 2 * t 14286fcded version: silence stderr 2025-07-04 20:49:46 +10:00
2 * r + 2 * t 9b01d62dc1 feat: add version flag 2025-07-04 20:45:53 +10:00
2 * r + 2 * t 35ea4a2dbc wallpaper: better variant detection 2025-06-25 23:44:50 +10:00
2 * r + 2 * t f47b4fe661 internal: more lazy importing
Also fix some stuff with scheme checking
2025-06-24 23:47:53 +10:00
2 * r + 2 * t 500e801481 internal: lazy import stuff
Lazy import material generators
2025-06-24 23:30:28 +10:00
2 * r + 2 * t 01c0182a46 scheme: no mem cache 2025-06-24 23:11:18 +10:00
2 * r + 2 * t affa3bfd21 [!B] wallpaper: smart variant 2025-06-24 00:30:52 +10:00
2 * r + 2 * t 2d05515b56 scheme: reduce chroma for neutral variant 2025-06-24 00:19:16 +10:00
2 * r + 2 * t 82f98a4f6a [!B] colours: better colours
Also remove multiple dynamic flavours
Add extended material (success colours)
2025-06-24 00:11:20 +10:00
2 * r + 2 * t dbfb925694 score: fix for low contrast wallpapers 2025-06-23 20:58:48 +10:00
2 * r + 2 * t 8903b1d1ab scheme: handle no wallpaper dynamic scheme
Throw actually readable error and notify
2025-06-18 17:34:11 +10:00
2 * r + 2 * t 1ab61223c6 scheme: dump scheme data when no args to list 2025-06-17 14:03:51 +10:00
2 * r + 2 * t 3416178ad4 wallpaper: fix print command 2025-06-17 13:29:25 +10:00
2 * r + 2 * t 8b6ed5e403 scheme: error notif critical urgency 2025-06-17 13:03:19 +10:00
2 * r + 2 * t 2c94c42cbd scheme: add notify opt
For sending a notification on error
2025-06-17 12:49:16 +10:00
2 * r + 2 * t 9b58f7bf02 wallpaper: fix smart mode
Do not switch mode if not dynamic scheme
2025-06-17 12:13:21 +10:00
2 * r + 2 * t 3c1e9d87a6 feat: theme qt 2025-06-16 17:36:38 +10:00
2 * r + 2 * t edbaa9d674 theme: fix terminal colours 2025-06-16 00:09:51 +10:00
2 * r + 2 * t 3d0fdaf3c1 feat: theme gtk 2025-06-15 23:50:20 +10:00
2 * r + 2 * t 31bc0d560f theme: always write 2025-06-15 23:32:07 +10:00
2 * r + 2 * t 96e09c7bda theme: save sequences to state file 2025-06-15 18:40:23 +10:00
2 * r + 2 * t 8d86facd2f material: fix colour generation
score needs to take a string path
2025-06-15 16:16:49 +10:00
2 * r + 2 * t 8889378c1d wallpaper: fix print opt
Print actual scheme, not just colours
2025-06-15 14:09:18 +10:00
2 * r + 2 * t 4409620ac7 feat: impl pip subcommand 2025-06-14 15:34:47 +10:00
2 * r + 2 * t b805f8d677 feat: impl recording subcommand 2025-06-14 02:11:10 +10:00
2 * r + 2 * t 9da9d7bb1b wallpaper: fix when no wall 2025-06-13 14:50:25 +10:00
2 * r + 2 * t ec4bd7826a internal: fix file perms 2025-06-13 14:39:33 +10:00
2 * r + 2 * t 796d538b16 feat: impl screenshot command 2025-06-13 00:42:46 +10:00