thelio76: polybar

This commit is contained in:
Alex 2024-07-28 17:13:50 -04:00
parent 4f930a5432
commit dd1e3fceb3
2 changed files with 217 additions and 12 deletions

View File

@ -17,6 +17,7 @@
drawio drawio
exiftool # For digikam exiftool # For digikam
famistudio famistudio
feh
digikam digikam
firefox firefox
flameshot flameshot
@ -67,12 +68,15 @@
enable = true; enable = true;
settings = { settings = {
border_width = 10; border_width = 10;
focus_follows_pointer = true;
}; };
extraConfig = '' extraConfig = ''
bspc monitor -d I II III IV V bspc monitor DP-2 -d I II III IV V
bspc monitor HDMI-1 -d VI VII VIII IX X
polybar & polybar &
''; '';
startupPrograms = [ ]; startupPrograms = [ "picom" "polybar primary" "polybar secondary" ];
}; };
}; };
@ -80,7 +84,6 @@
{ {
enable = true; enable = true;
keybindings = { keybindings = {
"Super_L; @Super_L" = "rofi -show drun";
"super + Return" = "kitty"; "super + Return" = "kitty";
# #
@ -154,14 +157,208 @@
# move a floating window # move a floating window
"super + {Left,Down,Up,Right}" = "super + {Left,Down,Up,Right}" =
" bspc node -v {-20 0,0 20,0 -20,20 0}"; " bspc node -v {-20 0,0 20,0 -20,20 0}";
"Super_L; @Super_L" = "rofi -show drun";
}; };
}; };
services.polybar = { services.polybar = {
enable = true; enable = true;
config = "${pkgs.polybar}/etc/polybar/config.ini"; script = ""; # required but we start polybar via bspwm, so dont start it here.
script = "polybar &"; config = rec {
colors = {
background = "#282A2E";
# background = "#ff00ff";
background-alt = "#373B41";
foreground = "#C5C8C6";
primary = "#F0C674";
secondary = "#8ABEB7";
alert = "#A54242";
disabled = "#707880";
}; };
common-bar = {
width = "100%";
height = "24pt";
radius = 10;
#;dpi = 96
background = colors.background;
foreground = colors.foreground;
line-size = "3pt";
border-size = "4pt";
border-color = "#00000000";
padding-left = 0;
padding-right = 1;
module-margin = 1;
separator = "|";
separator-foreground = colors.disabled;
font-0 = "monospace;2";
wm-restack = "bspwm";
cursor-click = "pointer";
cursor-scroll = "ns-resize";
enable-ipc = true;
};
"bar/primary" = common-bar // {
monitor = "DP-2";
modules-left = "xworkspaces xwindow";
modules-right = "filesystem memory cpu wlan date";
};
"bar/secondary" = common-bar // {
monitor = "HDMI-1";
modules-left = "xworkspaces";
modules-center = "date";
};
"module/xworkspaces" = {
type = "internal/xworkspaces";
group-by-monitor = true;
pin-workspaces = true;
label-active = "%name%";
label-active-background = colors.background-alt;
label-active-underline = colors.primary;
label-active-padding = 1;
label-occupied = "%name%";
label-occupied-padding = 1;
label-urgent = "%name%";
label-urgent-background = colors.alert;
label-urgent-padding = 1;
label-empty = "%name%";
label-empty-foreground = colors.disabled;
label-empty-padding = 1;
};
};
extraConfig = ''
[module/systray]
type = internal/tray
format-margin = 8pt
tray-spacing = 16pt
[module/xwindow]
type = internal/xwindow
label = %title:0:60:...%
[module/filesystem]
type = internal/fs
interval = 25
mount-0 = /
label-mounted = %{F#F0C674}%mountpoint%%{F-} %percentage_used%%
label-unmounted = %mountpoint% not mounted
label-unmounted-foreground = ''${colors.disabled}
[module/pulseaudio]
type = internal/pulseaudio
format-volume-prefix = "VOL "
format-volume-prefix-foreground = ''${colors.primary}
format-volume = <label-volume>
label-volume = %percentage%%
label-muted = muted
label-muted-foreground = ''${colors.disabled}
[module/xkeyboard]
type = internal/xkeyboard
blacklist-0 = num lock
label-layout = %layout%
label-layout-foreground = ''${colors.primary}
label-indicator-padding = 2
label-indicator-margin = 1
label-indicator-foreground = ''${colors.background}
label-indicator-background = ''${colors.secondary}
[module/memory]
type = internal/memory
interval = 2
format-prefix = "RAM "
format-prefix-foreground = ''${colors.primary}
label = %percentage_used:2%%
[module/cpu]
type = internal/cpu
interval = 2
format-prefix = "CPU "
format-prefix-foreground = ''${colors.primary}
label = %percentage:2%%
[network-base]
type = internal/network
interval = 5
format-connected = <label-connected>
format-disconnected = <label-disconnected>
label-disconnected = %{F#F0C674}%ifname%%{F#707880} disconnected
[module/wlan]
inherit = network-base
interface-type = wireless
label-connected = %{F#F0C674}%ifname%%{F-} %essid% %local_ip%
[module/eth]
inherit = network-base
interface-type = wired
label-connected = %{F#F0C674}%ifname%%{F-} %local_ip%
[module/date]
type = internal/date
interval = 1
date = %l:%M%P
date-alt = %Y-%m-%d %H:%M:%S
label = %date%
label-foreground = ''${colors.primary}
[settings]
screenchange-reload = true
pseudo-transparency = true
; vim:ft=dosini
'';
};
services.picom = {
enable = true;
backend = "glx";
activeOpacity = 0.9;
inactiveOpacity = 0.6;
shadow = true;
vSync = true;
settings = {
blur = {
method = "gaussian";
size = 50;
deviation = 10.0;
};
corner-radius = 15;
};
};
# User software configurations # User software configurations
programs = { programs = {
bash = { bash = {
@ -223,7 +420,6 @@
}; };
}; };
}; };
git = { git = {
enable = true; enable = true;
userEmail = "alexmat2on@protonmail.com"; userEmail = "alexmat2on@protonmail.com";
@ -262,17 +458,23 @@
}; };
vscode = { vscode = {
enable = true; enable = true;
extensions = with pkgs; [ extensions = with pkgs.vscode-extensions; [
vscode-extensions.eamodio.gitlens eamodio.gitlens
vscode-extensions.jnoortheen.nix-ide jnoortheen.nix-ide
vscode-extensions.scalameta.metals scalameta.metals
kamikillerto.vscode-colorize
vscode-icons-team.vscode-icons
]; ];
userSettings = { userSettings = {
"workbench.colorTheme" = "Default Dark Modern";
"security.workspace.trust.untrustedFiles" = "open"; "security.workspace.trust.untrustedFiles" = "open";
"nix.formatterPath" = "nixpkgs-fmt"; "workbench.colorTheme" = "Default Dark Modern";
"files.autoSave" = "afterDelay"; "files.autoSave" = "afterDelay";
"editor.formatOnSave" = true; "editor.formatOnSave" = true;
"nix.formatterPath" = "nixpkgs-fmt";
"colorize.languages" = [
"javascript"
"nix"
];
}; };
}; };
}; };

View File

@ -22,6 +22,9 @@ function yes_or_no {
function reset_bspwm() { function reset_bspwm() {
pkill -USR1 -x sxhkd pkill -USR1 -x sxhkd
pkill -x picom
pkill polybar
sxhkd & sxhkd &
bspc wm -r bspc wm -r
} }