2024-02-04 11:26:24 +00:00
{
"$schema" : "http://json-schema.org/draft-07/schema#" ,
2024-06-16 23:28:24 +00:00
"$id" : "https://github.com/ClementTsang/bottom/blob/main/schema/v1.0/bottom.json" ,
"$comment" : "https://clementtsang.github.io/bottom/0.9.6/configuration/config-file" ,
"title" : "Schema for bottom's configs (v1.0)" ,
2024-02-04 11:26:24 +00:00
"type" : "object" ,
"definitions" : {
"row" : {
"items" : {
"properties" : {
"ratio" : {
"default" : 1 ,
"type" : "integer"
} ,
"type" : {
"enum" : [ "cpu" , "mem" , "proc" , "net" , "temp" , "disk" , "empty" ] ,
"type" : "string"
} ,
"default" : {
"default" : true ,
"type" : "boolean"
}
} ,
"patternProperties" : {
"row(.child)+" : {
"$ref" : "#/definitions/row"
}
} ,
"type" : "object"
} ,
"type" : "array"
} ,
"filter" : {
"description" : "hide specific temperature sensors, network interfaces, and disks using filters" ,
"properties" : {
"is_list_ignored" : {
"default" : true ,
"type" : "boolean"
} ,
"list" : {
"type" : "array"
} ,
"regex" : {
"default" : true ,
"type" : "boolean"
} ,
"case_sensitive" : {
"default" : false ,
"type" : "boolean"
} ,
"whole_word" : {
"default" : false ,
"type" : "boolean"
}
} ,
"type" : "object"
}
} ,
"properties" : {
"flags" : {
"description" : "This group of options represents a command-line flag/option. Flags explicitly added when running (ie: btm -a) will override this config file if an option is also set here" ,
"properties" : {
"hide_avg_cpu" : {
"default" : false ,
"description" : "Whether to hide the average cpu entry" ,
"type" : "boolean"
} ,
"dot_marker" : {
"default" : false ,
"description" : "Whether to use dot markers rather than braille" ,
"type" : "boolean"
} ,
"rate" : {
"default" : 1000 ,
"description" : "The update rate of the application" ,
"type" : "integer"
} ,
"left_legend" : {
"default" : false ,
"description" : "Whether to put the CPU legend to the left" ,
"type" : "boolean"
} ,
"current_usage" : {
"default" : false ,
"description" : "Whether to set CPU% on a process to be based on the total CPU or just current usage" ,
"type" : "boolean"
} ,
"unnormalized_cpu" : {
"default" : false ,
"description" : "Whether to set CPU% on a process to be based on the total CPU or per-core CPU% (not divided by the number of cpus)" ,
"type" : "boolean"
} ,
"group_processes" : {
"default" : false ,
"description" : "Whether to group processes with the same name together by default" ,
"type" : "boolean"
} ,
"case_sensitive" : {
"default" : false ,
"description" : "Whether to make process searching case sensitive by default" ,
"type" : "boolean"
} ,
"whole_word" : {
"default" : false ,
"description" : "Whether to make process searching look for matching the entire word by default" ,
"type" : "boolean"
} ,
"regex" : {
"default" : false ,
"description" : "Whether to make process searching use regex by default" ,
"type" : "boolean"
} ,
"temperature_type" : {
"default" : "k" ,
"enum" : [ "k" , "f" , "c" , "kelvin" , "fahrenheit" , "celsius" ] ,
"description" : "Defaults to Celsius" ,
"type" : "string"
} ,
"default_time_value" : {
"default" : 60000 ,
"description" : "The default time interval in milliseconds" ,
"type" : "integer"
} ,
"time_delta" : {
"default" : 15000 ,
"description" : "The time delta on each zoom in/out action in milliseconds" ,
"type" : "integer"
} ,
"hide_time" : {
"default" : false ,
"description" : "Hides the time scale" ,
"type" : "boolean"
} ,
"default_widget_type" : {
"default" : "proc" ,
"description" : "Override layout default widget" ,
"type" : "string"
} ,
"default_widget_count" : {
"default" : 1 ,
"description" : "Override layout default widget" ,
"type" : "integer"
} ,
"expanded_on_startup" : {
"default" : true ,
"description" : "Expand selected widget upon starting the app" ,
"type" : "boolean"
} ,
"basic" : {
"default" : false ,
"description" : "Use basic mode" ,
"type" : "boolean"
} ,
"use_old_network_legend" : {
"default" : false ,
"description" : "Use the old network legend style" ,
"type" : "boolean"
} ,
"hide_table_gap" : {
"default" : false ,
"description" : "Remove space in tables" ,
"type" : "boolean"
} ,
"battery" : {
"default" : false ,
"description" : "Show the battery widgets" ,
"type" : "boolean"
} ,
"disable_click" : {
"default" : false ,
"description" : "Disable mouse clicks" ,
"type" : "boolean"
} ,
"color" : {
"default" : "default" ,
"enum" : [
"default" ,
"default-light" ,
"gruvbox" ,
"gruvbox-light" ,
"nord" ,
"nord-light"
] ,
"description" : "Built-in themes" ,
"type" : "string"
} ,
2024-05-27 05:16:37 +00:00
"process_memory_as_value" : {
2024-02-04 11:26:24 +00:00
"default" : false ,
"description" : "Show memory values in the processes widget as values by default" ,
"type" : "boolean"
} ,
"tree" : {
"default" : false ,
"description" : "Show tree mode by default in the processes widget" ,
"type" : "boolean"
} ,
"show_table_scroll_position" : {
"default" : false ,
"description" : "Shows an indicator in table widgets tracking where in the list you are" ,
"type" : "boolean"
} ,
"process_command" : {
"default" : false ,
"description" : "Show processes as their commands by default in the process widget" ,
"type" : "boolean"
} ,
"network_use_binary_prefix" : {
"default" : false ,
"description" : "Displays the network widget with binary prefixes" ,
"type" : "boolean"
} ,
"network_use_bytes" : {
"default" : false ,
"description" : "Displays the network widget using bytes" ,
"type" : "boolean"
} ,
"network_use_log" : {
"default" : false ,
"description" : "Displays the network widget with a log scale" ,
"type" : "boolean"
} ,
"disable_advanced_kill" : {
"default" : false ,
"description" : "Hides advanced options to stop a process on Unix-like systems" ,
"type" : "boolean"
} ,
"enable_gpu_memory" : {
"default" : false ,
"description" : "Shows GPU(s) memory" ,
"type" : "boolean"
} ,
"retention" : {
"default" : "10m" ,
"description" : "How much data is stored at once in terms of time" ,
"type" : "string"
}
} ,
"type" : "object"
} ,
"colors" : {
"description" : "These are all the components that support custom theming. Note that colour support will depend on terminal support" ,
"properties" : {
"table_header_color" : {
"default" : "LightBlue" ,
"description" : "Represents the colour of table headers (processes, CPU, disks, temperature)" ,
"type" : "string"
} ,
"widget_title_color" : {
"default" : "Gray" ,
"description" : "Represents the colour of the label each widget has" ,
"type" : "string"
} ,
"avg_cpu_color" : {
"default" : "Red" ,
"description" : "Represents the average CPU color" ,
"type" : "string"
} ,
"cpu_core_colors" : {
"items" : {
"uniqueItems" : true ,
"minItems" : 1 ,
"type" : "string"
} ,
"default" : [
"LightMagenta" ,
"LightYellow" ,
"LightCyan" ,
"LightGreen" ,
"LightBlue" ,
"LightRed" ,
"Cyan" ,
"Green" ,
"Blue" ,
"Red"
] ,
"description" : "Represents the colour the core will use in the CPU legend and graph" ,
"type" : "array"
} ,
"ram_color" : {
"default" : "LightMagenta" ,
"description" : "Represents the colour RAM will use in the memory legend and graph" ,
"type" : "string"
} ,
"swap_color" : {
"default" : "LightYellow" ,
"description" : "Represents the colour SWAP will use in the memory legend and graph" ,
"type" : "string"
} ,
"arc_color" : {
"default" : "LightCyan" ,
"description" : "Represents the colour ARC will use in the memory legend and graph" ,
"type" : "string"
} ,
"gpu_core_colors" : {
"items" : {
"uniqueItems" : true ,
"minItems" : 1 ,
"type" : "string"
} ,
"default" : [
"LightGreen" ,
"LightBlue" ,
"LightRed" ,
"Cyan" ,
"Green" ,
"Blue" ,
"Red"
] ,
"description" : "Represents the colour the GPU will use in the memory legend and graph" ,
"type" : "array"
} ,
"rx_color" : {
"default" : "LightCyan" ,
"description" : "Represents the colour rx will use in the network legend and graph" ,
"type" : "string"
} ,
"tx_color" : {
"default" : "LightGreen" ,
"description" : "Represents the colour tx will use in the network legend and graph" ,
"type" : "string"
} ,
"border_color" : {
"default" : "Gray" ,
"description" : "Represents the colour of the border of unselected widgets" ,
"type" : "string"
} ,
"highlighted_border_color" : {
"default" : "LightBlue" ,
"description" : "Represents the colour of the border of selected widgets" ,
"type" : "string"
} ,
"text_color" : {
"default" : "Gray" ,
"description" : "Represents the colour of most text" ,
"type" : "string"
} ,
"selected_text_color" : {
"default" : "Black" ,
"description" : "Represents the colour of text that is selected" ,
"type" : "string"
} ,
"selected_bg_color" : {
"default" : "LightBlue" ,
"description" : "Represents the background colour of text that is selected" ,
"type" : "string"
} ,
"graph_color" : {
"default" : "Gray" ,
"description" : "Represents the colour of the lines and text of the graph" ,
"type" : "string"
} ,
"high_battery_color" : {
"default" : "green" ,
"description" : "Represents the colours of the battery based on charge" ,
"type" : "string"
} ,
"medium_battery_color" : {
"default" : "yellow" ,
"description" : "Represents the colours of the battery based on charge" ,
"type" : "string"
} ,
"low_battery_color" : {
"default" : "red" ,
"description" : "Represents the colours of the battery based on charge" ,
"type" : "string"
}
}
} ,
"row" : {
"$ref" : "#/definitions/row"
} ,
"disk_filter" : {
"$ref" : "#/definitions/filter"
} ,
"mount_filter" : {
"$ref" : "#/definitions/filter"
} ,
"temp_filter" : {
"$ref" : "#/definitions/filter"
} ,
"net_filter" : {
"$ref" : "#/definitions/filter"
}
}
}