cleaner bar

This commit is contained in:
Lennart J. Kurzweg (Nx2)
2025-08-24 14:55:59 +02:00
parent f222c3b595
commit eba7f91576

View File

@@ -5,39 +5,39 @@ in {
"nx2site/radicale/password" = { }; "nx2site/radicale/password" = { };
}; };
home.packages = [ home.packages = [
(pkgs.writeShellApplication { name = "submap_indicator"; text = /*bash*/ '' # (pkgs.writeShellApplication { name = "submap_indicator"; text = /*bash*/ ''
print_help() { # print_help() {
echo "Usage: submap_indicator {set <string>|unset}" # echo "Usage: submap_indicator {set <string>|unset}"
} # }
if [ $# -lt 1 ]; then # if [ $# -lt 1 ]; then
print_help; exit 1; # print_help; exit 1;
fi # fi
case "$1" in # case "$1" in
set) # set)
# Check if there is a second argument for the 'set' operation # # Check if there is a second argument for the 'set' operation
if [ $# -eq 2 ]; then # if [ $# -eq 2 ]; then
echo "$2" > /tmp/submap-indictor # echo "$2" > /tmp/submap-indictor
pkill -RTMIN+8 waybar # pkill -RTMIN+8 waybar
pkill -RTMIN+8 hyprpanel # pkill -RTMIN+8 hyprpanel
else # else
echo "Error: 'set' operation requires exactly one string argument." # echo "Error: 'set' operation requires exactly one string argument."
print_help # print_help
exit 1 # exit 1
fi # fi
;; # ;;
unset) # unset)
echo "" > /tmp/submap-indictor # echo "" > /tmp/submap-indictor
pkill -RTMIN+8 waybar # pkill -RTMIN+8 waybar
pkill -RTMIN+8 hyprpanel # pkill -RTMIN+8 hyprpanel
;; # ;;
*) # *)
echo "Error: Unknown command '$1'" # echo "Error: Unknown command '$1'"
print_help # print_help
exit 1 # exit 1
;; # ;;
esac # esac
exit 0 # exit 0
'';}) # '';})
(pkgs.writeShellApplication { name = "cclock"; text = /*bash*/ '' (pkgs.writeShellApplication { name = "cclock"; text = /*bash*/ ''
ord=$(date +"%e" | awk '{printf("%d%s\n", $1, ($1==11||$1==12||$1==13)?"th":((($1%10)==1)?"st":((($1%10)==2)?"nd":((($1%10)==3)?"rd":"th"))))}') ord=$(date +"%e" | awk '{printf("%d%s\n", $1, ($1==11||$1==12||$1==13)?"th":((($1%10)==1)?"st":((($1%10)==2)?"nd":((($1%10)==3)?"rd":"th"))))}')
if [ $# -eq 0 ]; then if [ $# -eq 0 ]; then
@@ -168,167 +168,167 @@ if __name__ == "__main__":
'') '')
]; ];
programs = { programs = {
waybar = { # waybar = {
enable = false; # enable = false;
package = pkgs.waybar; # package = pkgs.waybar;
settings = { # settings = {
bar = { # bar = {
# height = 20; # # height = 20;
layer = "top"; # layer = "top";
position = "bottom"; # position = "bottom";
margin-top = 0; # margin-top = 0;
# margin-left = rice.gap-size; # # margin-left = rice.gap-size;
# margin-bottom = rice.gap-size; # # margin-bottom = rice.gap-size;
# margin-right = rice.gap-size; # # margin-right = rice.gap-size;
margin-left = 0; # margin-left = 0;
margin-bottom = 0; # margin-bottom = 0;
margin-right = 0; # margin-right = 0;
spacing = 10; # spacing = 10;
fixed-center = true; # fixed-center = true;
modules-left = [ # modules-left = [
# "cpu" # # "cpu"
# "memory" # # "memory"
"wireplumber" # "wireplumber"
"backlight" # "backlight"
"battery" # "battery"
"network" # "network"
"hyprland/window" # "hyprland/window"
]; # ];
modules-center = [ # modules-center = [
"hyprland/workspaces" # "hyprland/workspaces"
]; # ];
modules-right = [ # modules-right = [
"custom/mode" # "custom/mode"
"custom/caldav_event" # "custom/caldav_event"
"custom/cclock" # "custom/cclock"
"tray" # "tray"
]; # ];
"hyprland/workspaces" = { # "hyprland/workspaces" = {
on-click = "activate"; # on-click = "activate";
format = "{name}"; # format = "{name}";
all-outputs = false; # all-outputs = false;
active-only = false; # active-only = false;
}; # };
"hyprland/window" = { # "hyprland/window" = {
# format = "${sep}{}"; # # format = "${sep}{}";
format = "{}"; # format = "{}";
separate-outputs = true; # separate-outputs = true;
}; # };
"custom/cclock" = { # "custom/cclock" = {
exec = "cclock"; # exec = "cclock";
restart-interval = 60; # restart-interval = 60;
}; # };
"custom/caldav_event" = { # "custom/caldav_event" = {
format = "󰃰${sep}{}"; # format = "󰃰${sep}{}";
exec = "caldav_event"; # exec = "caldav_event";
restart-interval = 60; # restart-interval = 60;
max-width = 60; # max-width = 60;
}; # };
"custom/mode" = { # "custom/mode" = {
exec = "cat /tmp/submap-indictor"; # exec = "cat /tmp/submap-indictor";
interval = "once"; # interval = "once";
signal = 8; # signal = 8;
}; # };
cpu = { # cpu = {
interval = 1; # interval = 1;
format = "󰍛${sep}{}%"; # format = "󰍛${sep}{}%";
max-length = 10; # max-length = 10;
}; # };
memory = { # memory = {
interval = 5; # interval = 5;
format = "${sep}{avail:.0f}G free"; # format = "${sep}{avail:.0f}G free";
}; # };
battery = { # battery = {
interval = 60; # interval = 60;
tooltip = false; # tooltip = false;
format = "{icon}${sep}{capacity}%"; # format = "{icon}${sep}{capacity}%";
states = { # states = {
warning = 15; # warning = 15;
critical = 5; # critical = 5;
}; # };
format-icons = [ " " " " " " " " " " ]; # format-icons = [ " " " " " " " " " " ];
format-charging = "{icon}${sep}+{capacity}%"; # format-charging = "{icon}${sep}+{capacity}%";
format-plugged = "{icon}${sep}P{capacity}%"; # format-plugged = "{icon}${sep}P{capacity}%";
format-full = "{icon}${sep}F{capacity}%"; # format-full = "{icon}${sep}F{capacity}%";
}; # };
backlight = { # backlight = {
device = "eDP-1"; # device = "eDP-1";
format = "{icon}${sep}{percent}%"; # format = "{icon}${sep}{percent}%";
format-icons = [ "" "" "" "" "" "" "" "" "" ]; # format-icons = [ "" "" "" "" "" "" "" "" "" ];
}; # };
network = { # network = {
format-wifi = "${sep}{essid}"; # format-wifi = "${sep}{essid}";
format-ethernet = "󰈀${sep}Wired"; # format-ethernet = "󰈀${sep}Wired";
format-disconnected = "󰌙${sep}Disconnected"; # format-disconnected = "󰌙${sep}Disconnected";
}; # };
wireplumber = { # wireplumber = {
format = "󰕾${sep}{volume}%"; # format = "󰕾${sep}{volume}%";
format-muted = "󰝟${sep}--%"; # format-muted = "󰝟${sep}--%";
}; # };
}; # };
}; # };
style = with rice.color; let f = rice.lib.hex-to-rgb-comma-string; in /* css */ '' # style = with rice.color; let f = rice.lib.hex-to-rgb-comma-string; in /* css */ ''
* { # * {
font-family: ${rice.font.code.name}; # font-family: ${rice.font.code.name};
font-size: 1em; # font-size: 1em;
min-height: 0px; # min-height: 0px;
margin: 0px; # margin: 0px;
padding: 0px; # padding: 0px;
} # }
window#waybar { # window#waybar {
background: rgba(${f background},${builtins.toString rice.transparency}); # background: rgba(${f background},${builtins.toString rice.transparency});
} # }
#clock, # #clock,
#custom-cclock, # #custom-cclock,
#custom-mode, # #custom-mode,
#custom-caldav-event, # #custom-caldav-event,
#battery, # #battery,
#cpu, # #cpu,
#tray, # #tray,
#disk, # #disk,
#backlight, # #backlight,
#network, # #network,
#wireplumber, # #wireplumber,
#memory, # #memory,
#window, # #window,
#workspaces { # #workspaces {
padding: 0px 3px; # padding: 0px 3px;
margin-top: 0.3em; # margin-top: 0.3em;
border-radius: ${builtins.toString rice.rounding}px; # border-radius: ${builtins.toString rice.rounding}px;
color: rgb(${f accent.bright}); # color: rgb(${f accent.bright});
} # }
#workspaces button { # #workspaces button {
color: rgb(${f accent.base}); # color: rgb(${f accent.base});
padding-left: 15px; # padding-left: 15px;
padding-right: 15px; # padding-right: 15px;
border-radius: ${builtins.toString rice.rounding}px; # border-radius: ${builtins.toString rice.rounding}px;
} # }
#workspaces button.active { color: rgb(${f background}); background-color: rgb(${f accent.base}); } # #workspaces button.active { color: rgb(${f background}); background-color: rgb(${f accent.base}); }
#workspaces button:hover { color: rgb(${f tertiary.bright}); } # #workspaces button:hover { color: rgb(${f tertiary.bright}); }
#workspaces button.urgent { background-color: rgba(${f magenta.base},${builtins.toString rice.transparency}); } # #workspaces button.urgent { background-color: rgba(${f magenta.base},${builtins.toString rice.transparency}); }
#window, #custom-caldav_event { # #window, #custom-caldav_event {
font-family: ${rice.font.base.name}, ${rice.font.code.name}; # font-family: ${rice.font.base.name}, ${rice.font.code.name};
color: rgb(${f tertiary.bright}); # color: rgb(${f tertiary.bright});
} # }
#wireplumber.muted { color: rgb(${f tertiary.bright}); } # #wireplumber.muted { color: rgb(${f tertiary.bright}); }
#wireplumber { padding-left: 10px; } # #wireplumber { padding-left: 10px; }
#battery.warning:not(.charging) { color: rgb(${f green.base});; } # #battery.warning:not(.charging) { color: rgb(${f green.base});; }
#battery.charging { color: rgb(${f green.base}); } # #battery.charging { color: rgb(${f green.base}); }
#battery.critical { # #battery.critical {
background: rgb(${f negative.base}); # background: rgb(${f negative.base});
color: rgb(${f foreground}); # color: rgb(${f foreground});
} # }
#custom-mode { color: rgb(${f red.base}); } # #custom-mode { color: rgb(${f red.base}); }
''; # '';
}; # };
hyprpanel = { hyprpanel = {
enable = true; enable = true;
package = pkgs.unstable.hyprpanel; package = pkgs.unstable.hyprpanel;
@@ -368,6 +368,7 @@ if __name__ == "__main__":
"bar.customModules.submap.icon" = true; "bar.customModules.submap.icon" = true;
"bar.customModules.submap.disabledIcon" = ""; "bar.customModules.submap.disabledIcon" = "";
"bar.workspaces.applicationIconEmptyWorkspace" = "";
"bar.workspaces.applicationIconOncePerWorkspace" = false; "bar.workspaces.applicationIconOncePerWorkspace" = false;
"bar.workspaces.numbered_active_indicator" = "underline"; "bar.workspaces.numbered_active_indicator" = "underline";
"bar.workspaces.scroll_speed" = 1; "bar.workspaces.scroll_speed" = 1;