-
-
Notifications
You must be signed in to change notification settings - Fork 11
Configuration
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",
"color_mode": "darken",
"splash": true
},
"workspaces": {
"always_show_id": false,
"enable_helper": true,
"hide_if_single": false
},
"screen_recording": {
"include_audio": true
},
"idle": {
"lock_timeout": 3600,
"ignore_dbus_inhibit": false,
"ignore_systemd_inhibit": false,
"ignore_wayland_inhibit": false,
"inhibit_sleep": 2,
"listeners": {}
},
"aliases": {
"terminal": "kitty",
"file_manager": "nautilus",
"media": "amberol"
},
"clock": {
"date_format": "%A %d, %H:%M"
},
"misc": {
"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:
string - Description: Color generation mode
- Values:
"darken"or"lighten" - Default:
"darken"
- Type:
boolean - Description: Whether to enable Hyprland's random splash text to render on the wallpaper
- Default:
true
- 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: Idle daemon configuration. Colorshell wraps hypridle behind the scenes to do the work.
- Type:
number - Description: Idle timeout in seconds for the session to be locked(uses hyprlock)
- Default:
3600(1 hour)
- Type:
objectofobject - Description: List of custom idle listeners for hypridle. Add one in this format:
"listener_name": { "timeout": 1200, "on_timeout": "notify-send test 'listener notified!'" } - Default:
{}
They're the same as in the Hyprland Wiki/hypridle (custom listeners are an exception)
You can add custom listeners by using the idle:listeners property.
- Type:
object - Description: App/Command alias list. This is internally used to launch default applications, like
file_managerwith the SUPER + E bind,terminalfor the default terminal andmediafor the default media player. But you can also add your own aliases for you to use in your user config.(p.s.: You can manually launch these aliases withcolorshell run %alias_name(keep the%character for aliases))
- 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: 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 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 ❤️
colorshell is a project made by retrozinndev, licensed under BSD-3-Clause.