id = "sketchybar" name = "SketchyBar" homepage = "https://felixkratz.github.io/SketchyBar/" # The project's own repository description. description = "A highly customizable macOS status bar replacement" # The project's own mark, from the images in its repository — the icon alone, # not the wide lockup beside it. icon = "https://raw.githubusercontent.com/FelixKratz/SketchyBar/master/images/Sbar_icon.svg" executables = ["sketchybar"] platforms = ["macos"] [dotfiles] # `get_config_file` in the project's own src/hotload.c is the whole story. It # tries, in order: # # getenv("XDG_CONFIG_HOME") + "/sketchybar/sketchybarrc" # getenv("HOME") + "/.config/sketchybar/sketchybarrc" # getenv("HOME") + "/.sketchybarrc" # # and `sketchybar --config ` overrides all three. The first two are one # location — sketchybar reads $XDG_CONFIG_HOME itself, so [configHome] is the # right root rather than a hard-coded ~/.config; on macOS that root is # ~/.config, which is where the setup guide tells the user to put the file # ("Copy the example configuration" to ~/.config/sketchybar/sketchybarrc). The # third is joined to the home directory and stays literal. # # The whole directory is listed, not just sketchybarrc: exec_config_file() # chdir()s into it and exports it as $CONFIG_DIR, and the setup guide names # ~/.config/sketchybar/plugins as "the default plugin folder" — the scripts # there are as much the user's configuration as the rc file that calls them. paths = [ "[configHome]/sketchybar/", "~/.sketchybarrc", ] # Nothing generated lives in the config directory: sketchybar keeps no cache or # state there, and its lock and log files are outside the home directory. # A shell script and the plugin scripts it calls. No credential file — though a # plugin a user wrote could of course read one from elsewhere. secret = [] # No machine_lines: the bar layout, colours, fonts and plugin list are the # whole reason to carry this directory.