{ "$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json", "display": { "separator": ": ", "showErrors": false }, "modules": [ "title", "separator", { "type": "command", "key": "OS Detail", "text": "echo \"Debian GNU/Linux $(cat /etc/debian_version) ($( . /etc/os-release; printf '%s' \"$VERSION_CODENAME\" )) $(uname -m)\"" }, "host", { "type": "bios", "key": "BIOS", "format": "{vendor} {version} ({date})" }, "kernel", "uptime", "packages", "shell", "terminal", { "type": "command", "key": "User Accounts", "text": "getent passwd | awk -F: '$3 >= 1000 && $3 < 65534 && $7 !~ /(nologin|false)$/ {printf \"%s%s\", sep, $1; sep=\", \"} END {if (sep == \"\") printf \"none\"; print \"\"}'" }, "cpu", "gpu", "memory", "swap", { "type": "disk", "key": "Disk" }, { "type": "command", "key": "Ethernet", "text": "found=0; for p in /sys/class/net/*; do i=${p##*/}; [ \"$i\" = \"lo\" ] && continue; [ -d \"$p/wireless\" ] && continue; case \"$i\" in docker0|br-*|veth*|virbr*|vmnet*|tun*|tap*|wg*|tailscale*|podman*|cni*|flannel*|vxlan*) continue ;; esac; a=$(ip -o -4 addr show dev \"$i\" scope global | awk 'NR==1 {print $4}'); [ -z \"$a\" ] && a=\"no IPv4\"; s=$(cat \"$p/operstate\" 2>/dev/null || printf unknown); m=$(cat \"$p/address\" 2>/dev/null || printf unknown); [ \"$found\" -eq 1 ] && printf ' | '; printf '\\033[96m(%s)\\033[0m: %s [\\033[32m%s\\033[0m] - (%s)' \"$i\" \"$a\" \"$s\" \"$m\"; found=1; done; [ \"$found\" -eq 0 ] && printf 'No Ethernet device found'" }, { "type": "command", "key": "Docker Bridge", "text": "p=/sys/class/net/docker0; if [ -e \"$p\" ]; then i=docker0; a=$(ip -o -4 addr show dev \"$i\" scope global | awk 'NR==1 {print $4}'); [ -z \"$a\" ] && a=\"no IPv4\"; s=$(cat \"$p/operstate\" 2>/dev/null || printf unknown); printf '\\033[96m(%s)\\033[0m: %s [\\033[32m%s\\033[0m]' \"$i\" \"$a\" \"$s\"; else printf 'none'; fi" }, { "type": "command", "key": "Docker Network", "text": "found=0; for p in /sys/class/net/br-*; do [ -e \"$p\" ] || continue; i=${p##*/}; a=$(ip -o -4 addr show dev \"$i\" scope global | awk 'NR==1 {print $4}'); [ -z \"$a\" ] && a=\"no IPv4\"; s=$(cat \"$p/operstate\" 2>/dev/null || printf unknown); [ \"$found\" -eq 1 ] && printf ' | '; printf '\\033[96m(%s)\\033[0m: %s [\\033[32m%s\\033[0m]' \"$i\" \"$a\" \"$s\"; found=1; done; [ \"$found\" -eq 0 ] && printf 'none'" }, { "type": "command", "key": "Docker VETH", "text": "n=0; for p in /sys/class/net/veth*; do [ -e \"$p\" ] || continue; n=$((n+1)); done; if [ \"$n\" -eq 1 ]; then printf '1 interface'; else printf '%s interfaces' \"$n\"; fi" }, { "type": "command", "key": "Wi-Fi", "text": "found=0; for p in /sys/class/net/*; do i=${p##*/}; [ -d \"$p/wireless\" ] || continue; a=$(ip -o -4 addr show dev \"$i\" scope global | awk 'NR==1 {print $4}'); [ -z \"$a\" ] && a=\"no IPv4\"; s=$(cat \"$p/operstate\" 2>/dev/null || printf unknown); m=$(cat \"$p/address\" 2>/dev/null || printf unknown); [ \"$found\" -eq 1 ] && printf ' | '; printf '\\033[96m(%s)\\033[0m: %s [%s] - (%s)' \"$i\" \"$a\" \"$s\" \"$m\"; found=1; done; [ \"$found\" -eq 0 ] && printf 'none'" }, { "type": "wifi", "key": "SSID" }, { "type": "publicip", "key": "Public IP" }, { "type": "bluetoothradio", "key": "Bluetooth Radio", "format": "{name} - {vendor} - Bluetooth {version}" }, { "type": "bluetooth", "key": "Bluetooth Device", "showDisconnected": true, "format": "{name} [{address}] - connected: {connected}" }, "locale", "break", "colors" ] }