Files

4927 lines
272 KiB
JSON
Raw Permalink Normal View History

{
2024-02-26 16:39:41 +08:00
"$schema": "https://json-schema.org/draft-07/schema",
2023-06-18 02:07:34 +08:00
"$defs": {
"colors": {
"oneOf": [
{
"type": "string",
"$comment": "https://github.com/fastfetch-cli/fastfetch/wiki/Color-Format-Specification",
"examples": [
"reset_", "bright_", "dim_", "italic_", "underline_", "blink_", "inverse_", "hidden_", "strike_", "light_",
"black", "red", "green", "yellow", "blue", "magenta", "cyan", "white", "default"
]
},
{
"type": "null",
2026-04-16 18:27:11 +08:00
"$comment": "Disable default coloring"
}
2023-08-03 14:30:53 +08:00
]
2023-06-18 12:32:47 +08:00
},
"key": {
2026-04-16 18:27:11 +08:00
"description": "Module key\nUse a single space (` `) to hide the key",
"type": "string",
"minLength": 1
2023-06-18 12:32:47 +08:00
},
"keyColor": {
2026-04-16 18:27:11 +08:00
"description": "Color of the module key. Overrides `display.color.key`",
"$ref": "#/$defs/colors"
2023-06-18 12:32:47 +08:00
},
"keyWidth": {
2026-04-16 18:27:11 +08:00
"description": "Width of the module key. Overrides `display.keyWidth`",
"type": "integer",
"minimum": 1
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
2026-04-16 18:27:11 +08:00
"description": "Icon to display when `display.key.type` is set to `icon`",
2024-07-24 14:05:46 +08:00
"type": "string"
},
"outputColor": {
2026-04-16 18:27:11 +08:00
"description": "Color of the module output. Overrides `display.color.output`",
"$ref": "#/$defs/colors"
},
2024-11-14 14:22:24 +08:00
"percentType": {
2026-04-16 18:27:11 +08:00
"description": "Percentage output style",
2024-11-14 14:22:24 +08:00
"oneOf": [
{
"type": "number",
2026-04-16 18:27:11 +08:00
"description": "0 uses the global setting; 1 shows the percentage number; 2 shows a multicolor bar; 3 shows both; 6 shows only the bar; 9 shows a colored number; 10 shows a monochrome bar",
2024-11-14 14:22:24 +08:00
"minimum": 0,
"maximum": 255,
"default": 9
},
{
"type": "array",
2026-04-16 18:27:11 +08:00
"description": "Array of style flags",
2024-11-14 14:22:24 +08:00
"items": {
"enum": [
"num",
"bar",
"hide-others",
"num-color",
"bar-monochrome"
]
},
"uniqueItems": true,
2024-11-14 14:22:24 +08:00
"default": [
"num",
"num-color"
]
}
]
},
"percent": {
2026-04-16 18:27:11 +08:00
"description": "Color thresholds for percentage output",
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
"properties": {
"green": {
"type": "integer",
"minimum": 0,
"maximum": 100,
2026-04-16 18:27:11 +08:00
"description": "Values below this threshold are shown in green"
},
"yellow": {
"type": "integer",
"minimum": 0,
"maximum": 100,
2026-04-16 18:27:11 +08:00
"description": "Values between the green and yellow thresholds are shown in yellow.\nValues above the yellow threshold are shown in red"
2024-11-14 14:22:24 +08:00
},
"type": {
"$ref": "#/$defs/percentType"
}
}
2024-02-26 16:39:41 +08:00
},
"temperature": {
2026-04-16 18:27:11 +08:00
"description": "Whether to detect and display temperature, if supported",
2024-02-26 16:39:41 +08:00
"oneOf": [
{
"type": "boolean",
"default": false
},
{
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
2024-02-26 16:39:41 +08:00
"properties": {
"green": {
"type": "integer",
"minimum": 0,
"maximum": 100,
2026-04-16 18:27:11 +08:00
"description": "Values in Celsius below this threshold are shown in green"
2024-02-26 16:39:41 +08:00
},
"yellow": {
"type": "integer",
"minimum": 0,
"maximum": 100,
2026-04-16 18:27:11 +08:00
"description": "Values in Celsius between the green and yellow thresholds are shown in yellow.\nValues above the yellow threshold are shown in red"
2024-02-26 16:39:41 +08:00
}
}
}
]
},
"systems": {
"type": "string",
"enum": [
"Android",
"Linux",
"DragonFly",
"MidnightBSD",
"FreeBSD",
"macOS",
"Windows",
"SunOS",
"OpenBSD",
"NetBSD",
"Haiku"
]
},
"architectures": {
"type": "string",
"enum": [
"x86_64",
"i386",
"ia64",
"aarch64",
"arm",
"mips",
"powerpc",
"riscv",
"s390x",
"loongarch",
"sparc",
"alpha",
"hppa",
"m68k"
]
},
"conditions": {
2026-04-16 18:27:11 +08:00
"description": "Show the module only if these conditions are met",
"type": "object",
"additionalProperties": false,
"properties": {
"system": {
2026-04-16 18:27:11 +08:00
"description": "System to match",
"oneOf": [
{
"$ref": "#/$defs/systems"
},
{
"type": "array",
"uniqueItems": true,
"items": {
"$ref": "#/$defs/systems"
},
2026-04-16 18:27:11 +08:00
"description": "Array of systems to match"
},
{
"type": "null",
2026-04-16 18:27:11 +08:00
"description": "Set to null to disable this condition"
}
]
},
"!system": {
2026-04-16 18:27:11 +08:00
"description": "System not to match",
"oneOf": [
{
"$ref": "#/$defs/systems"
},
{
"type": "array",
"uniqueItems": true,
"items": {
"$ref": "#/$defs/systems"
},
2026-04-16 18:27:11 +08:00
"description": "Array of systems not to match"
},
{
"type": "null",
2026-04-16 18:27:11 +08:00
"description": "Set to null to disable this condition"
}
]
},
"arch": {
"description": "Architecture to match",
"oneOf": [
{
"$ref": "#/$defs/architectures"
},
{
"type": "array",
"uniqueItems": true,
"items": {
"$ref": "#/$defs/architectures"
},
"description": "Array of architectures to match"
},
{
"type": "null",
2026-04-16 18:27:11 +08:00
"description": "Set to null to disable this condition"
}
]
},
"!arch": {
2026-04-16 18:27:11 +08:00
"description": "Architecture not to match",
"oneOf": [
{
"$ref": "#/$defs/architectures"
},
{
"type": "array",
"uniqueItems": true,
"items": {
"$ref": "#/$defs/architectures"
},
2026-04-16 18:27:11 +08:00
"description": "Array of architectures not to match"
},
{
"type": "null",
2026-04-16 18:27:11 +08:00
"description": "Set to null to disable this condition"
}
]
},
"succeeded": {
"description": "Whether the module succeeded in the last run",
"oneOf": [
{
"type": "boolean",
"description": "True to show the module only if the last run succeeded; false to show it only if the last run failed"
},
{
"type": "null",
2026-04-16 18:27:11 +08:00
"description": "Set to null to disable this condition"
}
]
}
}
},
2025-07-30 14:30:36 +08:00
"spaceBeforeUnit": {
"type": "string",
2026-04-16 18:27:11 +08:00
"description": "Whether to insert a space before the unit",
2025-07-30 14:30:36 +08:00
"oneOf": [
{
"const": "default",
"description": "Use the default behavior of the module"
},
{
"const": "always",
"description": "Always add a space before the unit"
},
{
"const": "never",
"description": "Never add a space before the unit"
}
]
},
"batteryFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Battery` module. See Wiki for formatting syntax\n 1. {manufacturer}: Battery manufacturer\n 2. {model-name}: Battery model name\n 3. {technology}: Battery technology\n 4. {capacity}: Battery capacity (percentage num)\n 5. {status}: Battery status\n 6. {temperature}: Battery temperature (formatted)\n 7. {cycle-count}: Battery cycle count\n 8. {serial}: Battery serial number\n 9. {manufacture-date}: Battery manufacture date\n 10. {capacity-bar}: Battery capacity (percentage bar)\n 11. {time-days}: Battery time remaining days\n 12. {time-hours}: Battery time remaining hours\n 13. {time-minutes}: Battery time remaining minutes\n 14. {time-seconds}: Battery time remaining seconds\n 15. {time-formatted}: Battery time remaining (formatted)",
"type": "string"
},
"biosFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `BIOS` module. See Wiki for formatting syntax\n 1. {date}: BIOS date\n 2. {release}: BIOS release\n 3. {vendor}: BIOS vendor\n 4. {version}: BIOS version\n 5. {type}: Firmware type",
"type": "string"
},
"bluetoothFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Bluetooth` module. See Wiki for formatting syntax\n 1. {name}: Name\n 2. {address}: Address\n 3. {type}: Type\n 4. {battery-percentage}: Battery percentage number\n 5. {connected}: Is connected\n 6. {battery-percentage-bar}: Battery percentage bar",
"type": "string"
},
"bluetoothradioFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `BluetoothRadio` module. See Wiki for formatting syntax\n 1. {name}: Radio name for discovering\n 2. {address}: Address\n 3. {lmp-version}: LMP version\n 4. {lmp-subversion}: LMP subversion\n 5. {version}: Bluetooth version\n 6. {vendor}: Vendor\n 7. {discoverable}: Discoverable\n 8. {connectable}: Connectable / Pairable",
"type": "string"
},
"boardFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Board` module. See Wiki for formatting syntax\n 1. {name}: Board name\n 2. {vendor}: Board vendor\n 3. {version}: Board version\n 4. {serial}: Board serial number",
"type": "string"
},
"bootmgrFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Bootmgr` module. See Wiki for formatting syntax\n 1. {name}: Name / description\n 2. {firmware-path}: Firmware file path\n 3. {firmware-name}: Firmware file name\n 4. {secure-boot}: Is secure boot enabled\n 5. {order}: Boot order",
"type": "string"
},
"brightnessFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Brightness` module. See Wiki for formatting syntax\n 1. {percentage}: Screen brightness (percentage num)\n 2. {name}: Screen name\n 3. {max}: Maximum brightness value\n 4. {min}: Minimum brightness value\n 5. {current}: Current brightness value\n 6. {percentage-bar}: Screen brightness (percentage bar)\n 7. {is-builtin}: Is built-in screen",
"type": "string"
},
"btrfsFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Btrfs` module. See Wiki for formatting syntax\n 1. {name}: Name / Label\n 2. {uuid}: UUID\n 3. {devices}: Associated devices\n 4. {features}: Enabled features\n 5. {used}: Size used\n 6. {allocated}: Size allocated\n 7. {total}: Size total\n 8. {used-percentage}: Used percentage num\n 9. {allocated-percentage}: Allocated percentage num\n 10. {used-percentage-bar}: Used percentage bar\n 11. {allocated-percentage-bar}: Allocated percentage bar\n 12. {node-size}: Node size\n 13. {sector-size}: Sector size",
"type": "string"
},
"cameraFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Camera` module. See Wiki for formatting syntax\n 1. {name}: Device name\n 2. {vendor}: Vendor\n 3. {colorspace}: Color space\n 4. {id}: Identifier\n 5. {width}: Width (in px)\n 6. {height}: Height (in px)",
"type": "string"
},
"chassisFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Chassis` module. See Wiki for formatting syntax\n 1. {type}: Chassis type\n 2. {vendor}: Chassis vendor\n 3. {version}: Chassis version\n 4. {serial}: Chassis serial number",
"type": "string"
},
2026-05-31 14:03:13 +08:00
"codecFormat": {
2026-05-31 19:55:47 +08:00
"description": "Output format for the `Codec` module. See Wiki for formatting syntax\n 1. {gpu}: GPU name\n 2. {direction}: Decoder / Encoder\n 3. {types}: Compatibility alias of codec types\n 4. {platform-api}: Platform API used for detection",
2026-05-31 14:03:13 +08:00
"type": "string"
},
"commandFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Command` module. See Wiki for formatting syntax\n 1. {result}: Command result",
"type": "string"
},
"cpuFormat": {
"description": "Output format for the `CPU` module. See Wiki for formatting syntax\n 1. {name}: Name\n 2. {vendor}: Vendor\n 3. {cores-physical}: Physical core count\n 4. {cores-logical}: Logical core count\n 5. {cores-online}: Online core count\n 6. {freq-base}: Base frequency (formatted)\n 7. {freq-max}: Max frequency (formatted)\n 8. {temperature}: Temperature (formatted)\n 9. {core-types}: Logical core count grouped by frequency\n 10. {packages}: Processor package count\n 11. {march}: CPU microarchitecture\n 12. {numa-nodes}: NUMA node count\n 13. {code-name}: CPU code name\n 14. {technology}: CPU technology",
"type": "string"
},
"cpucacheFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `CPUCache` module. See Wiki for formatting syntax\n 1. {result}: Separate result\n 2. {sum}: Sum result",
"type": "string"
},
"cpuusageFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `CPUUsage` module. See Wiki for formatting syntax\n 1. {avg}: CPU usage (percentage num, average)\n 2. {max}: CPU usage (percentage num, maximum)\n 3. {max-index}: CPU core index of maximum usage\n 4. {min}: CPU usage (percentage num, minimum)\n 5. {min-index}: CPU core index of minimum usage\n 6. {avg-bar}: CPU usage (percentage bar, average)\n 7. {max-bar}: CPU usage (percentage bar, maximum)\n 8. {min-bar}: CPU usage (percentage bar, minimum)",
"type": "string"
},
"cursorFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Cursor` module. See Wiki for formatting syntax\n 1. {theme}: Cursor theme\n 2. {size}: Cursor size",
"type": "string"
},
"datetimeFormat": {
2026-05-13 10:17:06 +08:00
"description": "Output format for the `DateTime` module. See Wiki for formatting syntax\n 1. {year}: Year\n 2. {year-short}: Last two digits of year\n 3. {month}: Month\n 4. {month-pretty}: Month with leading zero\n 5. {month-name}: Month name\n 6. {month-name-short}: Month name short\n 7. {week}: Week number on year\n 8. {weekday}: Weekday\n 9. {weekday-short}: Weekday short\n 10. {day-in-year}: Day in year\n 11. {day-in-month}: Day in month\n 12. {day-in-week}: Day in week\n 13. {hour}: Hour\n 14. {hour-pretty}: Hour with leading zero\n 15. {hour-12}: Hour 12h format\n 16. {hour-12-pretty}: Hour 12h format with leading zero\n 17. {minute}: Minute\n 18. {minute-pretty}: Minute with leading zero\n 19. {second}: Second\n 20. {second-pretty}: Second with leading zero\n 21. {offset-from-utc}: Offset from UTC in the ISO 8601 format\n 22. {timezone-name}: Locale-dependent timezone name or abbreviation\n 23. {day-pretty}: Day in month with leading zero\n 24. {am-pm}: AM or PM",
"type": "string"
},
"deFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `DE` module. See Wiki for formatting syntax\n 1. {process-name}: DE process name\n 2. {pretty-name}: DE pretty name\n 3. {version}: DE version",
"type": "string"
},
"displayFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Display` module. See Wiki for formatting syntax\n 1. {width}: Screen configured width (in pixels)\n 2. {height}: Screen configured height (in pixels)\n 3. {refresh-rate}: Screen configured refresh rate (in Hz)\n 4. {scaled-width}: Screen scaled width (in pixels)\n 5. {scaled-height}: Screen scaled height (in pixels)\n 6. {name}: Screen name\n 7. {type}: Screen type (Built-in or External)\n 8. {rotation}: Screen rotation (in degrees)\n 9. {is-primary}: True if being the primary screen\n 10. {physical-width}: Screen physical width (in millimeters)\n 11. {physical-height}: Screen physical height (in millimeters)\n 12. {inch}: Physical diagonal length in inches\n 13. {ppi}: Pixels per inch (PPI)\n 14. {bit-depth}: Bits per color channel\n 15. {hdr-enabled}: True if high dynamic range (HDR) mode is enabled\n 16. {manufacture-year}: Year of manufacturing\n 17. {manufacture-week}: Nth week of manufacturing in the year\n 18. {serial}: Serial number\n 19. {platform-api}: The platform API used when detecting the display\n 20. {hdr-compatible}: True if the display is HDR compatible\n 21. {scale-factor}: HiDPI scale factor\n 22. {preferred-width}: Screen preferred width (in pixels)\n 23. {preferred-height}: Screen preferred height (in pixels)\n 24. {preferred-refresh-rate}: Screen preferred refresh rate (in Hz)\n 25. {dpi}: DPI",
"type": "string"
},
"diskFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Disk` module. See Wiki for formatting syntax\n 1. {size-used}: Size used\n 2. {size-total}: Size total\n 3. {size-percentage}: Size percentage num\n 4. {files-used}: Files used\n 5. {files-total}: Files total\n 6. {files-percentage}: Files percentage num\n 7. {is-external}: True if external volume\n 8. {is-hidden}: True if hidden volume\n 9. {filesystem}: Filesystem\n 10. {name}: Label / name\n 11. {is-readonly}: True if read-only\n 12. {create-time}: Create time in local timezone\n 13. {size-percentage-bar}: Size percentage bar\n 14. {files-percentage-bar}: Files percentage bar\n 15. {days}: Days after creation\n 16. {hours}: Hours after creation\n 17. {minutes}: Minutes after creation\n 18. {seconds}: Seconds after creation\n 19. {milliseconds}: Milliseconds after creation\n 20. {mountpoint}: Mount point / drive letter\n 21. {mount-from}: Mount from (device path)\n 22. {years}: Years integer after creation\n 23. {days-of-year}: Days of year after creation\n 24. {years-fraction}: Years fraction after creation\n 25. {size-free}: Size free\n 26. {size-available}: Size available",
"type": "string"
},
"diskioFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `DiskIO` module. See Wiki for formatting syntax\n 1. {size-read}: Size of data read [per second] (formatted)\n 2. {size-written}: Size of data written [per second] (formatted)\n 3. {name}: Device name\n 4. {dev-path}: Device raw file path\n 5. {bytes-read}: Size of data read [per second] (in bytes)\n 6. {bytes-written}: Size of data written [per second] (in bytes)\n 7. {read-count}: Number of reads\n 8. {write-count}: Number of writes",
"type": "string"
},
"dnsFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `DNS` module. See Wiki for formatting syntax\n 1. {result}: DNS result",
"type": "string"
},
"editorFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Editor` module. See Wiki for formatting syntax\n 1. {type}: Type (Visual / Editor)\n 2. {name}: Name\n 3. {exe-name}: Exe name of real path\n 4. {path}: Full path of real path\n 5. {version}: Version",
"type": "string"
},
"fontFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Font` module. See Wiki for formatting syntax\n 1. {font1}: Font 1\n 2. {font2}: Font 2\n 3. {font3}: Font 3\n 4. {font4}: Font 4\n 5. {combined}: Combined fonts for display",
"type": "string"
},
"gamepadFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Gamepad` module. See Wiki for formatting syntax\n 1. {name}: Name\n 2. {serial}: Serial number\n 3. {battery-percentage}: Battery percentage num\n 4. {battery-percentage-bar}: Battery percentage bar",
"type": "string"
},
"gpuFormat": {
2026-06-23 10:58:51 +08:00
"description": "Output format for the `GPU` module. See Wiki for formatting syntax\n 1. {vendor}: GPU vendor\n 2. {name}: GPU name\n 3. {driver}: GPU driver\n 4. {temperature}: GPU temperature\n 5. {core-count}: GPU core count\n 6. {type}: GPU type\n 7. {dedicated-total}: GPU total dedicated memory\n 8. {dedicated-used}: GPU used dedicated memory\n 9. {shared-total}: GPU total shared memory\n 10. {shared-used}: GPU used shared memory\n 11. {platform-api}: The platform API used when detecting the GPU\n 12. {frequency}: Current frequency in GHz\n 13. {index}: GPU vendor specific index\n 14. {dedicated-percentage-num}: Dedicated memory usage percentage num\n 15. {dedicated-percentage-bar}: Dedicated memory usage percentage bar\n 16. {shared-percentage-num}: Shared memory usage percentage num\n 17. {shared-percentage-bar}: Shared memory usage percentage bar\n 18. {core-usage-num}: Core usage percentage num\n 19. {core-usage-bar}: Core usage percentage bar\n 20. {memory-type}: Memory type (Windows only)\n 21. {pcie-max-speed}: PCIe maximum speed in gen and lanes\n 22. {pcie-curr-speed}: PCIe current speed in gen and lanes",
"type": "string"
},
"hostFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Host` module. See Wiki for formatting syntax\n 1. {family}: Product family\n 2. {name}: Product name\n 3. {version}: Product version\n 4. {sku}: Product sku\n 5. {vendor}: Product vendor\n 6. {serial}: Product serial number\n 7. {uuid}: Product uuid",
"type": "string"
},
"iconsFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Icons` module. See Wiki for formatting syntax\n 1. {icons1}: Icons part 1\n 2. {icons2}: Icons part 2",
"type": "string"
},
"initsystemFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `InitSystem` module. See Wiki for formatting syntax\n 1. {name}: Init system name\n 2. {exe}: Init system exe path\n 3. {version}: Init system version path\n 4. {pid}: Init system pid",
"type": "string"
},
"kernelFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Kernel` module. See Wiki for formatting syntax\n 1. {sysname}: Sysname\n 2. {release}: Release\n 3. {version}: Version\n 4. {arch}: Architecture\n 5. {display-version}: Display version\n 6. {page-size}: Page size",
"type": "string"
},
"keyboardFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Keyboard` module. See Wiki for formatting syntax\n 1. {name}: Name\n 2. {serial}: Serial number",
"type": "string"
},
"lmFormat": {
2026-08-31 14:33:43 +08:00
"description": "Output format for the `LM` module. See Wiki for formatting syntax\n 1. {service}: LM service / process name\n 2. {pretty-name}: LM pretty name\n 3. {version}: LM version",
"type": "string"
},
"loadavgFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Loadavg` module. See Wiki for formatting syntax\n 1. {loadavg1}: Load average over 1min\n 2. {loadavg2}: Load average over 5min\n 3. {loadavg3}: Load average over 15min",
"type": "string"
},
"localeFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Locale` module. See Wiki for formatting syntax\n 1. {result}: Locale code",
"type": "string"
},
"localipFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `LocalIp` module. See Wiki for formatting syntax\n 1. {ipv4}: IPv4 address\n 2. {ipv6}: IPv6 address\n 3. {mac}: MAC address\n 4. {ifname}: Interface name\n 5. {is-default-route}: Is default route\n 6. {mtu}: MTU size in bytes\n 7. {speed}: Link speed (formatted)\n 8. {flags}: Interface flags",
"type": "string"
},
"mediaFormat": {
2026-05-13 10:17:06 +08:00
"description": "Output format for the `Media` module. See Wiki for formatting syntax\n 1. {combined}: Pretty media name\n 2. {title}: Media name\n 3. {artist}: Artist name\n 4. {album}: Album name\n 5. {status}: Status\n 6. {progress}: Progress in text\n 7. {progress-num}: Progress in percentage (number)\n 8. {progress-bar}: Progress in percentage (bar)\n 9. {player-name}: Player name\n 10. {player-id}: Player ID\n 11. {url}: URL",
"type": "string"
},
"memoryFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Memory` module. See Wiki for formatting syntax\n 1. {used}: Used size\n 2. {total}: Total size\n 3. {percentage}: Percentage used (num)\n 4. {percentage-bar}: Percentage used (bar)",
"type": "string"
},
"monitorFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Monitor` module. See Wiki for formatting syntax\n 1. {name}: Display name\n 2. {width}: Native resolution width in pixels\n 3. {height}: Native resolution height in pixels\n 4. {physical-width}: Physical width in millimeters\n 5. {physical-height}: Physical height in millimeters\n 6. {inch}: Physical diagonal length in inches\n 7. {ppi}: Pixels per inch (PPI)\n 8. {manufacture-year}: Year of manufacturing\n 9. {manufacture-week}: Nth week of manufacturing in the year\n 10. {serial}: Serial number\n 11. {refresh-rate}: Maximum refresh rate in Hz\n 12. {hdr-compatible}: True if the display is HDR compatible",
"type": "string"
},
"mouseFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Mouse` module. See Wiki for formatting syntax\n 1. {name}: Mouse name\n 2. {serial}: Mouse serial number",
"type": "string"
},
"netioFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `NetIO` module. See Wiki for formatting syntax\n 1. {rx-size}: Size of data received [per second] (formatted)\n 2. {tx-size}: Size of data sent [per second] (formatted)\n 3. {ifname}: Interface name\n 4. {is-default-route}: Is default route\n 5. {rx-bytes}: Size of data received [per second] (in bytes)\n 6. {tx-bytes}: Size of data sent [per second] (in bytes)\n 7. {rx-packets}: Number of packets received [per second]\n 8. {tx-packets}: Number of packets sent [per second]\n 9. {rx-errors}: Number of errors received [per second]\n 10. {tx-errors}: Number of errors sent [per second]\n 11. {rx-drops}: Number of packets dropped when receiving [per second]\n 12. {tx-drops}: Number of packets dropped when sending [per second]",
"type": "string"
},
"openclFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `OpenCL` module. See Wiki for formatting syntax\n 1. {version}: Platform version\n 2. {name}: Platform name\n 3. {vendor}: Platform vendor",
"type": "string"
},
"openglFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `OpenGL` module. See Wiki for formatting syntax\n 1. {version}: OpenGL version\n 2. {renderer}: OpenGL renderer\n 3. {vendor}: OpenGL vendor\n 4. {slv}: OpenGL shading language version\n 5. {library}: OpenGL library used",
"type": "string"
},
"osFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `OS` module. See Wiki for formatting syntax\n 1. {sysname}: Name of the kernel\n 2. {name}: Name of the OS\n 3. {pretty-name}: Pretty name of the OS, if available\n 4. {id}: ID of the OS\n 5. {id-like}: ID like of the OS\n 6. {variant}: Variant of the OS\n 7. {variant-id}: Variant ID of the OS\n 8. {version}: Version of the OS\n 9. {version-id}: Version ID of the OS\n 10. {codename}: Version codename of the OS\n 11. {build-id}: Build ID of the OS\n 12. {arch}: Architecture of the OS",
"type": "string"
},
"packagesFormat": {
"description": "Output format for the `Packages` module. See Wiki for formatting syntax\n 1. {am-system}: Number of am-system packages\n 2. {am-user}: Number of am-user (aka appman) packages\n 3. {appimage}: Number of appimage packages\n 4. {apk}: Number of apk packages\n 5. {brew}: Number of brew packages\n 6. {brew-cask}: Number of brew-cask packages\n 7. {cards}: Number of cards packages\n 8. {choco}: Number of choco packages\n 9. {crux}: Number of crux packages\n 10. {dpkg}: Number of dpkg packages\n 11. {emerge}: Number of emerge packages\n 12. {eopkg}: Number of eopkg packages\n 13. {flatpak-system}: Number of flatpak-system app packages\n 14. {flatpak-user}: Number of flatpak-user app packages\n 15. {guix-home}: Number of guix-home packages\n 16. {guix-system}: Number of guix-system packages\n 17. {guix-user}: Number of guix-user packages\n 18. {hpkg-system}: Number of hpkg-system packages\n 19. {hpkg-user}: Number of hpkg-user packages\n 20. {install-release}: Number of install-release packages\n 21. {kiss}: Number of kiss packages\n 22. {linglong}: Number of linglong packages\n 23. {lpkg}: Number of lpkg packages\n 24. {lpkgbuild}: Number of lpkgbuild packages\n 25. {macports}: Number of macports packages\n 26. {mport}: Number of mport packages\n 27. {moss}: Number of moss packages\n 28. {nix-default}: Number of nix-default packages\n 29. {nix-system}: Number of nix-system packages\n 30. {nix-user}: Number of nix-user packages\n 31. {opkg}: Number of opkg packages\n 32. {pacman}: Number of pacman packages\n 33. {pacman-branch}: Pacman branch on manjaro\n 34. {pacstall}: Number of pacstall packages\n 35. {paludis}: Number of paludis packages\n 36. {pisi}: Number of pisi packages\n 37. {pkg}: Number of pkg packages\n 38. {pkgsrc}: Number of pkgsrc packages\n 39. {pkgtool}: Number of pkgtool packages\n 40. {porg}: Number of porg packages\n 41. {rpm}: Number of rpm packages\n 42. {scoop-global}: Number of scoop-global packages\n 43. {scoop-user}: Number of scoop-user packages\n 44. {snap}: Number of snap packages\n 45. {soar}: Number of soar packages\n 46. {sorcery}: Number of sorcery packages\n 47. {winget}: Number of winget packages\n 48. {xbps}: Number of xbps packages\n 49. {brew-all}: Total number of all brew packages\n 50. {flatpak-all}: Total number of all flatpak app packages\n 51. {guix-all}: Total number of all guix packages\n 52. {hpkg-all}: Total number of all hpkg packages\n 53. {nix-all}: Total number of all nix packages\n 54. {all}: Number of all packages",
"type": "string"
},
"physicaldiskFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `PhysicalDisk` module. See Wiki for formatting syntax\n 1. {size}: Device size (formatted)\n 2. {name}: Device name\n 3. {interconnect}: Device interconnect type\n 4. {dev-path}: Device raw file path\n 5. {serial}: Serial number\n 6. {physical-type}: Device kind (SSD or HDD)\n 7. {removable-type}: Device kind (Removable or Fixed)\n 8. {readonly-type}: Device kind (Read-only or Read-write)\n 9. {revision}: Product revision\n 10. {temperature}: Device temperature (formatted)",
"type": "string"
},
"physicalmemoryFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `PhysicalMemory` module. See Wiki for formatting syntax\n 1. {bytes}: Size (in bytes)\n 2. {size}: Size formatted\n 3. {max-speed}: Max speed (in MT/s)\n 4. {running-speed}: Running speed (in MT/s)\n 5. {type}: Type (DDR4, DDR5, etc.)\n 6. {form-factor}: Form factor (SODIMM, DIMM, etc.)\n 7. {locator}: Bank/Device Locator (BANK0/SIMM0, BANK0/SIMM1, etc.)\n 8. {vendor}: Vendor\n 9. {serial}: Serial number\n 10. {part-number}: Part number\n 11. {is-ecc-enabled}: True if ECC enabled\n 12. {is-installed}: True if a memory module is installed in the slot",
"type": "string"
},
"playerFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Player` module. See Wiki for formatting syntax\n 1. {player}: Pretty player name\n 2. {name}: Player name\n 3. {id}: Player Identifier\n 4. {url}: URL name",
"type": "string"
},
"poweradapterFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `PowerAdapter` module. See Wiki for formatting syntax\n 1. {watts}: Power adapter watts\n 2. {name}: Power adapter name\n 3. {manufacturer}: Power adapter manufacturer\n 4. {model}: Power adapter model\n 5. {description}: Power adapter description\n 6. {serial}: Power adapter serial number",
"type": "string"
},
"processesFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Processes` module. See Wiki for formatting syntax\n 1. {result}: Process count",
"type": "string"
},
"publicipFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `PublicIp` module. See Wiki for formatting syntax\n 1. {ip}: Public IP address\n 2. {location}: Location",
"type": "string"
},
"shellFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Shell` module. See Wiki for formatting syntax\n 1. {process-name}: Shell process name\n 2. {exe}: The first argument of the command line when running the shell\n 3. {exe-name}: Shell base name of arg0\n 4. {version}: Shell version\n 5. {pid}: Shell pid\n 6. {pretty-name}: Shell pretty name\n 7. {exe-path}: Shell full exe path\n 8. {tty}: Shell tty used",
"type": "string"
},
"soundFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Sound` module. See Wiki for formatting syntax\n 1. {is-main}: Is main sound device\n 2. {is-active}: Is active sound device\n 3. {name}: Device name\n 4. {volume-percentage}: Volume (in percentage num)\n 5. {identifier}: Identifier\n 6. {volume-percentage-bar}: Volume (in percentage bar)\n 7. {platform-api}: Platform API used",
"type": "string"
},
"swapFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Swap` module. See Wiki for formatting syntax\n 1. {used}: Used size\n 2. {total}: Total size\n 3. {percentage}: Percentage used (num)\n 4. {percentage-bar}: Percentage used (bar)\n 5. {name}: Name",
"type": "string"
},
"terminalFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Terminal` module. See Wiki for formatting syntax\n 1. {process-name}: Terminal process name\n 2. {exe}: The first argument of the command line when running the terminal\n 3. {exe-name}: Terminal base name of arg0\n 4. {pid}: Terminal pid\n 5. {pretty-name}: Terminal pretty name\n 6. {version}: Terminal version\n 7. {exe-path}: Terminal full exe path\n 8. {tty}: Terminal tty / pts used",
"type": "string"
},
"terminalfontFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `TerminalFont` module. See Wiki for formatting syntax\n 1. {combined}: Terminal font combined\n 2. {name}: Terminal font name\n 3. {size}: Terminal font size\n 4. {styles}: Terminal font styles",
"type": "string"
},
"terminalsizeFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `TerminalSize` module. See Wiki for formatting syntax\n 1. {rows}: Terminal rows\n 2. {columns}: Terminal columns\n 3. {width}: Terminal width (in pixels)\n 4. {height}: Terminal height (in pixels)",
"type": "string"
},
"terminalthemeFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `TerminalTheme` module. See Wiki for formatting syntax\n 1. {fg-color}: Terminal foreground color\n 2. {fg-type}: Terminal foreground type (Dark / Light)\n 3. {bg-color}: Terminal background color\n 4. {bg-type}: Terminal background type (Dark / Light)",
"type": "string"
},
"titleFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Title` module. See Wiki for formatting syntax\n 1. {user-name}: User name\n 2. {host-name}: Host name\n 3. {home-dir}: Home directory\n 4. {exe-path}: Executable path of current process\n 5. {user-shell}: User's default shell\n 6. {user-name-colored}: User name (colored)\n 7. {at-symbol-colored}: @ symbol (colored)\n 8. {host-name-colored}: Host name (colored)\n 9. {full-user-name}: Full user name\n 10. {user-id}: UID (*nix) / SID (Windows)\n 11. {pid}: PID of current process\n 12. {cwd}: CWD with home dir replaced by `~`",
"type": "string"
},
2026-08-24 16:05:36 +08:00
"topFormat": {
2026-08-31 20:27:22 +08:00
"description": "Output format for the `Top` module. See Wiki for formatting syntax\n 1. {name}: Process name\n 2. {pid}: Process ID\n 3. {cpu}: CPU usage\n 4. {mem}: Memory usage (RSS) in bytes\n 5. {disk-read}: Disk read bytes per second (0 if unsupported)\n 6. {disk-write}: Disk write bytes per second (0 if unsupported)\n 7. {threads}: Number of threads\n 8. {cpu-percentage}: CPU usage percentage\n 9. {mem-formatted}: Memory usage (RSS) formatted\n 10. {disk-read-formatted}: Disk read formatted\n 11. {disk-write-formatted}: Disk write formatted",
2026-08-24 16:05:36 +08:00
"type": "string"
},
"themeFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Theme` module. See Wiki for formatting syntax\n 1. {theme1}: Theme part 1\n 2. {theme2}: Theme part 2",
"type": "string"
},
"tpmFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `TPM` module. See Wiki for formatting syntax\n 1. {version}: TPM device version\n 2. {description}: TPM general description",
"type": "string"
},
"uptimeFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Uptime` module. See Wiki for formatting syntax\n 1. {days}: Days after boot\n 2. {hours}: Hours after boot\n 3. {minutes}: Minutes after boot\n 4. {seconds}: Seconds after boot\n 5. {milliseconds}: Milliseconds after boot\n 6. {boot-time}: Boot time in local timezone\n 7. {years}: Years integer after boot\n 8. {days-of-year}: Days of year after boot\n 9. {years-fraction}: Years fraction after boot\n 10. {formatted}: Formatted uptime",
"type": "string"
},
"usersFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Users` module. See Wiki for formatting syntax\n 1. {name}: User name\n 2. {host-name}: Host name\n 3. {session-name}: Session name\n 4. {client-ip}: Client IP\n 5. {login-time}: Login Time in local timezone\n 6. {days}: Days after login\n 7. {hours}: Hours after login\n 8. {minutes}: Minutes after login\n 9. {seconds}: Seconds after login\n 10. {milliseconds}: Milliseconds after login\n 11. {years}: Years integer after login\n 12. {days-of-year}: Days of year after login\n 13. {years-fraction}: Years fraction after login",
"type": "string"
},
"versionFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Version` module. See Wiki for formatting syntax\n 1. {project-name}: Project name\n 2. {version}: Version\n 3. {version-tweak}: Version tweak\n 4. {build-type}: Build type (debug or release)\n 5. {sysname}: System name\n 6. {arch}: Architecture\n 7. {cmake-built-type}: CMake build type when compiling (Debug, Release, RelWithDebInfo, MinSizeRel)\n 8. {compile-time}: Date time when compiling\n 9. {compiler}: Compiler used when compiling\n 10. {libc}: Libc used when compiling",
"type": "string"
},
"vulkanFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Vulkan` module. See Wiki for formatting syntax\n 1. {driver}: Driver name\n 2. {api-version}: API version\n 3. {conformance-version}: Conformance version\n 4. {instance-version}: Instance version",
"type": "string"
},
"wallpaperFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Wallpaper` module. See Wiki for formatting syntax\n 1. {file-name}: File name\n 2. {full-path}: Full path",
"type": "string"
},
"weatherFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Weather` module. See Wiki for formatting syntax\n 1. {result}: Weather result",
"type": "string"
},
"wmFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `WM` module. See Wiki for formatting syntax\n 1. {process-name}: WM process name\n 2. {pretty-name}: WM pretty name\n 3. {protocol-name}: WM protocol name\n 4. {plugin-name}: WM plugin name\n 5. {version}: WM version",
"type": "string"
},
"wifiFormat": {
2026-08-24 16:05:36 +08:00
"description": "Output format for the `Wifi` module. See Wiki for formatting syntax\n 1. {inf-desc}: Interface description\n 2. {inf-status}: Interface status\n 3. {status}: Connection status\n 4. {ssid}: Connection SSID\n 5. {bssid}: Connection BSSID\n 6. {protocol}: Connection protocol\n 7. {signal-quality}: Connection signal quality (percentage num)\n 8. {rx-rate}: Connection RX rate\n 9. {tx-rate}: Connection TX rate\n 10. {security}: Connection Security algorithm\n 11. {signal-quality-bar}: Connection signal quality (percentage bar)\n 12. {channel}: Connection channel number\n 13. {channel-width}: Connection channel width in MHz\n 14. {band}: Connection channel band in GHz",
"type": "string"
},
"wmthemeFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `WMTheme` module. See Wiki for formatting syntax\n 1. {result}: WM theme",
"type": "string"
},
"zpoolFormat": {
2026-04-16 18:27:11 +08:00
"description": "Output format for the `Zpool` module. See Wiki for formatting syntax\n 1. {name}: Zpool name\n 2. {guid}: Zpool guid\n 3. {state}: Zpool state\n 4. {size-used}: Size used\n 5. {size-allocated}: Size allocated\n 6. {size-total}: Size total\n 7. {used-percentage}: Size used percentage num\n 8. {allocated-percentage}: Size allocated percentage num\n 9. {frag-percentage}: Fragmentation percentage num\n 10. {used-percentage-bar}: Size used percentage bar\n 11. {allocated-percentage-bar}: Size allocated percentage bar\n 12. {frag-percentage-bar}: Fragmentation percentage bar\n 13. {is-readonly}: Is read-only",
"type": "string"
2023-06-18 02:07:34 +08:00
}
},
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
2023-07-21 09:46:38 +08:00
"title": "JSON config",
2026-04-16 18:27:11 +08:00
"description": "Fastfetch JSON config file. Usually located at `~/.config/fastfetch/config.jsonc`",
"properties": {
"$schema": {
"type": "string",
2026-04-16 18:27:11 +08:00
"description": "JSON Schema URL for validation and IDE support",
2023-07-21 09:46:38 +08:00
"format": "uri",
"default": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json"
},
"logo": {
2026-04-16 18:27:11 +08:00
"description": "Fastfetch logo configuration\nSee also https://github.com/fastfetch-cli/fastfetch/wiki/Logo-options",
"oneOf": [
{
"description": "Disable logo",
2024-06-21 10:05:54 +08:00
"type": "null",
"const": null
},
{
2026-04-16 18:27:11 +08:00
"description": "Path to a logo source file or the name of a built-in ASCII art logo",
"type": "string"
},
{
2026-04-16 18:27:11 +08:00
"description": "Fastfetch logo configuration",
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "Logo type",
"oneOf": [
{
"const": "auto",
2026-04-16 18:27:11 +08:00
"description": "If a value is provided, try a built-in logo first, then a file. Otherwise, auto-detect the logo. Explicit type is highly recommended when use image files."
},
{
"const": "builtin",
"description": "Built-in ASCII art"
},
{
"const": "small",
"description": "Built-in ASCII art, small version (not all logos support this option)"
},
{
"const": "file",
2026-04-16 18:27:11 +08:00
"description": "Text file with color code replacement"
},
{
"const": "file-raw",
"description": "Text file, printed as is"
},
{
"const": "data",
2026-04-16 18:27:11 +08:00
"description": "Text data with color code replacement"
},
{
"const": "data-raw",
"description": "Text data, printed as is"
},
{
"const": "command-raw",
2026-04-16 18:27:11 +08:00
"description": "Command that generates text data, printed as is"
},
{
"const": "sixel",
2026-04-16 18:27:11 +08:00
"description": "Image file rendered as sixel"
},
{
"const": "kitty",
2026-04-16 18:27:11 +08:00
"description": "Image file rendered using the Kitty graphics protocol"
},
{
"const": "kitty-direct",
2026-04-16 18:27:11 +08:00
"description": "Image file. Instructs the terminal emulator to read image data directly from the specified file"
},
{
"const": "kitty-icat",
2026-04-16 18:27:11 +08:00
"description": "Image file displayed using `kitten icat`. Requires the `kitten` binary to be installed"
},
{
"const": "iterm",
2026-04-16 18:27:11 +08:00
"description": "Image file rendered using the iTerm image protocol"
},
{
"const": "chafa",
2026-04-16 18:27:11 +08:00
"description": "Image file rendered as ASCII art using `libchafa`"
},
{
"const": "raw",
2026-04-16 18:27:11 +08:00
"description": "Image file rendered as a raw binary string"
},
{
"const": "none",
"description": "Disable logo printing"
}
],
"default": "auto"
},
"source": {
"type": "string",
2026-04-16 18:27:11 +08:00
"description": "Path to the logo source file"
},
"color": {
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
2025-04-04 18:15:54 +08:00
"description": "Override colors in the logo",
"properties": {
"1": {
"description": "Color 1",
"$ref": "#/$defs/colors"
},
"2": {
"description": "Color 2",
"$ref": "#/$defs/colors"
},
"3": {
"description": "Color 3",
"$ref": "#/$defs/colors"
},
"4": {
"description": "Color 4",
"$ref": "#/$defs/colors"
},
"5": {
"description": "Color 5",
"$ref": "#/$defs/colors"
},
"6": {
"description": "Color 6",
"$ref": "#/$defs/colors"
},
"7": {
"description": "Color 7",
"$ref": "#/$defs/colors"
},
"8": {
"description": "Color 8",
"$ref": "#/$defs/colors"
},
"9": {
"description": "Color 9",
"$ref": "#/$defs/colors"
}
2024-02-28 09:17:29 +08:00
}
},
"width": {
"oneOf": [
{
"type": "null",
2026-04-16 18:27:11 +08:00
"description": "Auto-detect the width (default)"
},
{
"type": "integer",
2026-04-16 18:27:11 +08:00
"description": "Width of the logo in characters. Required by some image protocols",
"minimum": 1
}
]
},
"height": {
"oneOf": [
{
"type": "null",
2026-04-16 18:27:11 +08:00
"description": "Auto-detect the height (default)"
},
{
"type": "integer",
2026-04-16 18:27:11 +08:00
"description": "Height of the logo in characters. Required by some image protocols",
"minimum": 1
}
]
},
"padding": {
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
2026-04-16 18:27:11 +08:00
"description": "Logo padding",
"properties": {
"top": {
"type": "integer",
2026-04-16 18:27:11 +08:00
"description": "Top padding of the logo",
"minimum": 0
},
"bottom": {
"type": "integer",
"description": "Bottom padding of the logo; only supported when position is `top`",
"minimum": 0
},
"left": {
"type": "integer",
2026-04-16 18:27:11 +08:00
"description": "Left padding of the logo",
"minimum": 0
},
"right": {
"type": "integer",
2026-04-16 18:27:11 +08:00
"description": "Right padding of the logo",
"minimum": 0
}
2024-02-28 09:17:29 +08:00
}
},
"printRemaining": {
"type": "boolean",
2026-04-16 18:27:11 +08:00
"description": "Whether to print any remaining logo lines when the logo is taller than the module list",
2025-04-04 18:15:54 +08:00
"default": true
},
"preserveAspectRatio": {
"type": "boolean",
2025-04-04 18:15:54 +08:00
"description": "Whether to preserve the aspect ratio of the logo. Supported by iTerm image protocol only",
"default": false
},
"recache": {
"type": "boolean",
"description": "If true, regenerate image logo cache",
"default": false
},
"position": {
"type": "string",
2026-04-16 18:27:11 +08:00
"description": "Position of the logo",
"enum": [
"left",
"top",
"right"
],
"default": "left"
2023-09-03 22:20:11 +08:00
},
"chafa": {
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
2025-04-04 18:15:54 +08:00
"description": "Chafa configuration. See chafa documentation for details",
"properties": {
"fgOnly": {
"type": "boolean",
"description": "Produce character-cell output using foreground colors only",
"default": false
},
"symbols": {
"type": "string",
"description": "Specify character symbols to employ in final output"
},
"canvasMode": {
"type": "string",
2025-04-04 18:15:54 +08:00
"description": "Determine how colors are used in the output. This value maps to enum ChafaCanvasMode.",
"oneOf": [
{
"const": "TRUECOLOR",
"description": "Use 24-bit true colors"
},
{
"const": "INDEXED_256",
"description": "Use 256 colors"
},
{
"const": "INDEXED_240",
"description": "Use 240 colors, but avoid using the lower 16 whose values vary between terminal environments"
},
{
"const": "INDEXED_16",
"description": "Use 16 colors using the aixterm ANSI extension"
},
{
"const": "FGBG_BGFG",
"description": "Use default foreground and background colors, plus inversion"
},
{
"const": "FGBG",
"description": "Use default foreground and background colors. No ANSI codes will be used"
},
{
"const": "INDEXED_8",
"description": "Use 8 colors, compatible with original ANSI X3.64"
},
{
"const": "INDEXED_16_8",
"description": "Use 16 FG colors (8 of which enabled with bold/bright) and 8 BG colors"
}
]
},
"colorSpace": {
"type": "string",
2025-04-04 18:15:54 +08:00
"description": "Set color space used for quantization. This value maps to enum ChafaColorSpace.",
"oneOf": [
{
"const": "RGB",
"description": "RGB color space. Fast but imprecise"
},
{
"const": "DIN99D",
"description": "DIN99d color space. Slower, but good perceptual color precision"
}
]
},
"ditherMode": {
"type": "string",
2025-04-04 18:15:54 +08:00
"description": "Set output dither mode (No effect with 24-bit color). This value maps to enum ChafaDitherMode.",
"oneOf": [
{
"const": "NONE",
"description": "No dithering"
},
{
"const": "ORDERED",
"description": "Ordered dithering (Bayer or similar)"
},
{
"const": "DIFFUSION",
"description": "Error diffusion dithering (Floyd-Steinberg or similar)"
}
]
}
2024-02-28 09:17:29 +08:00
}
}
2024-02-28 09:17:29 +08:00
}
}
]
},
"general": {
2026-04-16 18:27:11 +08:00
"description": "General Fastfetch configuration",
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
"properties": {
2023-08-15 17:10:09 +08:00
"thread": {
"type": "boolean",
2025-04-04 18:15:54 +08:00
"description": "Use separate threads for HTTP requests",
2023-08-15 17:10:09 +08:00
"default": true
},
"escapeBedrock": {
"type": "boolean",
"description": "On Bedrock Linux, whether to escape the bedrock jail",
"default": true
},
"playerName": {
"type": "string",
2025-04-04 18:15:54 +08:00
"description": "The name of the player to use for Media and Player modules. Linux only"
},
2023-07-31 23:11:39 +08:00
"dsForceDrm": {
2026-04-16 18:27:11 +08:00
"description": "Force display detection to use DRM (Linux only)",
"oneOf": [
{
2024-02-26 16:39:41 +08:00
"type": "boolean",
"const": false,
2023-12-14 15:49:43 +08:00
"description": "Try `wayland`, then `x11`, then `drm`"
},
{
"type": "string",
2025-04-04 18:15:54 +08:00
"description": "Use `/sys/class/drm` only",
"const": "sysfs-only"
},
{
2024-02-26 16:39:41 +08:00
"type": "boolean",
"const": true,
2025-04-04 18:15:54 +08:00
"description": "Try `libdrm` first, then `sysfs` if libdrm fails"
}
2023-12-14 15:49:43 +08:00
],
"default": false
2023-07-31 23:11:39 +08:00
},
2023-09-09 12:01:13 +08:00
"processingTimeout": {
"type": "integer",
"description": "Set the timeout (ms) when waiting for child processes, `-1` for no timeout",
"default": 5000
2024-06-25 16:15:35 +08:00
},
2024-10-02 00:43:31 +08:00
"detectVersion": {
"type": "boolean",
"description": "Whether to detect and display component versions. Mainly for benchmarking",
"default": true
}
2024-02-28 09:17:29 +08:00
}
},
"display": {
2026-04-16 18:27:11 +08:00
"description": "Configure output formatting",
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
"properties": {
"stat": {
2026-04-16 18:27:11 +08:00
"description": "Show execution time (in ms) for individual modules, optionally above a threshold",
2024-08-12 16:16:47 +08:00
"oneOf": [
{
"type": "boolean",
"default": false
},
{
"type": "integer",
"minimum": 1
}
]
},
"pipe": {
"type": "boolean",
2025-04-04 18:15:54 +08:00
"description": "Whether to disable colors (auto-detected based on isatty(1) by default)",
"default": false
},
"showErrors": {
"type": "boolean",
2026-04-16 18:27:11 +08:00
"description": "Whether to print errors to the console. If false, modules that error are ignored",
"default": false
},
"disableLinewrap": {
"type": "boolean",
2025-04-04 18:15:54 +08:00
"description": "Whether to disable line wrap during execution",
"default": true
},
"hideCursor": {
"type": "boolean",
2025-04-04 18:15:54 +08:00
"description": "Whether to hide the cursor during execution",
"default": true
},
"separator": {
"type": "string",
2026-04-16 18:27:11 +08:00
"description": "Separator between the key and value",
"default": ": "
},
"color": {
2026-04-16 18:27:11 +08:00
"description": "Color of keys and titles",
"oneOf": [
{
2026-04-16 18:27:11 +08:00
"description": "Color for both keys and titles",
2023-06-18 02:07:34 +08:00
"$ref": "#/$defs/colors"
},
{
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
"properties": {
"keys": {
2026-04-16 18:27:11 +08:00
"description": "Color of keys",
2023-06-18 02:07:34 +08:00
"$ref": "#/$defs/colors"
},
"title": {
2026-04-16 18:27:11 +08:00
"description": "Color of titles",
2023-06-18 02:07:34 +08:00
"$ref": "#/$defs/colors"
},
"output": {
2026-04-16 18:27:11 +08:00
"description": "Color of module output",
"$ref": "#/$defs/colors"
2024-05-28 16:13:06 +08:00
},
"separator": {
2026-04-16 18:27:11 +08:00
"description": "Color of the key-value separator",
2024-05-28 16:13:06 +08:00
"$ref": "#/$defs/colors"
}
2024-02-28 09:17:29 +08:00
}
}
]
},
2023-08-04 16:05:25 +08:00
"brightColor": {
2026-04-16 18:27:11 +08:00
"description": "Whether to print keys, titles, and the ASCII logo in bright colors",
2023-08-04 16:05:25 +08:00
"type": "boolean",
"default": true
},
2024-07-24 15:12:25 +08:00
"key": {
"type": "object",
"additionalProperties": false,
2026-04-16 18:27:11 +08:00
"description": "Configure how module keys are displayed",
2024-07-24 15:12:25 +08:00
"properties": {
"width": {
2026-04-16 18:27:11 +08:00
"description": "Key width in characters. Set to 0 to disable alignment",
2024-07-24 15:12:25 +08:00
"type": "integer",
"minimum": 0,
"default": 0
},
"type": {
"type": "string",
2026-04-16 18:27:11 +08:00
"description": "Whether to show a built-in icon before string keys",
"oneOf": [
{
"const": "none",
"description": "Disable keys"
},
{
"const": "string",
"description": "Show string keys"
},
{
"const": "icon",
2026-04-16 18:27:11 +08:00
"description": "Show the built-in icon (requires a recent Nerd Font)"
},
{
"const": "both",
"description": "Show both icon and string keys (alias of `both-1`)"
},
{
"const": "both-0",
"description": "Show both icon and string with no spaces between them"
},
{
"const": "both-1",
"description": "Show both icon and string with a space between them"
},
{
"const": "both-2",
"description": "Show both icon and string with 2 spaces between them"
},
{
"const": "both-3",
"description": "Show both icon and string with 3 spaces between them"
},
{
"const": "both-4",
"description": "Show both icon and string with 4 spaces between them"
}
2024-07-24 15:12:25 +08:00
],
"default": "string"
},
"paddingLeft": {
"type": "integer",
2026-04-16 18:27:11 +08:00
"description": "Left padding for keys",
2024-07-24 15:12:25 +08:00
"minimum": 0,
"default": 0
2026-08-14 23:33:54 +08:00
},
"language": {
"description": "Language used for module keys. `null` for auto detection based on system locale",
"oneOf": [
{
"type": "null",
"description": "Auto detection based on system locale"
},
{
"type": "string",
"const": "en",
"description": "English"
},
2026-08-16 10:51:42 +08:00
{
"type": "string",
"const": "ar",
"description": "Arabic"
},
2026-08-21 10:19:06 +08:00
{
"type": "string",
"const": "cs",
"description": "Czech"
},
2026-08-14 23:33:54 +08:00
{
"type": "string",
"const": "de",
"description": "German"
},
{
"type": "string",
"const": "es",
"description": "Spanish"
},
{
"type": "string",
"const": "fr",
"description": "French"
},
2026-08-20 16:25:32 +00:00
{
"type": "string",
"const": "gl",
"description": "Galician"
},
2026-08-16 10:51:42 +08:00
{
"type": "string",
"const": "he",
"description": "Hebrew"
},
2026-08-21 10:19:06 +08:00
{
"type": "string",
"const": "id",
"description": "Indonesian"
},
2026-08-14 23:33:54 +08:00
{
"type": "string",
"const": "it",
"description": "Italian"
},
{
"type": "string",
"const": "ja",
"description": "Japanese"
},
{
"type": "string",
"const": "ko",
"description": "Korean"
},
{
"type": "string",
"const": "pl",
"description": "Polish"
},
{
"type": "string",
2026-08-16 10:37:06 +08:00
"const": "pt",
"description": "Portuguese"
2026-08-14 23:33:54 +08:00
},
{
"type": "string",
"const": "ru",
"description": "Russian"
},
2026-08-21 10:19:06 +08:00
{
"type": "string",
"const": "tr",
"description": "Turkish"
},
{
"type": "string",
"const": "uk",
"description": "Ukrainian"
},
{
"type": "string",
"const": "vi",
"description": "Vietnamese"
},
2026-08-14 23:33:54 +08:00
{
"type": "string",
"const": "zh_CN",
"description": "Simplified Chinese"
},
{
"type": "string",
"const": "zh_TW",
"description": "Traditional Chinese"
}
],
"default": "en"
2024-07-24 15:12:25 +08:00
}
}
2024-07-24 11:13:37 +08:00
},
2023-10-29 00:17:24 +08:00
"size": {
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
2026-04-16 18:27:11 +08:00
"description": "Configure how sizes are displayed",
2023-10-29 00:17:24 +08:00
"properties": {
"binaryPrefix": {
"type": "string",
2025-04-04 18:15:54 +08:00
"description": "Set the binary prefix to use when formatting sizes",
"oneOf": [
{
"const": "iec",
"description": "1024 Bytes = 1 KiB, 1024 KiB = 1 MiB, ... (standard)"
},
{
"const": "si",
2025-02-27 21:10:57 +08:00
"description": "1000 Bytes = 1 kB, 1000 kB = 1 MB, ..."
},
{
"const": "jedec",
2025-02-27 21:10:57 +08:00
"description": "1024 Bytes = 1 KB, 1024 KB = 1 MB, ..."
}
2025-04-04 18:15:54 +08:00
],
"default": "iec"
},
2023-10-29 00:17:24 +08:00
"maxPrefix": {
"type": "string",
"description": "Set the largest binary prefix to use when formatting sizes",
2023-10-29 00:17:24 +08:00
"enum": ["B", "kB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"],
"default": "YB"
},
"ndigits": {
"type": "integer",
2026-04-16 18:27:11 +08:00
"description": "Number of decimal places to use when formatting sizes",
2023-10-29 00:17:24 +08:00
"minimum": 0,
"maximum": 9,
"default": 2
2025-07-30 14:30:36 +08:00
},
"spaceBeforeUnit": {
"$ref": "#/$defs/spaceBeforeUnit"
2023-10-29 00:17:24 +08:00
}
}
},
"temp": {
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
2026-04-16 18:27:11 +08:00
"description": "Configure how temperatures are displayed",
"properties": {
"unit": {
"type": "string",
2025-04-04 18:15:54 +08:00
"description": "Set the unit of temperature",
"oneOf": [
{
"const": "C",
"description": "Celsius"
},
{
"const": "F",
"description": "Fahrenheit"
},
{
"const": "K",
"description": "Kelvin"
},
{
"const": "D",
"description": "Default (alias for Celsius)"
}
],
2025-02-14 10:31:13 +08:00
"default": "D"
},
"ndigits": {
"type": "integer",
2026-04-16 18:27:11 +08:00
"description": "Number of decimal places to use when formatting temperatures",
"minimum": 0,
"maximum": 9,
"default": 1
},
"color": {
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
2026-04-16 18:27:11 +08:00
"description": "Colors used for different temperature states",
"properties": {
"green": {
"description": "Color used in green state",
2025-04-04 18:15:54 +08:00
"$ref": "#/$defs/colors",
"default": "green"
},
"yellow": {
"description": "Color used in yellow state",
2025-04-04 18:15:54 +08:00
"$ref": "#/$defs/colors",
"default": "light_yellow"
},
"red": {
"description": "Color used in red state",
2025-04-04 18:15:54 +08:00
"$ref": "#/$defs/colors",
"default": "light_red"
}
}
2025-07-30 14:30:36 +08:00
},
"spaceBeforeUnit": {
"$ref": "#/$defs/spaceBeforeUnit"
}
}
},
"bar": {
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
2026-04-16 18:27:11 +08:00
"description": "Bar configuration",
"properties": {
"char": {
"type": "object",
"additionalProperties": false,
2026-04-16 18:27:11 +08:00
"description": "Characters used in the bar",
"properties": {
"elapsed": {
"type": "string",
2026-04-16 18:27:11 +08:00
"description": "Character used for the elapsed portion",
"default": "■"
},
"total": {
"type": "string",
2026-04-16 18:27:11 +08:00
"description": "Character used for the remaining portion",
"default": "-"
}
}
},
"border": {
"oneOf": [
{
"type": "null",
"description": "Disable bar borders"
},
{
"type": "object",
"additionalProperties": false,
2026-04-16 18:27:11 +08:00
"description": "Strings used for percentage bar borders",
"properties": {
"left": {
"type": "string",
2026-04-16 18:27:11 +08:00
"description": "String used for the left border",
"default": "[ "
},
"right": {
"type": "string",
2026-04-16 18:27:11 +08:00
"description": "String used for the right border",
"default": " ]"
},
"leftElapsed": {
"type": "string",
2026-04-16 18:27:11 +08:00
"description": "If both `leftElapsed` and `rightElapsed` are set, the border is used as part of the bar content",
"default": ""
},
"rightElapsed": {
"type": "string",
2026-04-16 18:27:11 +08:00
"description": "If both `leftElapsed` and `rightElapsed` are set, the border is used as part of the bar content",
"default": ""
}
}
}
]
},
"color": {
"oneOf": [
{
"type": "null",
"description": "Disable color in percentage bars"
},
{
"type": "object",
"additionalProperties": false,
2026-04-16 18:27:11 +08:00
"description": "Colors used for percentage bars",
"properties": {
"elapsed": {
2026-04-16 18:27:11 +08:00
"description": "Color used for the elapsed portion of percentage bars\nBy default, it is selected automatically from `percent.color.{green,yellow,red}`",
"$ref": "#/$defs/colors",
"default": "auto"
},
"total": {
2026-04-16 18:27:11 +08:00
"description": "Color used for the remaining portion of percentage bars",
"$ref": "#/$defs/colors",
"default": "light_white"
},
"border": {
2026-04-16 18:27:11 +08:00
"description": "Color used for percentage bar borders",
"$ref": "#/$defs/colors",
"default": "light_white"
}
}
}
]
},
2023-08-16 16:46:21 +08:00
"width": {
"type": "integer",
2026-04-16 18:27:11 +08:00
"description": "Width of the bar in characters",
2023-08-16 16:46:21 +08:00
"minimum": 1,
"default": 10
}
}
},
2023-10-29 00:17:24 +08:00
"percent": {
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
2026-04-16 18:27:11 +08:00
"description": "Configure how percentages are displayed",
2023-10-29 00:17:24 +08:00
"properties": {
"type": {
2024-11-14 14:22:24 +08:00
"$ref": "#/$defs/percentType"
2023-10-29 00:17:24 +08:00
},
"ndigits": {
"type": "number",
2026-04-16 18:27:11 +08:00
"description": "Number of decimal places to use when formatting percentages",
2023-10-29 00:17:24 +08:00
"minimum": 0,
"maximum": 9,
"default": 0
2024-01-20 19:59:13 +08:00
},
"color": {
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
2026-04-16 18:27:11 +08:00
"description": "Colors used for different percentage states",
2024-01-20 19:59:13 +08:00
"properties": {
"green": {
"description": "Color used in green state",
2025-04-04 18:15:54 +08:00
"$ref": "#/$defs/colors",
"default": "green"
2024-01-20 19:59:13 +08:00
},
"yellow": {
"description": "Color used in yellow state",
2025-04-04 18:15:54 +08:00
"$ref": "#/$defs/colors",
"default": "light_yellow"
2024-01-20 19:59:13 +08:00
},
"red": {
"description": "Color used in red state",
2025-04-04 18:15:54 +08:00
"$ref": "#/$defs/colors",
"default": "light_red"
2024-01-20 19:59:13 +08:00
}
}
2025-07-30 14:30:36 +08:00
},
"spaceBeforeUnit": {
"$ref": "#/$defs/spaceBeforeUnit"
2025-07-30 15:06:16 +08:00
},
"width": {
"type": "integer",
2026-04-16 18:27:11 +08:00
"description": "Width of the percentage number in characters",
2025-07-30 15:06:16 +08:00
"minimum": 0,
"default": 0
}
2023-10-29 00:17:24 +08:00
}
2023-08-24 09:35:17 +08:00
},
"freq": {
"type": "object",
"additionalProperties": false,
2026-04-16 18:27:11 +08:00
"description": "Configure how frequencies are displayed",
"properties": {
"ndigits": {
"description": "Set the number of decimal places to display when formatting frequency values",
"oneOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9,
2026-04-16 18:27:11 +08:00
"description": "An integer displays the frequency in GHz with the specified number of decimal places"
},
{
"type": "null",
2026-04-16 18:27:11 +08:00
"description": "A null value displays the frequency as an integer in MHz"
}
],
"default": 2
2025-07-30 14:30:36 +08:00
},
"spaceBeforeUnit": {
"$ref": "#/$defs/spaceBeforeUnit"
}
}
},
"duration": {
"type": "object",
2026-04-16 18:27:11 +08:00
"description": "Configure how durations are displayed",
2025-07-30 14:30:36 +08:00
"properties": {
"abbreviation": {
"type": "boolean",
2026-04-16 18:27:11 +08:00
"description": "Whether to abbreviate durations\nIf true, values are shown as \"1h 2m\" instead of \"1 hour, 2 mins\"",
2025-07-30 14:30:36 +08:00
"default": false
},
"spaceBeforeUnit": {
"$ref": "#/$defs/spaceBeforeUnit"
}
}
},
2025-07-16 10:30:45 +08:00
"fraction": {
"type": "object",
"additionalProperties": false,
2026-04-16 18:27:11 +08:00
"description": "Configure how fractional values are displayed",
2025-07-16 10:30:45 +08:00
"properties": {
"ndigits": {
"oneOf": [
{
"type": "number",
2026-04-16 18:27:11 +08:00
"description": "Number of decimal places to use when formatting fractional values",
2025-07-16 10:30:45 +08:00
"minimum": 0,
"maximum": 9
},
{
"type": "null",
2026-04-16 18:27:11 +08:00
"description": "Automatically determine the number of decimal places based on the value"
2025-07-16 10:30:45 +08:00
}
],
2025-09-03 09:58:50 +08:00
"default": 2
},
"trailingZeros": {
2026-04-16 18:27:11 +08:00
"description": "Control when trailing zeros are preserved",
2025-09-03 09:58:50 +08:00
"oneOf": [
{
"type": "null",
"description": "Same as `default`"
},
{
"const": "default",
2026-04-16 18:27:11 +08:00
"description": "Use the built-in behavior"
2025-09-03 09:58:50 +08:00
},
{
"const": "always",
2025-09-03 09:58:50 +08:00
"description": "Always keep trailing zeros"
},
{
"const": "never",
2025-09-03 09:58:50 +08:00
"description": "Never keep trailing zeros"
}
],
2025-07-16 10:30:45 +08:00
"default": null
}
}
},
"common": {
"type": "object",
"additionalProperties": false,
2026-04-16 18:27:11 +08:00
"description": "Override the settings for `duration`, `fraction`, `freq`, `percent`, `size`, and `temp`\nPlace this before those properties to use it as their default configuration",
"properties": {
"ndigits": {
2026-04-16 18:27:11 +08:00
"description": "Default number of decimal places to display",
"type": "integer",
"minimum": 0,
"maximum": 9
},
"spaceBeforeUnit": {
"$ref": "#/$defs/spaceBeforeUnit"
}
}
},
"noBuffer": {
"type": "boolean",
2026-04-16 18:27:11 +08:00
"description": "Whether to disable stdout buffering",
"default": false
},
"constants": {
"type": "array",
2026-04-16 18:27:11 +08:00
"description": "List of strings available for use in module custom formats",
"items": {
"type": "string"
}
}
2024-02-28 09:17:29 +08:00
}
},
"modules": {
2026-04-16 18:27:11 +08:00
"description": "Modules to run",
"type": "array",
"items": {
"anyOf": [
{
2023-06-17 22:37:33 +08:00
"type": "string",
2026-04-16 18:27:11 +08:00
"description": "Run a module with its default configuration",
2023-06-17 22:37:33 +08:00
"enum": [
2023-06-20 14:41:01 +08:00
"battery",
"bios",
"bluetooth",
2024-07-28 00:05:07 +08:00
"bluetoothradio",
2023-06-20 14:41:01 +08:00
"board",
2024-05-16 18:48:17 +08:00
"bootmgr",
2023-06-20 14:41:01 +08:00
"break",
"brightness",
2024-09-15 10:42:22 +08:00
"btrfs",
2024-04-23 22:45:12 +08:00
"camera",
2023-06-20 14:41:01 +08:00
"chassis",
"cpu",
2024-06-05 19:15:25 +08:00
"cpucache",
2023-06-20 14:41:01 +08:00
"cpuusage",
2026-06-02 10:58:57 +08:00
"codec",
2023-06-20 14:41:01 +08:00
"command",
"colors",
"cursor",
"datetime",
"display",
"disk",
2023-10-09 19:24:25 +08:00
"diskio",
2023-06-20 14:41:01 +08:00
"de",
2024-06-12 19:52:25 +08:00
"dns",
2024-05-22 16:13:36 +08:00
"editor",
2023-06-20 14:41:01 +08:00
"font",
"gamepad",
"gpu",
"host",
"icons",
2024-06-05 19:15:25 +08:00
"initsystem",
"keyboard",
2023-06-20 14:41:01 +08:00
"kernel",
2023-06-20 23:01:18 +08:00
"lm",
2024-05-08 16:41:33 +08:00
"loadavg",
2023-06-20 14:41:01 +08:00
"locale",
"localip",
"media",
"memory",
2024-10-01 12:10:15 +08:00
"monitor",
"mouse",
2023-09-27 00:05:37 +08:00
"netio",
2023-06-20 14:41:01 +08:00
"opencl",
"opengl",
"os",
"packages",
2023-12-18 15:53:15 +08:00
"physicaldisk",
2024-05-16 18:48:17 +08:00
"physicalmemory",
2023-06-20 14:41:01 +08:00
"player",
"poweradapter",
"processes",
"publicip",
2026-08-24 16:05:36 +08:00
"top",
2023-06-20 14:41:01 +08:00
"separator",
"shell",
"sound",
"swap",
"terminal",
"terminalfont",
2023-07-26 10:27:40 +08:00
"terminalsize",
2024-01-22 18:50:11 +08:00
"terminaltheme",
2023-06-20 14:41:01 +08:00
"title",
"theme",
2024-09-25 22:55:57 +08:00
"tpm",
2023-06-20 14:41:01 +08:00
"uptime",
"users",
2023-08-21 09:19:16 +08:00
"version",
2023-06-20 14:41:01 +08:00
"vulkan",
"wallpaper",
"weather",
"wm",
"wifi",
2024-09-03 10:08:23 +08:00
"wmtheme",
"zpool"
2023-06-17 22:37:33 +08:00
]
},
{
2023-06-17 22:37:33 +08:00
"type": "object",
2026-04-16 18:27:11 +08:00
"description": "Run a module with a custom configuration",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
}
},
"oneOf": [
2023-06-17 22:37:33 +08:00
{
"title": "Break",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-17 22:37:33 +08:00
"properties": {
"type": {
"const": "break",
2026-04-16 18:27:11 +08:00
"description": "Print an empty line"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-17 22:37:33 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-06-17 22:37:33 +08:00
},
{
"title": "Battery",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-17 22:37:33 +08:00
"properties": {
"type": {
"const": "battery",
2026-04-16 18:27:11 +08:00
"description": "Print battery information"
},
"temp": {
"$ref": "#/$defs/temperature"
},
"percent": {
"$ref": "#/$defs/percent"
2023-06-17 22:37:33 +08:00
},
"key": {
2023-06-18 12:32:47 +08:00
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
2023-06-17 22:37:33 +08:00
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-06-17 22:37:33 +08:00
"format": {
"$ref": "#/$defs/batteryFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-17 22:37:33 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-06-17 22:37:33 +08:00
},
{
"title": "BIOS",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-17 22:37:33 +08:00
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "Print first-stage bootloader information (name, version, release date, etc.)",
"const": "bios"
},
2023-06-17 22:37:33 +08:00
"key": {
2023-06-18 12:32:47 +08:00
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
2023-06-17 22:37:33 +08:00
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-06-17 22:37:33 +08:00
"format": {
"$ref": "#/$defs/biosFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-17 22:37:33 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-06-17 22:37:33 +08:00
},
{
"title": "Bluetooth",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-17 22:37:33 +08:00
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "List connected Bluetooth devices",
2023-06-20 14:41:01 +08:00
"const": "bluetooth"
2023-06-17 22:37:33 +08:00
},
"showDisconnected": {
2026-04-16 18:27:11 +08:00
"description": "Whether to show disconnected Bluetooth devices",
2023-06-17 22:37:33 +08:00
"type": "boolean",
"default": false
},
"percent": {
"$ref": "#/$defs/percent"
},
2023-06-17 22:37:33 +08:00
"key": {
2023-06-18 12:32:47 +08:00
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
2023-06-17 22:37:33 +08:00
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
2024-07-28 00:05:07 +08:00
},
"format": {
"$ref": "#/$defs/bluetoothFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2024-07-28 00:05:07 +08:00
}
}
},
{
"title": "Bluetooth Radio",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "List Bluetooth radios (supported versions, vendors, etc.)",
2024-07-28 00:05:07 +08:00
"const": "bluetoothradio"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
2024-07-24 14:05:46 +08:00
},
2023-06-17 22:37:33 +08:00
"format": {
"$ref": "#/$defs/bluetoothradioFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-17 22:37:33 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-06-17 22:37:33 +08:00
},
{
"title": "Board",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "Print motherboard name and other information",
"const": "board"
},
2024-05-09 20:20:50 +01:00
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
2024-05-09 20:20:50 +01:00
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2024-05-09 20:20:50 +01:00
"format": {
"$ref": "#/$defs/boardFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
2024-09-15 10:42:22 +08:00
{
"title": "Boot Manager",
2024-09-15 10:42:22 +08:00
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "Print second-stage bootloader information (name, firmware, etc.)",
"const": "bootmgr"
2024-09-15 10:42:22 +08:00
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/bootmgrFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2024-09-15 10:42:22 +08:00
}
}
},
{
"title": "Brightness",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "brightness",
2026-04-16 18:27:11 +08:00
"description": "Print the current brightness level of your monitors"
},
"percent": {
"$ref": "#/$defs/percent"
},
"ddcciSleep": {
"description": "Sleep time in milliseconds between DDC/CI requests\nSet to null to skip DDC/CI detection\nSee <https://www.ddcutil.com/performance_options/#option-sleep-multiplier> for details",
"oneOf": [
{
"type": "null",
"description": "Skip DDC/CI detection"
},
{
"type": "integer",
"minimum": 0,
"maximum": 400
}
],
"default": 10
},
"compact": {
2026-04-16 18:27:11 +08:00
"description": "Whether to print multiple results on a single line",
"type": "boolean",
"default": false
},
2023-10-31 09:19:41 +08:00
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
2023-10-31 09:19:41 +08:00
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-10-31 09:19:41 +08:00
"format": {
"$ref": "#/$defs/brightnessFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
2023-06-17 22:37:33 +08:00
{
"title": "BTRFS",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-17 22:37:33 +08:00
"properties": {
"type": {
"const": "btrfs",
"description": "Print Linux BTRFS volumes"
2023-06-17 22:37:33 +08:00
},
"percent": {
"$ref": "#/$defs/percent"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/btrfsFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Camera",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"description": "Print available cameras",
"const": "camera"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/cameraFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Chassis",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "chassis",
2026-04-16 18:27:11 +08:00
"description": "Print chassis type information (desktop, laptop, etc.)"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/chassisFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
2026-05-31 14:03:13 +08:00
},
{
"title": "Codec",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "codec",
"description": "Print hardware video acceleration codec types (decode / encode)"
},
"splitGPU": {
"description": "Whether to print each GPU separately. If false, merge codecs from all GPUs",
"type": "boolean",
"default": false
},
2026-05-31 23:31:45 +08:00
"useVulkan": {
"description": "Whether to use Vulkan for codec detection instead of other platform-specific APIs",
"type": "boolean",
"default": false
},
"showType": {
"description": "Which types of codecs to detect and show",
"type": "string",
"oneOf": [
{
"const": "both",
"description": "Show both decoders and encoders"
},
{
"const": "decoder",
"description": "Show only decoders"
},
{
"const": "encoder",
"description": "Show only encoders"
}
],
"default": "both"
},
2026-05-31 14:03:13 +08:00
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/codecFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "CPU",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "Print CPU name, frequency, etc.",
"const": "cpu"
},
"temp": {
2024-02-26 16:39:41 +08:00
"$ref": "#/$defs/temperature"
2023-06-17 22:37:33 +08:00
},
2025-12-11 14:28:29 +08:00
"tempSensor": {
2025-12-18 14:35:21 +08:00
"description": "Set the temperature sensor to use for CPU temperature detection\n* Linux: `hwmon` or `thermal` path name (eg. `hwmon0`, `thermal_zone0)`\n* macOS: SMC sensor key (eg. `Tp01`)\n* Windows: thermal zone key (eg. `\\_TZ.CPUZ`)\n* FreeBSD: sysctl key (eg. `dev.cpu.0.temperature`)\n* NetBSD: sysmon sensor key (eg. `coretemp0`)",
2025-12-11 14:28:29 +08:00
"type": "string"
},
2024-05-21 09:09:08 +08:00
"showPeCoreCount": {
2026-04-16 18:27:11 +08:00
"description": "Whether to detect and display CPU frequencies for different core types (for example, P-cores and E-cores), if supported",
2024-05-21 09:09:08 +08:00
"type": "boolean",
"default": false
},
2023-06-17 22:37:33 +08:00
"key": {
2023-06-18 12:32:47 +08:00
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
2023-06-17 22:37:33 +08:00
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-06-17 22:37:33 +08:00
"format": {
"$ref": "#/$defs/cpuFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "CPU Cache",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "cpucache",
"description": "Print CPU cache sizes"
},
"percent": {
"$ref": "#/$defs/percent"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/cpucacheFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-17 22:37:33 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-06-17 22:37:33 +08:00
},
{
"title": "CPU Usage",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "cpuusage",
2026-04-16 18:27:11 +08:00
"description": "Print CPU usage. Collecting data takes some time"
},
"percent": {
"$ref": "#/$defs/percent"
},
"separate": {
"type": "boolean",
2026-04-16 18:27:11 +08:00
"description": "Show CPU usage for each logical core instead of an average",
"default": false
},
"waitTime": {
"type": "integer",
"description": "Wait time (in ms). CPU usage = (inUseEnd - inUseStart) / waitTime",
"default": 200,
"minimum": 1
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/cpuusageFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
2023-06-18 14:00:24 +08:00
{
"title": "Colors",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-18 14:00:24 +08:00
"properties": {
"type": {
2026-01-15 15:24:54 +08:00
"description": "Display the terminal's 16-color palette",
2023-06-20 14:41:01 +08:00
"const": "colors"
2023-06-18 14:00:24 +08:00
},
"symbol": {
"description": "Set the symbol to use",
2023-06-18 14:00:24 +08:00
"type": "string",
"oneOf": [
{
"const": "block",
"description": "\u2588\u2588\u2588"
},
{
"const": "background",
2026-04-16 18:27:11 +08:00
"description": "Whitespace with background color"
},
{
"const": "circle",
"description": "\u25cf"
},
{
"const": "diamond",
"description": "\u25c6"
},
{
"const": "triangle",
"description": "\u25b2"
},
{
"const": "square",
"description": "\u25a0"
},
{
"const": "star",
"description": "\u2605"
}
2023-06-18 14:00:24 +08:00
],
"default": "background"
2023-06-20 15:13:43 +08:00
},
"paddingLeft": {
"description": "Set the number of white spaces to print before the symbol",
2023-06-20 15:13:43 +08:00
"type": "integer",
"minimum": 0,
"default": 0
2024-02-14 22:07:08 +08:00
},
"block": {
"description": "Set behavior of block printing. Only works when symbol is set to `block` or `background`",
2024-02-14 22:07:08 +08:00
"type": "object",
2024-02-28 09:17:29 +08:00
"additionalProperties": false,
2024-02-14 22:07:08 +08:00
"properties": {
"width": {
"description": "Set the block width in spaces",
"type": "integer",
"minimum": 1,
"default": 3
},
"range": {
"description": "Set the range of colors in the blocks to print",
"type": "array",
"items": {
"type": "integer",
"minimum": 0,
"maximum": 15
},
"minItems": 2,
"maxItems": 2
}
}
2024-05-01 15:54:30 +08:00
},
"brightness": {
"description": "Set the brightness of colors. Works together with the block color range to determine which colors are displayed",
"type": "string",
"oneOf": [
{
"const": "default",
"description": "Use the default setting (block/background: 0-15, others: 8-1)"
},
{
"const": "light",
"description": "Use ANSI bright foreground colors (codes 90-97, not color indices 9-15)"
},
{
"const": "normal",
"description": "Use normal ANSI colors (30-37; standard foreground colors, corresponding to color indices 0-7)"
}
],
"default": "default"
},
2024-05-01 15:54:30 +08:00
"key": {
"$ref": "#/$defs/key"
2024-07-24 14:05:46 +08:00
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-18 14:00:24 +08:00
}
}
},
2023-06-17 22:37:33 +08:00
{
"title": "Command",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-17 22:37:33 +08:00
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "Run a custom shell command",
2023-06-20 14:41:01 +08:00
"const": "command"
2023-06-17 22:37:33 +08:00
},
"shell": {
2026-04-16 18:27:11 +08:00
"description": "Shell program used to execute the command text\nDefault: `cmd` on Windows, `/bin/sh` on Unix-like systems",
2023-06-20 14:41:01 +08:00
"type": "string"
2023-06-17 22:37:33 +08:00
},
2024-09-10 21:59:30 +08:00
"param": {
2026-04-16 18:27:11 +08:00
"description": "Parameter used when starting the shell\nIf set to an empty string, it is ignored\nDefault: `/c` on Windows, `-c` on Unix-like systems",
2024-09-10 21:59:30 +08:00
"type": "string"
},
2023-06-17 22:37:33 +08:00
"text": {
2026-04-16 18:27:11 +08:00
"description": "Command text to execute",
2023-06-17 22:37:33 +08:00
"type": "string"
},
"useStdErr": {
2026-04-16 18:27:11 +08:00
"description": "Whether to use stderr instead of stdout for command output",
"type": "boolean",
"default": false
},
"parallel": {
2026-04-16 18:27:11 +08:00
"description": "Whether to execute the command in parallel with other commands\nThis can improve performance when using multiple commands, but may cause issues with some commands",
"type": "boolean",
"default": true
},
2025-11-17 11:01:32 +08:00
"splitLines": {
2026-04-16 18:27:11 +08:00
"description": "Whether to split command output into multiple lines",
2025-11-17 11:01:32 +08:00
"type": "boolean",
"default": false
},
2023-06-17 22:37:33 +08:00
"key": {
2023-06-18 12:32:47 +08:00
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
2023-06-17 22:37:33 +08:00
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-06-17 22:37:33 +08:00
"format": {
"$ref": "#/$defs/commandFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Cursor",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "cursor",
"description": "Print cursor style name"
},
"percent": {
"$ref": "#/$defs/percent"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/cursorFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-17 22:37:33 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-06-17 22:37:33 +08:00
},
{
"title": "Custom",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-17 22:37:33 +08:00
"properties": {
"type": {
"description": "Print a custom string, with or without key",
2023-06-20 14:41:01 +08:00
"const": "custom"
2023-06-17 22:37:33 +08:00
},
"key": {
2026-04-16 18:27:11 +08:00
"description": "Leave empty to hide the key",
2023-06-20 14:41:01 +08:00
"type": "string"
2023-06-17 22:37:33 +08:00
},
2023-06-18 12:32:47 +08:00
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-06-17 22:37:33 +08:00
"format": {
"description": "Text to print",
2023-06-17 22:37:33 +08:00
"type": "string"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-17 22:37:33 +08:00
}
2024-05-01 15:54:30 +08:00
}
2023-06-17 22:37:33 +08:00
},
{
"title": "Date Time",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "datetime",
2026-04-16 18:27:11 +08:00
"description": "Print the current date and time"
},
"percent": {
"$ref": "#/$defs/percent"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/datetimeFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
2023-06-17 22:37:33 +08:00
{
"title": "Display",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-17 22:37:33 +08:00
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "Print display resolutions, refresh rates, etc.",
2023-06-20 14:41:01 +08:00
"const": "display"
2023-06-17 22:37:33 +08:00
},
"compactType": {
2026-04-16 18:27:11 +08:00
"description": "Whether to print all displays on a single line",
"oneOf": [
{
"const": null,
"description": "Disable compact mode"
},
{
"const": "none",
"description": "Disable compact mode (kept for compatibility)"
},
{
"const": "original",
"description": "Print original resolutions"
},
{
"const": "scaled",
"description": "Print scaled resolutions"
},
{
"const": "original-with-refresh-rate",
"description": "Print original resolutions with refresh rates"
},
{
"const": "scaled-with-refresh-rate",
"description": "Print scaled resolutions with refresh rates"
}
],
"default": null
2023-06-17 22:37:33 +08:00
},
"preciseRefreshRate": {
2026-04-16 18:27:11 +08:00
"description": "Whether to preserve decimal refresh rates instead of rounding them to integers",
2023-06-17 22:37:33 +08:00
"type": "boolean",
2023-11-20 14:27:03 +08:00
"default": false
2023-06-17 22:37:33 +08:00
},
2024-02-22 10:47:13 +08:00
"order": {
2026-04-16 18:27:11 +08:00
"description": "Order to use when printing displays",
"oneOf": [
{
"const": null,
"description": "Use the default order"
},
{
"const": "none",
"description": "Use the detected order (kept for compatibility)"
},
{
"const": "asc",
"description": "Sort by display name in ascending order"
},
{
"const": "desc",
"description": "Sort by display name in descending order"
}
2024-02-22 10:47:13 +08:00
],
"default": null
2024-02-22 10:47:13 +08:00
},
2023-06-17 22:37:33 +08:00
"key": {
2023-06-18 12:32:47 +08:00
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
2023-06-17 22:37:33 +08:00
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-06-17 22:37:33 +08:00
"format": {
"$ref": "#/$defs/displayFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-17 22:37:33 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-06-17 22:37:33 +08:00
},
{
"title": "Disk",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-17 22:37:33 +08:00
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "Print partitions, space usage, file system, etc.",
2023-06-20 14:41:01 +08:00
"const": "disk"
2023-06-17 22:37:33 +08:00
},
"folders": {
"description": "A list of folder paths for the disk output\nDefault: auto detection using mount-points\nThis option overrides other `show*` options",
"oneOf": [
{
"type": "string",
"description": "A colon (semicolon on Windows) separated list of folder paths to get disk usage from",
"default": "/"
},
{
"type": "array",
"description": "An array of folder paths to get disk usage from",
"items": {
"type": "string"
},
"minItems": 1,
"uniqueItems": true
}
]
2023-06-17 22:37:33 +08:00
},
"hideFolders": {
2025-10-11 18:20:56 +08:00
"description": "A list of folder paths (or glob patterns) to hide from the disk output",
"oneOf": [
{
"type": "string",
"description": "A colon (semicolon on Windows) separated list of folder paths to hide from the disk output"
},
{
"type": "array",
"description": "An array of folder paths to hide from the disk output",
"items": {
"type": "string"
},
"minItems": 1,
"uniqueItems": true
}
],
2025-10-11 18:20:56 +08:00
"default": "/efi:/boot:/boot/*"
},
2025-05-21 16:40:42 +08:00
"hideFS": {
"description": "A list of file systems to hide from the disk output",
"oneOf": [
{
"type": "string",
"description": "A colon separated list of file systems to hide from the disk output"
},
{
"type": "array",
"description": "An array of file systems to hide from the disk output",
"items": {
"type": "string"
},
"minItems": 1,
"uniqueItems": true
}
]
2025-05-21 16:40:42 +08:00
},
2025-08-03 09:10:17 +08:00
"showRegular": {
"type": "boolean",
2026-04-16 18:27:11 +08:00
"description": "Whether to show regular volumes",
2025-08-03 09:10:17 +08:00
"default": true
},
2023-06-17 22:37:33 +08:00
"showExternal": {
"type": "boolean",
2026-04-16 18:27:11 +08:00
"description": "Whether to show external volumes",
2023-06-17 22:37:33 +08:00
"default": true
},
"showHidden": {
"type": "boolean",
2026-04-16 18:27:11 +08:00
"description": "Whether to show hidden volumes",
2023-06-17 22:37:33 +08:00
"default": false
},
"showSubvolumes": {
"type": "boolean",
2026-04-16 18:27:11 +08:00
"description": "Whether to show subvolumes",
2023-06-17 22:37:33 +08:00
"default": false
},
2023-08-26 12:50:45 +08:00
"showReadOnly": {
"type": "boolean",
2026-04-16 18:27:11 +08:00
"description": "Whether to show read-only volumes",
2023-08-26 12:50:45 +08:00
"default": false
},
2023-06-17 22:37:33 +08:00
"showUnknown": {
"type": "boolean",
2026-04-16 18:27:11 +08:00
"description": "Whether to show unknown volumes whose sizes cannot be detected",
2023-06-17 22:37:33 +08:00
"default": false
},
2023-08-26 10:36:00 +08:00
"useAvailable": {
"type": "boolean",
2025-08-03 09:24:03 +08:00
"description": "Use f_bavail (lpFreeBytesAvailableToCaller for Windows) instead of f_bfree to calculate used bytes\nMay be required for macOS to display correct results",
2023-08-26 10:36:00 +08:00
"default": false
},
"percent": {
"$ref": "#/$defs/percent"
},
2023-06-17 22:37:33 +08:00
"key": {
2023-06-18 12:32:47 +08:00
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
2023-10-09 19:24:25 +08:00
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
2023-10-09 19:24:25 +08:00
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-10-09 19:24:25 +08:00
"format": {
"$ref": "#/$defs/diskFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-10-09 19:24:25 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-10-09 19:24:25 +08:00
},
{
"title": "DiskIO",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-10-09 19:24:25 +08:00
"properties": {
"type": {
"description": "Print physical disk I/O throughput",
2023-10-09 19:24:25 +08:00
"const": "diskio"
},
"namePrefix": {
2026-04-16 18:27:11 +08:00
"description": "Show only disks whose names start with this prefix",
2023-10-09 19:24:25 +08:00
"type": "string"
},
2024-02-20 11:11:21 +08:00
"detectTotal": {
2026-04-16 18:27:11 +08:00
"description": "Show total bytes instead of the current rate",
2024-02-20 11:11:21 +08:00
"type": "boolean",
"default": false
},
"waitTime": {
"type": "integer",
"description": "Wait time (in ms) used to measure the I/O rate (calculated in bytes/sec).\nAvoid setting this too low, as the kernel requires time to accurately update counters.\nIgnored if 'detectTotal' is true.",
"default": 500,
"minimum": 1
},
2023-10-09 19:24:25 +08:00
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
2023-06-17 22:37:33 +08:00
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-06-17 22:37:33 +08:00
"format": {
"$ref": "#/$defs/diskioFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-17 22:37:33 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-06-17 22:37:33 +08:00
},
2023-10-31 09:19:41 +08:00
{
"title": "Desktop Environment",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-10-31 09:19:41 +08:00
"properties": {
"type": {
"const": "de",
"description": "Print desktop environment name"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
2024-06-12 19:52:25 +08:00
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
2024-06-12 19:52:25 +08:00
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2024-06-12 19:52:25 +08:00
"format": {
"$ref": "#/$defs/deFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2024-06-12 19:52:25 +08:00
}
}
},
{
"title": "DNS",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "dns",
2026-04-16 18:27:11 +08:00
"description": "Print configured DNS servers"
2024-06-12 19:52:25 +08:00
},
"showType": {
"oneOf": [
{
"const": "ipv4",
"description": "Show IPv4 addresses only"
},
{
"const": "ipv6",
"description": "Show IPv6 addresses only"
},
{
"const": "both",
"description": "Show both IPv4 and IPv6 addresses"
}
2024-06-12 19:52:25 +08:00
],
"default": "both",
2026-04-16 18:27:11 +08:00
"description": "Which DNS server types to show"
2024-06-12 19:52:25 +08:00
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
2023-10-31 09:19:41 +08:00
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
2023-10-31 09:19:41 +08:00
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-10-31 09:19:41 +08:00
"format": {
"$ref": "#/$defs/dnsFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Editor",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "editor",
2026-04-16 18:27:11 +08:00
"description": "Print information about the default editor (`$VISUAL` or `$EDITOR`)"
},
"percent": {
"$ref": "#/$defs/percent"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/editorFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Font",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "font",
"description": "Print system font names"
},
"percent": {
"$ref": "#/$defs/percent"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/fontFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-10-31 09:19:41 +08:00
}
}
},
{
"title": "Gamepad",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "gamepad",
"description": "List connected gamepads"
},
"ignores": {
"type": "array",
"description": "An array of case-insensitive device name prefixes to ignore",
"items": {
"type": "string"
},
"minItems": 1,
"uniqueItems": true
},
"percent": {
"$ref": "#/$defs/percent"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/gamepadFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
2024-02-28 09:17:29 +08:00
}
},
2023-06-17 22:37:33 +08:00
{
"title": "GPU",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-17 22:37:33 +08:00
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "Print GPU names, memory sizes, types, etc.",
2023-06-20 14:41:01 +08:00
"const": "gpu"
2023-06-17 22:37:33 +08:00
},
"temp": {
2024-02-26 16:39:41 +08:00
"$ref": "#/$defs/temperature"
2023-06-17 22:37:33 +08:00
},
2023-12-20 14:59:27 +08:00
"driverSpecific": {
"description": "Use driver specific method to detect more detailed GPU information (memory usage, core count, etc)\nRequires the latest GPU drivers to be installed.",
2023-10-30 13:46:51 +08:00
"type": "boolean",
"default": false
},
"detectionMethod": {
2026-04-16 18:27:11 +08:00
"description": "Force a specific GPU detection method",
"type": "string",
"oneOf": [
{
"const": "auto",
"description": "Query platform-specific graphics APIs.\nRequires proper GPU drivers to be installed.\nSupported on Linux, FreeBSD, Windows and macOS"
},
{
"const": "pci",
"description": "Search PCI devices, which does not require GPU drivers to be installed.\nNot supported on Windows and macOS"
},
{
"const": "vulkan",
"description": "Use Vulkan API.\nSlow and requires proper Vulkan drivers to be installed.\nUsed for Android"
},
{
"const": "opencl",
"description": "Use OpenCL API.\nSlow and requires proper OpenCL drivers to be installed"
},
{
2026-06-18 19:49:21 +08:00
"const": "egl-ext",
"description": "Use EGL_EXT_device_enumeration and EGL_EXT_device_query APIs.\nSlow and only detects GPUs that support these extensions"
},
{
"const": "opengl",
"description": "Use OpenGL API.\nSlow and only detects one GPU.\nUsed for OpenBSD"
}
],
"default": "<varies-by-platform>"
2023-06-17 22:37:33 +08:00
},
"hideType": {
2026-04-16 18:27:11 +08:00
"description": "Hide GPUs of a specific type",
"oneOf": [
{
"const": null,
"description": "Do not hide any GPUs"
},
{
"const": "none",
"description": "Do not hide any GPUs (kept for compatibility)"
},
{
"const": "integrated",
"description": "Hide integrated GPUs"
},
{
"const": "discrete",
"description": "Hide discrete GPUs"
},
{
"const": "unknown",
"description": "Hide unknown (unrecognized) GPUs"
}
],
"default": null
2023-06-17 22:37:33 +08:00
},
"percent": {
"$ref": "#/$defs/percent"
},
2023-06-17 22:37:33 +08:00
"key": {
2023-06-18 12:32:47 +08:00
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
2023-06-17 22:37:33 +08:00
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-06-17 22:37:33 +08:00
"format": {
"$ref": "#/$defs/gpuFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-17 22:37:33 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-06-17 22:37:33 +08:00
},
{
"title": "Host",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-17 22:37:33 +08:00
"properties": {
"type": {
"const": "host",
2026-04-16 18:27:11 +08:00
"description": "Print your computer's product name"
2023-06-17 22:37:33 +08:00
},
"key": {
"$ref": "#/$defs/key"
2023-06-17 22:37:33 +08:00
},
"keyColor": {
"$ref": "#/$defs/keyColor"
2023-06-17 22:37:33 +08:00
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
2024-09-15 10:42:22 +08:00
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
2024-09-15 10:42:22 +08:00
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/hostFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Icons",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "icons",
"description": "Print icon style name"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/iconsFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Init System",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "initsystem",
"description": "Print init system (pid 1) name and version"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/initsystemFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Kernel",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "kernel",
"description": "Print system kernel version"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/kernelFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Keyboard",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "keyboard",
2026-04-16 18:27:11 +08:00
"description": "List connected keyboards"
},
"ignores": {
"type": "array",
"description": "An array of case-insensitive device name prefixes to ignore",
"items": {
"type": "string"
},
"minItems": 1,
"uniqueItems": true
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/keyboardFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Login Manager",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "lm",
"description": "Print login manager (desktop manager) name and version"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/lmFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Local IP",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "List local IP addresses (IPv4 or IPv6), MAC addresses, etc.",
"const": "localip"
},
"showIpv4": {
"description": "Show IPv4 addresses",
"type": "boolean",
"default": true
},
"showIpv6": {
"description": "Show IPv6 addresses",
"oneOf": [
{
"const": true,
"description": "Show the most useful IPv6 addresses"
},
{
"const": false,
"description": "Do not show IPv6 addresses"
},
{
"const": "gua",
"description": "Show only global unicast IPv6 addresses (2000::/3)"
},
{
"const": "ula",
"description": "Show only unique local IPv6 addresses (fc00::/7)"
},
{
"const": "lla",
"description": "Show only link-local IPv6 addresses (fe80::/10)"
},
{
"const": "unknown",
"description": "Show only IPv6 addresses that are not gua, ula or lla"
}
],
"default": false
},
"showSpeed": {
2026-04-16 18:27:11 +08:00
"description": "Show Ethernet RX speed",
"type": "boolean",
"default": false
},
"showMtu": {
"description": "Show MTU",
"type": "boolean",
"default": false
},
"showMac": {
"description": "Show MAC addresses",
"type": "boolean",
"default": false
2023-06-17 22:37:33 +08:00
},
"showLoop": {
"description": "Show loop back addresses (127.0.0.1)",
2023-06-17 22:37:33 +08:00
"type": "boolean",
"default": false
},
"showPrefixLen": {
"description": "Show network prefix length (/N)",
"type": "boolean",
"default": true
},
2024-05-13 22:59:39 +08:00
"showAllIps": {
2026-04-16 18:27:11 +08:00
"description": "Show all IPs bound to the same interface\nBy default, only the first detected IP is shown",
2024-05-13 22:59:39 +08:00
"type": "boolean",
"default": false
},
"showFlags": {
"description": "Show the interface's flags",
"type": "boolean",
"default": false
},
2023-06-17 22:37:33 +08:00
"compact": {
"description": "Show all IPs in one line",
2023-06-17 22:37:33 +08:00
"type": "boolean",
"default": false
},
"namePrefix": {
"description": "Show IPs with given name prefix only",
2023-06-17 22:37:33 +08:00
"type": "string"
},
2023-09-26 22:34:37 +08:00
"defaultRouteOnly": {
2026-04-16 18:27:11 +08:00
"description": "Show only IPs used for the default route\nDoes not work on Android",
2023-09-26 22:34:37 +08:00
"type": "boolean",
"default": true
2023-09-26 22:34:37 +08:00
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
2023-09-26 22:34:37 +08:00
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-09-26 22:34:37 +08:00
"format": {
"$ref": "#/$defs/localipFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-09-26 22:34:37 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-09-26 22:34:37 +08:00
},
{
"title": "Loadavg",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "loadavg",
"description": "Print system load averages"
},
"ndigits": {
"type": "integer",
"description": "Set the number of digits to keep after the decimal point",
"minimum": 0,
"maximum": 9,
"default": 2
},
"compact": {
"type": "boolean",
"description": "Show values in one line",
"default": true
},
"percent": {
"$ref": "#/$defs/percent"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/loadavgFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2024-05-08 16:41:33 +08:00
}
}
},
{
"title": "Locale",
2024-05-08 16:41:33 +08:00
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "locale",
"description": "Print system locale name"
2024-05-08 16:41:33 +08:00
},
"key": {
"$ref": "#/$defs/key"
2024-05-09 09:40:53 +08:00
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/localeFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
2026-01-12 09:34:25 +08:00
{
"title": "Logo",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "logo",
"description": "Query built-in logo for JSON output"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Media",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "media",
2026-04-16 18:27:11 +08:00
"description": "Print the name of the currently playing song"
},
"percent": {
"$ref": "#/$defs/percent"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/mediaFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Memory",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "memory",
2026-04-16 18:27:11 +08:00
"description": "Print system memory usage information"
},
"percent": {
"$ref": "#/$defs/percent"
},
2024-05-08 16:41:33 +08:00
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
2024-05-08 16:41:33 +08:00
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2024-05-08 16:41:33 +08:00
"format": {
"$ref": "#/$defs/memoryFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Mouse",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "mouse",
2026-04-16 18:27:11 +08:00
"description": "List connected mice"
},
"ignores": {
"type": "array",
"description": "An array of case-insensitive device name prefixes to ignore",
"items": {
"type": "string"
},
"minItems": 1,
"uniqueItems": true
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/mouseFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Monitor",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "monitor",
2026-04-16 18:27:11 +08:00
"description": "Same as Display module, but with a different default output format"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/monitorFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
2024-02-28 09:17:29 +08:00
}
},
2023-09-26 22:34:37 +08:00
{
"title": "NetIO",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-09-26 22:34:37 +08:00
"properties": {
"type": {
"description": "Print network I/O throughput",
2023-09-27 00:05:37 +08:00
"const": "netio"
2023-09-26 22:34:37 +08:00
},
"namePrefix": {
2026-04-16 18:27:11 +08:00
"description": "Show only interfaces whose names start with this prefix",
2023-09-26 22:34:37 +08:00
"type": "string"
},
"defaultRouteOnly": {
2026-04-16 18:27:11 +08:00
"description": "Show only interfaces used for the default route\nDoes not work on Android",
"type": "boolean",
"default": true
},
2024-02-20 14:44:55 +08:00
"detectTotal": {
"description": "Detect total bytes instead of current rate",
"type": "boolean",
"default": false
},
"waitTime": {
"type": "integer",
"description": "Wait time (in ms) used to measure the I/O rate (calculated in bytes/sec).\nAvoid setting this too low, as the kernel requires time to accurately update counters.\nIgnored if 'detectTotal' is true.",
"default": 500,
"minimum": 1
},
2023-06-17 22:37:33 +08:00
"key": {
2023-06-18 12:32:47 +08:00
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
2023-06-17 22:37:33 +08:00
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-06-17 22:37:33 +08:00
"format": {
"$ref": "#/$defs/netioFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "OpenCL",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "opencl",
2026-04-16 18:27:11 +08:00
"description": "Print the highest OpenCL version supported by the GPU"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/openclFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "OpenGL",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "Print the highest OpenGL version supported by the GPU",
"const": "opengl"
},
"library": {
"description": "Set the OpenGL context creation library to use",
"oneOf": [
{
"const": "auto",
"description": "Prefer EGL on *nix; prefer platform-specific implementation on others"
},
{
"const": "egl",
"description": "Use EGL, which works on TTY"
},
{
"const": "glx",
"description": "Use GLX, requires X session (*nix only)"
}
],
"default": "auto"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/openglFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Operating System",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "os",
2026-04-16 18:27:11 +08:00
"description": "Print the OS or Linux distribution name and version"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/osFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Packages",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "packages",
"description": "List installed package managers and count of installed packages"
},
"disabled": {
2025-08-03 09:24:03 +08:00
"oneOf": [
{
2026-04-16 18:27:11 +08:00
"description": "Package managers to disable during detection\nWarning: Some detection methods can be very slow.",
2025-08-03 09:24:03 +08:00
"type": "array",
"items": {
"type": "string",
"enum": [
"am",
"apk",
"brew",
"choco",
"crux",
2025-08-03 09:24:03 +08:00
"dpkg",
"emerge",
"eopkg",
"flatpak",
"guix",
"hpkg",
"linglong",
"lpkg",
"lpkgbuild",
"macports",
"mport",
"nix",
"opkg",
"pacman",
"pacstall",
"paludis",
"pisi",
"pkg",
"pkgtool",
"rpm",
"scoop",
"snap",
"sorcery",
"winget",
"xbps"
],
"uniqueItems": true
}
},
{
"description": "Enable all package managers",
"type": "null"
}
],
"default": ["winget"]
},
"combined": {
"description": "Whether to combine related package managers into single counts (e.g., nix-system + nix-user = nix)",
"type": "boolean",
"default": false
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/packagesFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Physical Disk",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"description": "Print physical disk information",
"const": "physicaldisk"
},
"namePrefix": {
"description": "Show disks with given name prefix only",
"type": "string"
},
"hideVirtual": {
"description": "Hide virtual disks (e.g. loop, RAM or file baked disks)",
"type": "boolean",
"default": false
},
"hideUnused": {
"description": "Hide disks with `size == 0` (likely unused/unconnected)",
"type": "boolean",
"default": true
},
"temp": {
"$ref": "#/$defs/temperature"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/physicaldiskFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Physical Memory",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "physicalmemory",
"description": "Print system physical memory devices"
},
"showEmptySlots": {
2026-04-16 18:27:11 +08:00
"description": "Whether to show uninstalled memory slots",
"type": "boolean",
"default": false
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/physicalmemoryFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Player",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "player",
2026-04-16 18:27:11 +08:00
"description": "Print the music player name that is currently active"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/playerFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Power Adapter",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "poweradapter",
"description": "Print power adapter name and charging watts"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/poweradapterFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Processes",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "processes",
2026-08-28 17:40:57 +08:00
"description": "Print the number of running processes and threads"
},
"countKprocs": {
"description": "Whether to take kernel processes and threads into account",
"type": "boolean",
"default": false
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/processesFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Public IP",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "Print your public IP address and related information",
"const": "publicip"
},
"url": {
2026-04-16 18:27:11 +08:00
"description": "URL of the public IP detection server to use. Only HTTP is supported",
"type": "string",
"format": "url",
"default": "http://ipinfo.io/ip"
},
"timeout": {
2026-04-16 18:27:11 +08:00
"description": "Time in milliseconds to wait for the public IP server to respond\nSet to 0 to disable the timeout",
"type": "integer",
"minimum": 0,
"default": 0
},
"ipv6": {
2026-04-16 18:27:11 +08:00
"description": "Whether to use IPv6 for the public IP detection server",
"type": "boolean",
"default": false
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/publicipFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Separator",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"description": "Print a separator line",
"const": "separator"
},
"string": {
2026-04-16 18:27:11 +08:00
"description": "String to print for the separator line",
"type": "string",
"default": "-"
},
"outputColor": {
2026-04-16 18:27:11 +08:00
"description": "Color of the separator line",
"$ref": "#/$defs/outputColor"
},
"times": {
2026-04-16 18:27:11 +08:00
"description": "Number of times to repeat the separator string, or 0 to auto-detect",
"type": "integer",
"minimum": 0,
"default": 0
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Shell",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "shell",
2026-04-16 18:27:11 +08:00
"description": "Print the current shell name and version"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/shellFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Sound",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "Print sound devices, volume levels, etc.",
"const": "sound"
},
"soundType": {
2026-04-16 18:27:11 +08:00
"description": "Which sound devices to print",
"type": "string",
"oneOf": [
{
"const": "main",
"description": "Print only main sound devices"
},
{
"const": "active",
"description": "Print only active sound devices"
},
{
"const": "all",
"description": "Print all sound devices"
}
],
"default": "main"
},
"percent": {
"$ref": "#/$defs/percent"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/soundFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Swap",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "swap",
"description": "Print swap (paging file) space usage"
},
2025-06-07 19:23:18 +08:00
"separate": {
"type": "boolean",
2026-04-16 18:27:11 +08:00
"description": "Whether to report individual swap devices on separate lines instead of showing a summary",
2025-06-07 19:23:18 +08:00
"default": false
},
"percent": {
"$ref": "#/$defs/percent"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/swapFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Terminal",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "terminal",
2026-04-16 18:27:11 +08:00
"description": "Print the current terminal name and version"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/terminalFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Terminal Font",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "terminalfont",
2026-04-16 18:27:11 +08:00
"description": "Print the font name and size used by the current terminal"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/terminalfontFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Terminal Size",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "terminalsize",
2026-04-16 18:27:11 +08:00
"description": "Print the current terminal size"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/terminalsizeFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Terminal Theme",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "terminaltheme",
2026-04-16 18:27:11 +08:00
"description": "Print the current terminal theme (foreground and background colors)"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/terminalthemeFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-17 22:37:33 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-06-17 22:37:33 +08:00
},
{
"title": "Theme",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-17 22:37:33 +08:00
"properties": {
"type": {
"const": "theme",
2026-04-16 18:27:11 +08:00
"description": "Print the current desktop environment theme"
2023-06-17 22:37:33 +08:00
},
"key": {
2023-06-18 12:32:47 +08:00
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
2023-06-17 22:37:33 +08:00
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-06-17 22:37:33 +08:00
"format": {
"$ref": "#/$defs/themeFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-17 22:37:33 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-06-18 14:38:39 +08:00
},
{
"title": "Title",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
2026-04-16 18:27:11 +08:00
"description": "Print the title, including your username and hostname",
"const": "title"
},
"fqdn": {
"type": "boolean",
2026-04-16 18:27:11 +08:00
"description": "Whether to use the fully qualified domain name in the title",
"default": false
},
"color": {
2026-04-16 18:27:11 +08:00
"description": "Colors for the different parts of the title",
"type": "object",
"additionalProperties": false,
"properties": {
"user": {
2026-04-16 18:27:11 +08:00
"description": "Color of the username (left part)",
"$ref": "#/$defs/colors"
},
"at": {
2026-04-16 18:27:11 +08:00
"description": "Color of the @ symbol (middle part)",
"$ref": "#/$defs/colors"
},
"host": {
2026-04-16 18:27:11 +08:00
"description": "Color of the hostname (right part)",
"$ref": "#/$defs/colors"
}
}
2023-10-31 09:19:41 +08:00
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
2023-10-31 09:19:41 +08:00
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-10-31 09:19:41 +08:00
"format": {
"$ref": "#/$defs/titleFormat"
},
"condition": {
2026-08-24 16:05:36 +08:00
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Top",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "top",
2026-08-31 20:27:22 +08:00
"description": "Print processes with the highest CPU, memory, disk I/O usage, latest start time or thread count"
2026-08-24 16:05:36 +08:00
},
"sort": {
"type": "string",
2026-08-31 20:27:22 +08:00
"description": "Sort processes by CPU, memory, disk IO usage, start time or thread count",
2026-08-24 16:05:36 +08:00
"enum": [
"cpu",
"memory",
"disk-read",
2026-08-31 19:47:14 +08:00
"disk-write",
2026-08-31 20:27:22 +08:00
"start-time",
"threads"
2026-08-24 16:05:36 +08:00
],
"default": "cpu"
},
2026-08-25 20:08:06 +08:00
"showTypes": {
2026-08-31 20:27:22 +08:00
"description": "Specify which resource usages are detected and displayed.\nIf memory or threads is enabled is enabled alone, only a single process snapshot is taken and `waitTime` sampling wait is skipped",
2026-08-25 20:08:06 +08:00
"default": [
"cpu",
"memory",
"disk"
],
"oneOf": [
{
"type": "string",
"enum": [
"cpu",
"memory",
2026-08-31 20:27:22 +08:00
"disk",
"threads"
2026-08-25 20:08:06 +08:00
]
},
{
"type": "array",
"minItems": 1,
"items": {
"type": "string",
"enum": [
"cpu",
"memory",
2026-08-31 20:27:22 +08:00
"disk",
"threads"
2026-08-25 20:08:06 +08:00
]
}
}
]
},
2026-08-24 16:05:36 +08:00
"processes": {
"type": "integer",
"description": "Number of top processes to print",
"minimum": 1,
"default": 5
},
"waitTime": {
"type": "integer",
2026-08-25 20:08:06 +08:00
"description": "Wait time between process samples, in milliseconds. Ignored when showTypes contains \"memory\" only",
2026-08-24 16:05:36 +08:00
"minimum": 1,
"default": 500
},
"compact": {
"type": "boolean",
"description": "Print all process on a single line",
"default": false
},
"percent": {
"$ref": "#/$defs/percent"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/topFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
2023-12-18 15:53:15 +08:00
{
"title": "TPM",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-12-18 15:53:15 +08:00
"properties": {
"type": {
"const": "tpm",
2026-04-16 18:27:11 +08:00
"description": "Print information about the Trusted Platform Module (TPM) security device"
2023-12-27 10:16:33 +08:00
},
2023-12-18 15:53:15 +08:00
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
2023-12-18 15:53:15 +08:00
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-12-18 15:53:15 +08:00
"format": {
"$ref": "#/$defs/tpmFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-12-18 15:53:15 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-12-18 15:53:15 +08:00
},
2023-06-18 14:38:39 +08:00
{
"title": "Users",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-18 14:38:39 +08:00
"properties": {
"type": {
"const": "users",
2026-04-16 18:27:11 +08:00
"description": "Print users who are currently logged in"
2023-06-18 14:38:39 +08:00
},
"compact": {
"type": "boolean",
"description": "Show all active users in one line",
"default": false
2023-06-18 14:38:39 +08:00
},
"myselfOnly": {
2024-05-09 10:13:04 +08:00
"type": "boolean",
"description": "Show only the current user",
2024-05-09 10:13:04 +08:00
"default": false
},
2023-06-18 14:38:39 +08:00
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-06-18 14:38:39 +08:00
"format": {
"$ref": "#/$defs/usersFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-18 14:38:39 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-06-18 14:38:39 +08:00
},
{
"title": "Uptime",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-18 14:38:39 +08:00
"properties": {
"type": {
"const": "uptime",
2026-04-16 18:27:11 +08:00
"description": "Print how long the system has been running"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/uptimeFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
2024-02-28 09:17:29 +08:00
}
},
{
"title": "Version",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "version",
2026-04-16 18:27:11 +08:00
"description": "Print the Fastfetch version and build information"
},
2023-06-18 14:38:39 +08:00
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-06-18 14:38:39 +08:00
"format": {
"$ref": "#/$defs/versionFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-18 14:38:39 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-06-18 14:38:39 +08:00
},
{
"title": "Vulkan",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-18 14:38:39 +08:00
"properties": {
"type": {
"const": "vulkan",
2026-04-16 18:27:11 +08:00
"description": "Print the highest Vulkan version supported by the GPU"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/vulkanFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-18 14:38:39 +08:00
}
2024-06-12 14:02:35 +08:00
}
},
{
"title": "Wallpaper",
2024-06-12 14:02:35 +08:00
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "wallpaper",
2026-04-16 18:27:11 +08:00
"description": "Print the file path of the current wallpaper"
2024-06-12 14:02:35 +08:00
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
2024-06-12 14:02:35 +08:00
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2024-06-12 14:02:35 +08:00
"format": {
"$ref": "#/$defs/wallpaperFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2024-06-12 14:02:35 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-06-18 14:38:39 +08:00
},
{
"title": "Weather",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-06-18 14:38:39 +08:00
"properties": {
"type": {
"description": "Print weather information",
2023-06-20 14:41:01 +08:00
"const": "weather"
2023-06-18 14:38:39 +08:00
},
2023-07-19 10:55:13 +08:00
"location": {
2026-04-16 18:27:11 +08:00
"description": "Location to display\nMust be URI-encoded (for example, spaces must be encoded as `+`)",
2023-07-19 10:55:13 +08:00
"type": "string"
},
2023-06-18 14:38:39 +08:00
"timeout": {
"description": "Time in milliseconds to wait for the weather server to respond.\n0 to disable timeout",
2023-06-18 14:38:39 +08:00
"type": "integer",
"minimum": 0,
"default": 0
2023-06-18 14:38:39 +08:00
},
"outputFormat": {
2026-04-16 18:27:11 +08:00
"description": "Weather output format to use (must be URI-encoded)",
2023-06-18 14:38:39 +08:00
"type": "string",
"default": "%t+-+%C+(%l)"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-06-18 14:38:39 +08:00
"format": {
"$ref": "#/$defs/weatherFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "Wi-Fi",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "wifi",
"description": "Print connected Wi-Fi info (SSID, connection and security protocol)"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/wifiFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-06-18 14:38:39 +08:00
}
2024-02-28 09:17:29 +08:00
}
2023-10-31 09:19:41 +08:00
},
{
"title": "Window Manager",
2024-02-28 09:17:29 +08:00
"type": "object",
"additionalProperties": false,
2023-10-31 09:19:41 +08:00
"properties": {
"type": {
"const": "wm",
2026-04-16 18:27:11 +08:00
"description": "Print the window manager name and version"
2023-10-31 09:19:41 +08:00
},
"detectPlugin": {
2026-04-16 18:27:11 +08:00
"description": "Whether to detect the window manager plugin on supported platforms",
2023-10-31 09:19:41 +08:00
"type": "boolean",
2026-02-27 18:26:53 +08:00
"default": true
2023-10-31 09:19:41 +08:00
},
"key": {
"$ref": "#/$defs/key"
2024-09-15 10:42:22 +08:00
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/wmFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
}
}
},
{
"title": "WM Theme",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "wmtheme",
2026-04-16 18:27:11 +08:00
"description": "Print the current window manager theme"
},
"key": {
"$ref": "#/$defs/key"
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
"outputColor": {
"$ref": "#/$defs/outputColor"
},
"format": {
"$ref": "#/$defs/wmthemeFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2024-09-15 10:42:22 +08:00
}
}
},
{
"title": "Zpool",
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"const": "zpool",
"description": "Print ZFS storage pools"
},
"percent": {
"$ref": "#/$defs/percent"
},
"key": {
"$ref": "#/$defs/key"
2023-10-31 09:19:41 +08:00
},
"keyColor": {
"$ref": "#/$defs/keyColor"
},
2024-07-24 14:05:46 +08:00
"keyIcon": {
"$ref": "#/$defs/keyIcon"
},
2023-10-31 09:19:41 +08:00
"keyWidth": {
"$ref": "#/$defs/keyWidth"
},
2024-07-24 14:05:46 +08:00
"outputColor": {
"$ref": "#/$defs/outputColor"
},
2023-10-31 09:19:41 +08:00
"format": {
"$ref": "#/$defs/zpoolFormat"
},
"condition": {
"$ref": "#/$defs/conditions"
2023-10-31 09:19:41 +08:00
}
}
2023-06-17 22:37:33 +08:00
}
2023-07-21 16:41:53 +08:00
]
}
]
}
}
2024-02-28 09:17:29 +08:00
}
}