Fastfetch Config Tinkering

for COLOR in {1..255}; do echo -en "\e[38;5;${COLOR}m${COLOR} "; done; echo      

:wink:

5 Likes

These are the basic settings. Just play around, as @thefrog said from one of our configs. You can set some keysettings or formatthings like in that one

{
            "type": "packages",
            "format": "{all}"
        },
        "shell",
        {
            "type": "display",
            "key": "Resolution",
            "compactType": "original"
        },
        "de",
        "wm",
        "wmtheme",
        {
            "type": "terminalfont",
            "key": "font"
        },
        {
            "type": "disk",
            "folders": "/",
            "key": "Disk"
        },
        "cpu",
        "gpu",
        {
            "type": "memory",
            "key": "RAM"

Here is the wiki for configuration. At first i recommend to genrate a full configuration with following command: fastfetch --gen-config-full . Then go to the fun stuff, but donโ€™t forget to backup the original config.jsonc

3 Likes

Good artists borrow. Great artists steal. --Pablo Picasso (attributed)

1 Like

I use this function :

demo256() {
	for i in {0..255}; do
	   print -Pn "%K{$i}  %k%F{$i}${(l:3::0:)i}%f " ${${(M)$((i%9)):#6}:+$'\n'}
	done
	echo
}

2 Likes

@ricklinux

Once you have created config.jsonc, you can experiment with it.

Start with a preset and build from there

Copy and paste the modules you want. We have plenty of templates for you to choose from. I would insert one module at a time and then run fastfetch in the terminal to see how it looks. To see the changes, restart the terminal of your choice.

Okay! Iโ€™m late to the party :stuck_out_tongue:

Thanks @vazicebon for the bar values and @swh for the config

Hereโ€™s my Frankenstein version :stuck_out_tongue:

My config
{
    "$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
    "logo": {
        "type": "auto",
        "source": "/home/dirn/Pictures/kde-endeavouros.png",
        "width": 22,          // Width in characters (for image logos)
        "height": 34,         // Height in characters (for image logos)
        "padding": {
            "top": 0,           // Top padding
            "left": 1,          // Left padding
            "right": 1          // Right padding
        }
    },
    "display": {
        "color": {
            "keys": "blue"
        },
        "separator": "",
        "constants": [
            "โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€",   // {$1} - horizontal line for borders
            "\u001b[55D",                                               // {$2} - move cursor left 55 columns
            "\u001b[55C",                                               // {$3} - move cursor right 55 columns
            "\u001b[54C"                                                // {$4} - move cursor right 54 columns
        ],
        "brightColor": true
    },
    "modules": [
        "break",
        {
            "type": "version",
            "key": "โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€{$1}โ”\u001b[37D",
            "format": "\u001b[1m{#keys} {1} - {2} "
        },
        {
            "type": "os",
            "key": "โ”‚  \u001b[s{sysname}\u001b[u\u001b[10Cโ”‚{$3}โ”‚{$2}"
        },
        {
            "type": "kernel",
            "key": "โ”‚  \u001b[sKernel\u001b[u\u001b[10Cโ”‚{$3}โ”‚{$2}"
        },
        {
            "type": "datetime",
            "key": "โ”‚  Fetched   โ”‚{$3}โ”‚{$2}",
            "format": "{day-pretty}-{month-pretty}-{year} {hour-pretty}:{minute-pretty}:{second-pretty} {timezone-name}"
        },
        {
            "type": "locale",
            "key": "โ”‚  Locale    โ”‚{$3}โ”‚{$2}"
        },
        {
            "type": "custom",
            "key": "โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€{$1}โ”ค",                // Bottom border of the entire layout
            "format": ""
        },

        // Hardware section with cyan color theme
        {
            "type": "custom",
            "key": "โ”‚{#blue}โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌ{$1}โ”{#keys}โ”‚\u001b[37D",
            "format": "{#bright_blue} Hardware "
        },
        {
            "type": "chassis",
            "key": "โ”‚{#blue}โ”‚ Chassis   โ”‚{$4}โ”‚{#keys}โ”‚{$2}"
        },
        {
            "type": "cpu",
            "key": "โ”‚{#blue}โ”‚ CPU       โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
            "format": "{name} @{freq-max}",
            "showPeCoreCount": false
        },
        {
            "type": "gpu",
            "key": "โ”‚{#blue}โ”‚ GPU       โ”‚{$4}โ”‚{#keys}โ”‚{$2}"
        },
        {
            "type": "memory",
            "key": "โ”‚{#blue}โ”‚ RAM       โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
            // "keyColor": "34",
            "percent": {
                "type": 3, // 3 = show number + bar + percentage
                "green": 30, // <30% is green
                "yellow": 70 // 30-70% is yellow, >70% is red
            }
        },
        {
            "type": "swap",
            "key": "โ”‚{#blue}โ”‚ SWAP      โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
            // "keyColor": "34",
            "percent": {
                "type": 3, // 3 = show number + bar + percentage
                "green": 30, // <30% is green
                "yellow": 70 // 30-70% is yellow, >70% is red
            }
        },
        {
            "type": "disk",
            "key": "โ”‚{#blue}โ”‚ Disk      โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
            // "keyColor": "34",
            "percent": {
                "type": 3, // 3 = show number + bar + percentage
                "green": 30, // <30% is green
                "yellow": 70 // 30-70% is yellow, >70% is red
            },
        },
        {
            "type": "battery",
            "key": "โ”‚{#blue}โ”‚ Battery   โ”‚{$4}โ”‚{#keys}โ”‚{$2}"
        },
        {
            "type": "custom",
            "key": "โ”‚{#blue}โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ด{$1}โ”˜{#keys}โ”‚",
            "format": ""
        },

        // Desktop section with green color theme
        {
            "type": "custom",
            "key": "โ”‚{#blue}โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌ{$1}โ”{#keys}โ”‚\u001b[37D",
            "format": "{#bright_blue} Desktop "
        },
        {
            "type": "de",
            "key": "โ”‚{#blue}โ”‚ Desktop   โ”‚{$4}โ”‚{#keys}โ”‚{$2}"
        },
        {
            "type": "wm",
            "key": "โ”‚{#blue}โ”‚ Session   โ”‚{$4}โ”‚{#keys}โ”‚{$2}"
        },
        {
            "type": "display",
            "key": "โ”‚{#blue}โ”‚ Display   โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
            "compactType": "original-with-refresh-rate"
        },
        // {
        //     "type": "gpu",
        //     "key": "โ”‚{#blue}โ”‚ G-Driver  โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
        //     "format": "{driver}"
        // },
        {
            "type": "custom",
            "key": "โ”‚{#blue}โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ด{$1}โ”˜{#keys}โ”‚",
            "format": ""
        },

        // Terminal section with yellow color theme
        {
            "type": "custom",
            "key": "โ”‚{#blue}โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌ{$1}โ”{#keys}โ”‚\u001b[37D",
            "format": "{#bright_blue} Terminal "
        },
        {
            "type": "shell",
            "key": "โ”‚{#blue}โ”‚ Shell     โ”‚{$4}โ”‚{#keys}โ”‚{$2}"
        },
        {
            "type": "terminal",
            "key": "โ”‚{#blue}โ”‚ Terminal  โ”‚{$4}โ”‚{#keys}โ”‚{$2}"
        },
        {
            "type": "terminalfont",
            "key": "โ”‚{#blue}โ”‚ Term Font โ”‚{$4}โ”‚{#keys}โ”‚{$2}"
        },
        // {
        //     "type": "terminaltheme",
        //     "key": "โ”‚{#blue}โ”‚ Colors    โ”‚{$4}โ”‚{#keys}โ”‚{$2}"
        // },
        {
            "type": "packages",
            "key": "โ”‚{#blue}โ”‚ Packages  โ”‚{$4}โ”‚{#keys}โ”‚{$2}"
        },
        {
            "type": "custom",
            "key": "โ”‚{#blue}โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ด{$1}โ”˜{#keys}โ”‚",
            "format": ""
        },

        // Development section with red color theme
        // {
        //     "type": "custom",
        //     "key": "โ”‚{#red}โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌ{$1}โ”{#keys}โ”‚\u001b[37D",
        //     "format": "{#bright_red} Development "
        // },
        // {
        //     "type": "command",
        //     "key": "โ”‚{#red}โ”‚ Rust      โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
        //     "text": "rustc --version",
        //     "format": "rustc {~6,13}"                         // Print 6th to 13th characters (version number)
        // },
        // {
        //     "type": "command",
        //     "condition": {
        //         "!system": "Windows"                          // Posix version
        //     },
        //     "key": "โ”‚{#red}โ”‚ Clang     โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
        //     "text": "clang --version | head -1 | awk '{print $NF}'",
        //     "format": "clang {}"
        // },
        // {
        //     "type": "command",
        //     "condition": {
        //         "system": "Windows"                           // Windows version
        //     },
        //     "key": "โ”‚{#red}โ”‚ Clang     โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
        //     "text": "clang --version | findstr version",      // Finds the line with "version"
        //     "format": "clang {~-6}"                           // Prints the last 6 characters (version number)
        // },
        // {
        //     "type": "command",
        //     "key": "โ”‚{#red}โ”‚ NodeJS    โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
        //     "text": "node --version",
        //     "format": "node {~1}"                             // {~1} removes first character (v)
        // },
        // {
        //     "type": "command",
        //     "key": "โ”‚{#red}โ”‚ Go        โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
        //     "text": "go version | cut -d' ' -f3",
        //     "format": "go {~2}"                               // {~2} removes first 2 characters (go)
        // },
        // {
        //     "type": "command",
        //     "key": "โ”‚{#red}โ”‚ Zig       โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
        //     "text": "zig version",
        //     "format": "zig {}"
        // },
        // {
        //     "type": "editor",
        //     "key": "โ”‚{#red}โ”‚ Editor    โ”‚{$4}โ”‚{#keys}โ”‚{$2}"
        // },
        // {
        //     "type": "command",
        //     "key": "โ”‚{#red}โ”‚ Git       โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
        //     "text": "git version",
        //     "format": "git {~12}"
        // },
        // {
        //     "type": "font",
        //     "key": "โ”‚{#red}โ”‚ Interface โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
        //     "format": "{font1}"
        // },
        // {
        //     "type": "custom",
        //     "key": "โ”‚{#red}โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ด{$1}โ”˜{#keys}โ”‚",
        //     "format": ""
        // },

        // Uptime section with magenta color theme
        {
            "type": "custom",
            "key": "โ”‚{#blue}โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌ{$1}โ”{#keys}โ”‚\u001b[37D",
            "format": "{#bright_blue} Uptime "
        },
        {
            "type": "uptime",
            "key": "โ”‚{#blue}โ”‚ Uptime    โ”‚{$4}โ”‚{#keys}โ”‚{$2}"
        },
        {
            "type": "users",
            "myselfOnly": true,                               // Only show current user
            "key": "โ”‚{#blue}โ”‚ Login     โ”‚{$4}โ”‚{#keys}โ”‚{$2}"
        },
        {
            "condition": {                                    // Conditional module: only show on non-macOS
                "!system": "macOS"
            },
            "type": "disk",
            "key": "โ”‚{#blue}โ”‚ OS Age    โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
            "folders": "/",                                   // Check root filesystem
            "format": "{create-time:10} [{days} days]"        // Show creation time and age in days
        },
        {
            "condition": {                                    // Conditional module: only show on macOS
                "system": "macOS"
            },
            "type": "disk",
            "key": "โ”‚{#blue}โ”‚ OS Age    โ”‚{$4}โ”‚{#keys}โ”‚{$2}",
            "folders": "/System/Volumes/VM",                 // Work around for APFS on macOS
            "format": "{create-time:10} [{days} days]"
        },
        {
            "type": "custom",
            "key": "โ”‚{#blue}โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ด{$1}โ”˜{#keys}โ”‚",
            "format": ""
        },
        {
            "type": "custom",
            "key": "โ”‚ {$3}            โ”‚{$2}",
            "format":"{#37}๓ฐฎฏ {#37} โ€ข {#37}โ€ข {#37}โ€ข {#31} ๓ฐŠ  {#32} ๓ฐŠ  {#33} ๓ฐŠ  {#34} ๓ฐŠ  {#35} ๓ฐŠ  {#36} ๓ฐŠ "
            // "format":"{#37}๓ฐฎฏ {#31} ๓ฐงž {#32} ๓ฐงž {#33} ๓ฐงž {#36} ๓ฐŠ  {#35} ๓ฐŠ  {#34} ๓ฐŠ  {#33} ๓ฐŠ  {#32} ๓ฐŠ  {#31} ๓ฐŠ  "
        },
        {
            "type": "custom",
            "key": "โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€{$1}โ”˜",                // Bottom border of the entire layout
            "format": ""
        },

        // End with color palette and line break
        // "break",                                             // Add a blank line
        //"colors"                                             // Display color palette

        "break",
    ]
}
5 Likes

I may need to โ€œstealโ€ that and tinker around with it for my own Frankenstein version. That looks Great! Looks like I have a Fastfetch tweak weekend to look forward to. :grin: :beer_mug:

2 Likes

Somehow my brain read it as Fastfetch & Furious :stuck_out_tongue:

3 Likes

Just a quick bit of tweaking before I leave for work. Changed border colors and centered headings text as best I could. Further tweaking and beer consumption after work. :grin: :beer_mug:

3 Likes

I copied @dirns config but i get errors.

[ricklinux@rick-ms7c37 ~]$ fastfetch
Error: failed to parse JSON config file `/home/ricklinux/.config/fastfetch/config.jsonc` at (2, 14): unexpected content after document

Not sure what the error is. I did add the kde logo and Iโ€™m not sure why lines 2 and 14 are a problem?

jsonc file

https://0x0.st/KOWc.txt

1 Like

your missing the opening bracket here
"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
This is what you should have
{"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",

2 Likes

Found the issue but @thefrog was faster :wink:

Itโ€™s the missing bracket in front of

{
โ€œ$schemaโ€:

1 Like

Okay let me try again. I donโ€™t exactly understand what they are telling me to do sometimes on the site. Maybe @dirn has stuff in the config also that i donโ€™t need? Also when i run fastfetch the logo doesnโ€™t Aline with the box the same everytime? Is okay here but if i donโ€™t use full screen and the terminal is a different size it is not Alined.

1 Like

you will need to adjust

    "width": 22,          // Width in characters (for image logos)
    "height": 34,         // Height in characters (for image logos)

I donโ€™t have height in myne so take it out and see what happens.

I did adjust height to line up with the bottom of the other box but if i have the terminal in a different size they donโ€™t Aline.

1 Like

I just use

{ "$schema":
   "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
   "logo": {
                  "type": "auto",
   "source":  "/home/swh/Plasma//EOS/fetch/1010enos.png",
     "padding": {
		"top": 0,
		"left": 2,
		"right": 2
	}

I just adjust top left and right. Dont have width and heigth

1 Like

yeah I donโ€™t think it dynamically adjust. but maybe that is a Konsole thing. I use kitty for my fastfetch

1 Like

have you seen the size of my logoโ€™s lol if not a width they will take up the screen.

1 Like

Yeah saw it :rofl: That makes sense in that case :victory_hand:

1 Like

Thanks @thefrog @swh Iโ€™ll have to mess around more with this and see if i can get a better understanding. :wink:

2 Likes