95 lines
2.6 KiB
Nix
95 lines
2.6 KiB
Nix
{ config, lib, pkgs, user, ... }:
|
|
let
|
|
inherit (lib) mkIf mkEnableOption;
|
|
inherit (lib.strings) concatStringsSep;
|
|
|
|
cfg = config.modules.${user}.shell.toolset.btop;
|
|
in
|
|
{
|
|
options.modules.${user}.shell.toolset.btop = {
|
|
enable = mkEnableOption "system-monitor";
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
home-manager.users.${user} = {
|
|
home.packages = with pkgs; [ btop ];
|
|
|
|
programs.btop = {
|
|
enable = true;
|
|
settings = {
|
|
force_tty = false;
|
|
vim_keys = true; # Directional keys: "h,j,k,l,g,G"
|
|
update_ms = 1500; # ms (s^{-3})
|
|
temp_scale = "celsius";
|
|
base_10_sizes = false;
|
|
show_cpu_freq = true;
|
|
clock_format = "%H:%M";
|
|
background_update = true;
|
|
disks_filter = "exclude=/boot";
|
|
|
|
rounded_corners = true;
|
|
theme_background = false;
|
|
truecolor = true;
|
|
presets = concatStringsSep "," [
|
|
"cpu:1:default"
|
|
"proc:0:default cpu:0:default"
|
|
"mem:0:default"
|
|
"net:0:default cpu:0:block"
|
|
"net:0:tty"
|
|
];
|
|
graph_symbol = "braille";
|
|
graph_symbol_cpu = "default";
|
|
graph_symbol_mem = "default";
|
|
graph_symbol_net = "default";
|
|
graph_symbol_proc = "default";
|
|
shown_boxes = "proc cpu mem net";
|
|
|
|
proc_sorting = "cpu lazy";
|
|
proc_reversed = false;
|
|
proc_tree = false;
|
|
proc_colors = true;
|
|
proc_gradient = true;
|
|
proc_per_core = true;
|
|
proc_mem_bytes = true;
|
|
proc_info_smaps = false;
|
|
proc_left = false;
|
|
|
|
cpu_graph_upper = "total";
|
|
cpu_graph_lower = "total";
|
|
cpu_single_graph = false;
|
|
cpu_bottom = false;
|
|
show_uptime = true;
|
|
check_temp = true;
|
|
cpu_sensor = "Auto";
|
|
show_coretemp = true;
|
|
cpu_core_map = "";
|
|
custom_cpu_name = "";
|
|
|
|
mem_graphs = true;
|
|
mem_below_net = false;
|
|
|
|
show_swap = true;
|
|
swap_disk = true;
|
|
show_disks = true;
|
|
only_physical = true;
|
|
use_fstab = false; # Enable -> disables `only_physical`
|
|
disk_free_priv = false;
|
|
show_io_stat = true;
|
|
|
|
io_mode = false;
|
|
io_graph_combined = false;
|
|
io_graph_speeds = "";
|
|
|
|
net_download = 100;
|
|
net_upload = 100;
|
|
net_auto = true;
|
|
net_sync = false;
|
|
net_iface = "br0";
|
|
show_battery = true;
|
|
selected_battery = "Auto";
|
|
log_level = "DEBUG";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|