Skip to content

joshcbrown/caydence

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

caydence

caydence is a small utility built on top of swww. the main goal is to switch wallpapers at specific intervals. it switches the wallpapers in two manners:

  • at regular intervals. the default is every 20 minutes, which i use as a reminder to look away from the screen;
  • according to the pomodoro method.
    • wallpaper switches are announced via libnotify when in this mode.

disclaimer

the tool is best used when you have your wallpaper in sight as you work. for those that don't use gaps/blur, i suggest looking elsewhere for a dedicated timer app (might i suggest pogodoro? :P)

usage

demo.mp4

to get started, run caydence daemon <wallpaper directory>. this will prompt the daemon to switch wallpapers every 20 minutes. you may want to pipe stdout to a log file, e.g. caydence daemon &> /tmp/caydence.log.

run one of the query commands via caydence client, e.g., caydence client toggle to switch to pomodoro mode. caydence will respond to client commands via libnotify.

there are a number of customisation options available; run caydence help <command> to see more.

the idea is that the daemon is started in a launch script on your wm/dm, and the client commands are given keybinds. in my sway config, i have:

exec swww init
exec ~/.cargo/bin/caydence daemon ~/.config/sway/wallpapers/

bindsym $mod+p exec ~/.cargo/bin/caydence client toggle
bindsym $mod+x exec ~/.cargo/bin/caydence client skip
bindsym $mod+t exec ~/.cargo/bin/caydence client time

install

caydence requires swww to run (and hence, can only be run on wayland). an error message will be printed if it isn't found on the path when running the daemon.

to install, run cargo install caydence.

nix flake

caydence is a nix flake, so if you're running flakes on nixOS you can install it via adding it to your inputs:

  inputs = {
    nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
    #...
    caydence.url = "github:joshcbrown/caydence";
  };

and then adding it to a list of packages via caydence.packages.${pkgs.system}.default.

i'm pretty sure this is total overkill, but i'm having fun so

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published