-
-
Notifications
You must be signed in to change notification settings - Fork 15
Configuration
João Dias edited this page Jul 22, 2026
·
12 revisions
This page is a documentation for colorshell's configuration file, located on XDG_CONFIG_HOME/colorshell/config.json.
Usually, colorshell will write a default config if it doesn't exist in your user config directory: XDG_CONFIG_HOME/colorshell/config.json or ~/.config/colorshell/config.json.
config.example.json
{
"notifications": {
"timeout_low": 4000,
"timeout_normal": 6000,
"timeout_critical": 0,
"position_h": "right",
"position_v": "top",
"dismiss_on_unhover": false,
"hold_on_hover": true
},
"night_light": {
"save_on_shutdown": true
},
"wallpaper": {
"positioning": "cover",
"splash": true
},
"color": {
"backend": "default"
},
"workspaces": {
"always_show_id": false,
"enable_helper": true,
"hide_if_single": false
},
"screen_recording": {
"include_audio": true
},
"aliases": {
"terminal": "kitty",
"file_manager": "nautilus",
"media": "amberol"
},
"runner": {
"search_on_open": false,
"max_results": 24,
"ignore_empty_search": true,
"show_tips": true
},
"clock": {
"date_format": "%A %d, %H:%M"
},
"misc": {
"match_window_border_color": true,
"play_bell_on_volume_change": true
}
}Note
Property names and locations are subject to change, so keep an eye on breaking changes!
(You can also subscribe to the issue to receive notifications about them on GitHub)
- Type:
object - Description: Configure notification timeouts, position and other features.
- Type:
number - Description: Low-priority notification timeout in milliseconds
- Default:
4000
- Type:
number - Description: Common notification timeout in milliseconds
- Default:
6000
- Type:
number - Description: Critical notification timeout in milliseconds (0ms makes the notification stay, until manual dismiss)
- Default:
0
- Type:
string - Description: Horizontal position of the notification popup
- Values:
"left","center"or"right" - Default:
"right"
- Type:
string - Description: Vertical position of the notification popup
- Values:
"top","center"or"bottom" - Default:
"top"
- Type:
boolean - Description: Whether to instantly dismiss the notification after unhovering the popup
- Default:
false
- Type:
boolean - Description: Whether to pause the notification timeout while hovering the notification
- Default:
true
- Type:
object - Description: Configure the hyprsunset blue-light filter
- Type:
boolean - Description: Whether to save the night light temperature and gamma properties on disk on power/session actions(suspend, log out, power off, reboot)
- Default:
true
- Type:
object - Description: Configure wallpaper placement and color generation options
- Type:
string - Description: Wallpaper positioning method
- Values:
"fill","cover","contain"or"tile" - Default:
"cover"
- Type:
boolean - Description: Whether to enable Hyprland's random splash text to render on the wallpaper
- Default:
true
- Type:
object - Description: Modify color engine settings
- Type:
string - Description: The color engine's preferred backend
- Default:
"default" - Options:
"wal"(default),"colorthief","modern_colorthief","haishoku"... (seewal --backendfor a complete list)
- Type:
object - Description: Configure the workspace indicator widget of the top bar
- Type:
boolean - Description: Whether to always show the workspace ID(number) in the workspace indicators
- Default:
false
- Type:
boolean - Description: Whether to enable colorshell's Workspace Helper, which automatically shows the workspace ID for better navigation between distant workspaces (e.g.: if there are only two workspaces(1 and 5), colorshell will automatically reveal the 5th workspace ID for better keyboard navigation(only if
workspaces:always_show_idis disabled)) - Default:
true
- Type:
boolean - Description: Whether to hide the workspaces indicator widget if there's only a single workspace in use
- Default:
false
- Type:
object - Description: Configure the screen recorder behavior.
- Type:
boolean - Description: Whether to include desktop audio in the screen recording
- Default:
true
- Type:
object - Description: App/Command alias list. This is internally used to launch default applications, like
file_manager,terminalandmedia. But you can also add your own custom aliases. (p.s.: You can manually launch these aliases withcolorshell run -a alias_name)
- Type:
string - Description: Default terminal command
- Default:
"kitty"
- Type:
string - Description: Default file manager command
- Default:
"nautilus"
- Type:
string - Description: Default media player command
- Default:
"amberol"
- Type:
object - Description: Tinker with the Multi-functional Runner's behavior
- Type:
boolean - Description: Whether to search upon opening the runner(useful with
runner:ignore_empty_searchto show results on open) - Default:
false
- Type:
number - Description: Limit of search results. Set to 0 for unlimited
- Default:
24
- Type:
boolean - Description: Whether to skip searching if the search string(text) is empty
- Default:
true
- Type:
boolean - Description: Whether to show placeholder results with tips on usage when the search is empty, or when there aren't results for the current search. Conflicts with
runner:ignore_empty_search(if both enabled, tips won't show when search is empty) - Default:
true
- Type:
object - Description: Clock format configurations
- Type:
string - Description: The top bar clock format (uses the same gnu's date format, see here)
- Default:
"%A %d, %H:%M"
- Type:
object - Description: Miscellaneous options to tweak shell features
- Type:
boolean - Description: Whether to match window's border color with the shell's color scheme
- Default:
true
- Type:
boolean - Description: Whether to play a bell sound effect on volume change(increase/decrease)
- Default:
true
if you like colorshell, please consider donating, so you can help me keep it up :D