{ ... }:
{
  text = ''
    #? Config file for btop v. 1.3.0

    #* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
    #* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
    color_theme = "/usr/share/btop/themes/gruvbox_material_dark.theme"

    #* If the theme set background should be shown, set to False if you want terminal background transparency.
    theme_background = False

    #* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
    truecolor = True

    #* Set to true to force tty mode regardless if a real tty has been detected or not.
    #* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
    force_tty = False

    #* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
    #* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
    #* Use whitespace " " as separator between different presets.
    #* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty"
    presets = ""

    #* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
    #* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
    vim_keys = True

    #* Rounded corners on boxes, is ignored if TTY mode is ON.
    rounded_corners = True

    #* Default symbols to use for graph creation, "braille", "block" or "tty".
    #* "braille" offers the highest resolution but might not be included in all fonts.
    #* "block" has half the resolution of braille but uses more common characters.
    #* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
    #* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
    graph_symbol = "braille"

    # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
    graph_symbol_cpu = "default"

    # Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty".
    graph_symbol_gpu = "default"

    # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
    graph_symbol_mem = "default"

    # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
    graph_symbol_net = "default"

    # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
    graph_symbol_proc = "default"

    #* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace.
    shown_boxes = "cpu mem net proc"

    #* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
    update_ms = 2000

    #* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
    #* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
    proc_sorting = "memory"

    #* Reverse sorting order, True or False.
    proc_reversed = False

    #* Show processes as a tree.
    proc_tree = False

    #* Use the cpu graph colors in the process list.
    proc_colors = True

    #* Use a darkening gradient in the process list.
    proc_gradient = True

    #* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
    proc_per_core = False

    #* Show process memory as bytes instead of percent.
    proc_mem_bytes = True

    #* Show cpu graph for each process.
    proc_cpu_graphs = True

    #* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
    proc_info_smaps = False

    #* Show proc box on left side of screen instead of right.
    proc_left = True

    #* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
    proc_filter_kernel = True

    #* In tree-view, always accumulate child process resources in the parent process.
    proc_aggregate = False

    #* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
    #* Select from a list of detected attributes from the options menu.
    cpu_graph_upper = "total"

    #* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
    #* Select from a list of detected attributes from the options menu.
    cpu_graph_lower = "total"

    #* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off".
    show_gpu_info = "Auto"

    #* Toggles if the lower CPU graph should be inverted.
    cpu_invert_lower = True

    #* Set to True to completely disable the lower CPU graph.
    cpu_single_graph = False

    #* Show cpu box at bottom of screen instead of top.
    cpu_bottom = False

    #* Shows the system uptime in the CPU box.
    show_uptime = True

    #* Show cpu temperature.
    check_temp = True

    #* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
    cpu_sensor = "Auto"

    #* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
    show_coretemp = True

    #* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
    #* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
    #* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries.
    #* Example: "4:0 5:1 6:3"
    cpu_core_map = ""

    #* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine".
    temp_scale = "celsius"

    #* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
    base_10_sizes = True

    #* Show CPU frequency.
    show_cpu_freq = True

    #* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
    #* Special formatting: /host = hostname | /user = username | /uptime = system uptime
    clock_format = "%X"

    #* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
    background_update = True

    #* Custom cpu model name, empty string to disable.
    custom_cpu_name = ""

    #* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
    #* Begin line with "exclude=" to change to exclude filter, otherwise defaults to "most include" filter. Example: disks_filter="exclude=/boot /home/user".
    disks_filter = "exclude=/boot /boot/efi"

    #* Show graphs instead of meters for memory values.
    mem_graphs = True

    #* Show mem box below net box instead of above.
    mem_below_net = False

    #* Count ZFS ARC in cached and available memory.
    zfs_arc_cached = True

    #* If swap memory should be shown in memory box.
    show_swap = True

    #* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
    swap_disk = False

    #* If mem box should be split to also show disks info.
    show_disks = True

    #* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
    only_physical = True

    #* Read disks list from /etc/fstab. This also disables only_physical.
    use_fstab = True

    #* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
    zfs_hide_datasets = False

    #* Set to true to show available disk space for privileged users.
    disk_free_priv = False

    #* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
    show_io_stat = True

    #* Toggles io mode for disks, showing big graphs for disk read/write speeds.
    io_mode = False

    #* Set to True to show combined read/write io graphs in io mode.
    io_graph_combined = False

    #* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
    #* Example: "/mnt/media:100 /:20 /boot:1".
    io_graph_speeds = ""

    #* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
    net_download = 100

    net_upload = 100

    #* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
    net_auto = True

    #* Sync the auto scaling for download and upload to whichever currently has the highest scale.
    net_sync = True

    #* Starts with the Network Interface specified here.
    net_iface = ""

    #* Show battery stats in top right if battery is present.
    show_battery = True

    #* Which battery to use if multiple are present. "Auto" for auto detection.
    selected_battery = "Auto"

    #* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
    #* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
    log_level = "WARNING"

    #* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards.
    nvml_measure_pcie_speeds = True

    #* Horizontally mirror the GPU graph.
    gpu_mirror_graph = True

    #* Custom gpu0 model name, empty string to disable.
    custom_gpu_name0 = ""

    #* Custom gpu1 model name, empty string to disable.
    custom_gpu_name1 = ""

    #* Custom gpu2 model name, empty string to disable.
    custom_gpu_name2 = ""

    #* Custom gpu3 model name, empty string to disable.
    custom_gpu_name3 = ""

    #* Custom gpu4 model name, empty string to disable.
    custom_gpu_name4 = ""

    #* Custom gpu5 model name, empty string to disable.
    custom_gpu_name5 = ""
  '';
}