forked from poz/niksos
remove waybar module and make each host define it themselves
this will be cleaner anyway once I move to quickshell
This commit is contained in:
parent
d7edf6c7aa
commit
0f70ec9680
9 changed files with 1069 additions and 527 deletions
|
@ -213,7 +213,6 @@
|
||||||
};
|
};
|
||||||
neovim.enable = true;
|
neovim.enable = true;
|
||||||
swaylock.enable = true;
|
swaylock.enable = true;
|
||||||
waybar.enable = true;
|
|
||||||
zathura.enable = true;
|
zathura.enable = true;
|
||||||
hyprland = {
|
hyprland = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
@ -4,5 +4,6 @@ _: {
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./profile.nix
|
./profile.nix
|
||||||
./programs.nix
|
./programs.nix
|
||||||
|
./waybar.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
550
hosts/del/waybar.nix
Normal file
550
hosts/del/waybar.nix
Normal file
|
@ -0,0 +1,550 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
username = config.myOptions.other.system.username;
|
||||||
|
in {
|
||||||
|
home-manager.users.${username} = {
|
||||||
|
programs.waybar = {
|
||||||
|
enable = true;
|
||||||
|
package = inputs.waybar.packages.${pkgs.system}.waybar;
|
||||||
|
settings.mainBar = {
|
||||||
|
gtk-layer-shell = true;
|
||||||
|
layer = "top";
|
||||||
|
modules-left = [ "custom/launcher" "custom/xwayland" "custom/rot" "custom/wvkbd" "tray" "hyprland/workspaces" ];
|
||||||
|
modules-center = [ "hyprland/window" ];
|
||||||
|
modules-right = [ /*"custom/dnd"*/ "backlight" /*"cava"*/ /*"mpd"*/ "pulseaudio" "clock" "battery" "custom/power" ];
|
||||||
|
|
||||||
|
pulseaudio = {
|
||||||
|
tooltip = false;
|
||||||
|
scroll-step = "1";
|
||||||
|
format = " {icon} {volume}%";
|
||||||
|
format-muted = " {volume}%";
|
||||||
|
format-icons = {
|
||||||
|
default = ["" "" ""];
|
||||||
|
};
|
||||||
|
on-click = "${pkgs.wireplumber}/bin/wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle";
|
||||||
|
};
|
||||||
|
"hyprland/workspaces" = {
|
||||||
|
sort-by-name = true;
|
||||||
|
sort-by-coordinates = false;
|
||||||
|
on-click = "activate";
|
||||||
|
#on-scroll = "~/Scripts/cycle_workspace.sh 1";
|
||||||
|
active-only = false;
|
||||||
|
format = "{icon}";
|
||||||
|
format-icons = {
|
||||||
|
"1" = "1";
|
||||||
|
"2" = "2";
|
||||||
|
"3" = "3";
|
||||||
|
"4" = "4";
|
||||||
|
"5" = "5";
|
||||||
|
"6" = "6";
|
||||||
|
"7" = "7";
|
||||||
|
"8" = "8";
|
||||||
|
"9" = "9";
|
||||||
|
"10" = "10";
|
||||||
|
"11" = "1";
|
||||||
|
"12" = "2";
|
||||||
|
"13" = "3";
|
||||||
|
"14" = "4";
|
||||||
|
"15" = "5";
|
||||||
|
"16" = "6";
|
||||||
|
"17" = "7";
|
||||||
|
"18" = "8";
|
||||||
|
"19" = "9";
|
||||||
|
"20" = "10";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
network = {
|
||||||
|
tooltip = false;
|
||||||
|
format = "{ipaddr} {icon}";
|
||||||
|
format-alt = "{icon}";
|
||||||
|
format-icons = {
|
||||||
|
wifi = [ "" ];
|
||||||
|
ethernet = [ "" ];
|
||||||
|
disconnected = [ "" ];
|
||||||
|
};
|
||||||
|
on-click-right = "foot -e nmtui";
|
||||||
|
};
|
||||||
|
backlight = {
|
||||||
|
interval = 1;
|
||||||
|
align = 0;
|
||||||
|
rotate = 0;
|
||||||
|
format = "{icon} {percent}%";
|
||||||
|
format-icons = [ "" "" "" "" "" "" "" ];
|
||||||
|
#on-scroll-up = "~/Scripts/bright.sh s +1%";
|
||||||
|
#on-scroll-down = "~/Scripts/bright.sh s 1%-";
|
||||||
|
on-scroll-up = "${pkgs.brightnessctl}/bin/brightnessctl set +1%";
|
||||||
|
on-scroll-down = "${pkgs.brightnessctl}/bin/brightnessctl set 1%-";
|
||||||
|
smooth-scrolling-threshold = 1;
|
||||||
|
};
|
||||||
|
battery = {
|
||||||
|
interval = 1;
|
||||||
|
states = {
|
||||||
|
good = 75;
|
||||||
|
warning = 30;
|
||||||
|
critical = 20;
|
||||||
|
};
|
||||||
|
format = "{icon}{capacity}%";
|
||||||
|
format-charging = "{icon}{capacity}% {power}";
|
||||||
|
format-discharging = "{icon}{capacity}% {power}";
|
||||||
|
format-icons = ["" "" "" "" "" "" "" "" "" "" ""];
|
||||||
|
format-charging-icons = ["" "" "" "" "" "" "" "" "" "" ""];
|
||||||
|
};
|
||||||
|
tray = {
|
||||||
|
icon-size = 18;
|
||||||
|
spacing = 10;
|
||||||
|
};
|
||||||
|
clock = {
|
||||||
|
interval = 1;
|
||||||
|
format = "{: %H:%M:%S %d/%m/%Y}";
|
||||||
|
format-alt = "{: %H:%M:%S}";
|
||||||
|
tooltip-format = "<tt><small>{calendar}</small></tt>";
|
||||||
|
calendar = {
|
||||||
|
mode = "year";
|
||||||
|
mode-mon-col = 3;
|
||||||
|
weeks-pos = "right";
|
||||||
|
on-scroll = 1;
|
||||||
|
on-click-right = "mode";
|
||||||
|
format = {
|
||||||
|
months = "<span color='#EBDBB2'><b>{}</b></span>";
|
||||||
|
days = "<span color='#B16286'><b>{}</b></span>";
|
||||||
|
weeks = "<span color='#458588'><b>T{:%W}</b></span>";
|
||||||
|
weekdays = "<span color='#D79921'><b>{}</b></span>";
|
||||||
|
today = "<span color='#CC241D'><b><u>{}</u></b></span>";
|
||||||
|
};
|
||||||
|
actions = {
|
||||||
|
on-click-right = "mode";
|
||||||
|
on-click-forward = "tz_up";
|
||||||
|
on-click-backward = "tz_down";
|
||||||
|
on-scroll-up = "shift_up";
|
||||||
|
on-scroll-down = "shift_down";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
cpu = {
|
||||||
|
interval = 1;
|
||||||
|
format = " {}%";
|
||||||
|
max-length = 10;
|
||||||
|
};
|
||||||
|
memory = {
|
||||||
|
interval = 1;
|
||||||
|
format = " {}%";
|
||||||
|
max-length = 10;
|
||||||
|
};
|
||||||
|
"custom/launcher" = {
|
||||||
|
format = " ";
|
||||||
|
on-click = "~/.config/rofi/launchers/type-2/launcher.sh";
|
||||||
|
on-click-right = "pkill rofi";
|
||||||
|
};
|
||||||
|
"custom/power" = {
|
||||||
|
format = "";
|
||||||
|
on-click = "~/.config/rofi/powermenu/type-2/powermenu.sh";
|
||||||
|
};
|
||||||
|
"hyprland/window" = {
|
||||||
|
format = "{}";
|
||||||
|
separate-outputs = true;
|
||||||
|
};
|
||||||
|
gamemode = {
|
||||||
|
format = "{glyph}";
|
||||||
|
format-alt = "{glyph} {count}";
|
||||||
|
glyph = "";
|
||||||
|
hide-not-running = true;
|
||||||
|
use-icon = true;
|
||||||
|
icon-name = "input-gaming-symbolic";
|
||||||
|
icon-spacing = 4;
|
||||||
|
icon-size = 20;
|
||||||
|
tooltip = true;
|
||||||
|
tooltip-format = "Games running: {count}";
|
||||||
|
};
|
||||||
|
"custom/dnd" = {
|
||||||
|
exec = "~/Scripts/waybar-dunst.sh";
|
||||||
|
on-click = "~/Scripts/dnd.sh";
|
||||||
|
restart-interval = 1;
|
||||||
|
tooltip = false;
|
||||||
|
};
|
||||||
|
cava = {
|
||||||
|
framerate = 165;
|
||||||
|
autosens = 1;
|
||||||
|
sensitivity = 100;
|
||||||
|
bars = 14;
|
||||||
|
lower_cutoff_freq = 50;
|
||||||
|
higher_cutoff_freq = 10000;
|
||||||
|
method = "pipewire";
|
||||||
|
source = "auto";
|
||||||
|
stereo = true;
|
||||||
|
reverse = false;
|
||||||
|
bar_delimiter = 0;
|
||||||
|
monstercat = false;
|
||||||
|
waves = false;
|
||||||
|
noise_reduction = 0.77;
|
||||||
|
input_delay = 2;
|
||||||
|
format-icons = ["▁" "▂" "▃" "▄" "▅" "▆" "▇" "█" ];
|
||||||
|
actions = {
|
||||||
|
on-click-right = "mode";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
"custom/power_profile" = {
|
||||||
|
exec = "asusctl profile -p | sed s:'Active profile is'::";
|
||||||
|
interval = 30;
|
||||||
|
format = "{}";
|
||||||
|
format-alt-click = "click-right";
|
||||||
|
format-alt = "";
|
||||||
|
on-click = "asusctl profile -n; pkill -SIGRTMIN+8 waybar";
|
||||||
|
signal = 8;
|
||||||
|
};
|
||||||
|
"custom/xwayland" = {
|
||||||
|
exec = "${inputs.hyprland.packages.${pkgs.system}.hyprland}/bin/hyprctl clients | ${pkgs.ripgrep}/bin/rg -e 'xwayland: [1]' | ${pkgs.coreutils-full}/bin/wc -l";
|
||||||
|
interval = 1;
|
||||||
|
format = "X {}";
|
||||||
|
};
|
||||||
|
"custom/rot" = {
|
||||||
|
exec = "${pkgs.procps}/bin/pidof rot8 > /dev/null; if [ $? -eq '0' ]; then echo -n ''; else echo -n ''; fi";
|
||||||
|
interval = 1;
|
||||||
|
on-click = "${pkgs.procps}/bin/pkill rot8 || rot8 --threshold 0.75 & disown";
|
||||||
|
format = " {}";
|
||||||
|
};
|
||||||
|
"custom/wvkbd" = {
|
||||||
|
# RTMIN
|
||||||
|
on-click = "${pkgs.util-linux}/bin/kill -s 34 $(${pkgs.procps}/bin/pidof wvkbd-mobintl)";
|
||||||
|
format = "";
|
||||||
|
};
|
||||||
|
mpd = {
|
||||||
|
format = " {artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S})";
|
||||||
|
format-disconnected = " Disconnected";
|
||||||
|
format-stopped = " Stopped";
|
||||||
|
interval = 1;
|
||||||
|
tooltip-format = "MPD (connected)";
|
||||||
|
tooltip-format-disconnected = "MPD (disconnected)";
|
||||||
|
on-click = "mpc toggle";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
style = ''
|
||||||
|
@define-color base #1e1e2e;
|
||||||
|
@define-color mantle #181825;
|
||||||
|
@define-color crust #11111b;
|
||||||
|
|
||||||
|
@define-color text #cdd6f4;
|
||||||
|
@define-color subtext0 #a6adc8;
|
||||||
|
@define-color subtext1 #bac2de;
|
||||||
|
|
||||||
|
@define-color surface0 #313244;
|
||||||
|
@define-color surface1 #45475a;
|
||||||
|
@define-color surface2 #585b70;
|
||||||
|
|
||||||
|
@define-color overlay0 #6c7086;
|
||||||
|
@define-color overlay1 #7f849c;
|
||||||
|
@define-color overlay2 #9399b2;
|
||||||
|
|
||||||
|
@define-color blue #89b4fa;
|
||||||
|
@define-color lavender #b4befe;
|
||||||
|
@define-color sapphire #74c7ec;
|
||||||
|
@define-color sky #89dceb;
|
||||||
|
@define-color teal #94e2d5;
|
||||||
|
@define-color green #a6e3a1;
|
||||||
|
@define-color yellow #f9e2af;
|
||||||
|
@define-color peach #fab387;
|
||||||
|
@define-color maroon #eba0ac;
|
||||||
|
@define-color red #f38ba8;
|
||||||
|
@define-color mauve #cba6f7;
|
||||||
|
@define-color pink #f5c2e7;
|
||||||
|
@define-color flamingo #f2cdcd;
|
||||||
|
@define-color rosewater #f5e0dc;
|
||||||
|
|
||||||
|
* {
|
||||||
|
border-radius: 10px;
|
||||||
|
font-family: Material Design Icons;
|
||||||
|
font-size: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar {
|
||||||
|
background-color: alpha(@base, 0.5);
|
||||||
|
border-radius: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar.hidden {
|
||||||
|
opacity: 0.2;
|
||||||
|
}
|
||||||
|
|
||||||
|
#window {
|
||||||
|
margin-top: 4px;
|
||||||
|
margin-bottom: 4px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
background: @mantle;
|
||||||
|
color: @teal;
|
||||||
|
font-family: JetBrains Mono;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces {
|
||||||
|
padding-left: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button {
|
||||||
|
border-radius: 15px;
|
||||||
|
padding-top: 0px;
|
||||||
|
padding-right: 0px;
|
||||||
|
padding-bottom: 0px;
|
||||||
|
padding-left: 0px;
|
||||||
|
margin-top: 6px;
|
||||||
|
margin-right: 3px;
|
||||||
|
margin-bottom: 6px;
|
||||||
|
margin-left: 3px;
|
||||||
|
background-color: @mantle;
|
||||||
|
color: @text;
|
||||||
|
min-width: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.active {
|
||||||
|
padding-top: 0px;
|
||||||
|
padding-bottom: 0px;
|
||||||
|
padding-right: 0px;
|
||||||
|
padding-left: 0px;
|
||||||
|
margin-top: 6px;
|
||||||
|
margin-right: 3px;
|
||||||
|
margin-bottom: 6px;
|
||||||
|
margin-left: 3px;
|
||||||
|
background-color: @blue;
|
||||||
|
color: @mantle;
|
||||||
|
min-width: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button:hover {
|
||||||
|
background: alpha(@mantle, 0.7);
|
||||||
|
transition-property: background, min-width;
|
||||||
|
transition-duration: 0.5s;
|
||||||
|
transition-timing-function: ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.focused {
|
||||||
|
background-color: @yellow;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.urgent {
|
||||||
|
background-color: @red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modules-left > widget:first-child > #workspaces {
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modules-right > widget:first-child > #workspaces {
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 0px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @peach;
|
||||||
|
/*border-top-left-radius: 0;
|
||||||
|
border-bottom-left-radius: 0;*/
|
||||||
|
}
|
||||||
|
|
||||||
|
#cava {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
margin-right: 0px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 0px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @peach;
|
||||||
|
border-top-right-radius: 0;
|
||||||
|
border-bottom-right-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @teal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes blink {
|
||||||
|
to {
|
||||||
|
background-color: @red;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.charging, #battery.plugged {
|
||||||
|
background-color: @mantle;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.critical:not(.charging) {
|
||||||
|
background-color: @mantle;
|
||||||
|
animation-name: blink;
|
||||||
|
animation-duration: 0.5s;
|
||||||
|
animation-timing-function: linear;
|
||||||
|
animation-iteration-count: infinite;
|
||||||
|
animation-direction: alternate;
|
||||||
|
}
|
||||||
|
|
||||||
|
#backlight {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @yellow;
|
||||||
|
}
|
||||||
|
#clock {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition-property: min-width;
|
||||||
|
transition-duration: 0.5s;
|
||||||
|
background: @mantle;
|
||||||
|
color: @pink;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-power_profile {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @rosewater;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tray {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-launcher {
|
||||||
|
font-size: 16px;
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 5px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @blue;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-power {
|
||||||
|
font-size: 20px;
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
margin-right: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @red;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-wallpaper {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-updates {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-media {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-dnd {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @flamingo;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-xwayland {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @green;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-rot {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @flamingo;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-wvkbd {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @blue;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @green;
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
|
@ -184,7 +184,6 @@
|
||||||
};
|
};
|
||||||
neovim.enable = true;
|
neovim.enable = true;
|
||||||
swaylock.enable = true;
|
swaylock.enable = true;
|
||||||
waybar.enable = true;
|
|
||||||
zathura.enable = true;
|
zathura.enable = true;
|
||||||
hyprland = {
|
hyprland = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
@ -6,6 +6,7 @@ _: {
|
||||||
./profile.nix
|
./profile.nix
|
||||||
./programs.nix
|
./programs.nix
|
||||||
#./restic.nix
|
#./restic.nix
|
||||||
|
./waybar.nix
|
||||||
./waydroid.nix
|
./waydroid.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
517
hosts/niks/waybar.nix
Normal file
517
hosts/niks/waybar.nix
Normal file
|
@ -0,0 +1,517 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
username = config.myOptions.other.system.username;
|
||||||
|
in {
|
||||||
|
home-manager.users.${username} = {
|
||||||
|
programs.waybar = {
|
||||||
|
enable = true;
|
||||||
|
package = inputs.waybar.packages.${pkgs.system}.waybar;
|
||||||
|
settings.mainBar = {
|
||||||
|
gtk-layer-shell = true;
|
||||||
|
layer = "top";
|
||||||
|
modules-left = [ "custom/launcher" "custom/xwayland" "tray" "hyprland/workspaces" ];
|
||||||
|
modules-center = [ "hyprland/window" ];
|
||||||
|
modules-right = [ /*"custom/dnd"*/ "backlight" /*"cava"*/ "mpd" "pulseaudio" "clock" "battery" "custom/power" ];
|
||||||
|
|
||||||
|
pulseaudio = {
|
||||||
|
tooltip = false;
|
||||||
|
scroll-step = "1";
|
||||||
|
format = " {icon} {volume}%";
|
||||||
|
format-muted = " {volume}%";
|
||||||
|
format-icons = {
|
||||||
|
default = ["" "" ""];
|
||||||
|
};
|
||||||
|
on-click = "${pkgs.wireplumber}/bin/wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle";
|
||||||
|
};
|
||||||
|
"hyprland/workspaces" = {
|
||||||
|
sort-by-name = true;
|
||||||
|
sort-by-coordinates = false;
|
||||||
|
on-click = "activate";
|
||||||
|
#on-scroll = "~/Scripts/cycle_workspace.sh 1";
|
||||||
|
active-only = false;
|
||||||
|
format = "{icon}";
|
||||||
|
format-icons = {
|
||||||
|
"1" = "1";
|
||||||
|
"2" = "2";
|
||||||
|
"3" = "3";
|
||||||
|
"4" = "4";
|
||||||
|
"5" = "5";
|
||||||
|
"6" = "6";
|
||||||
|
"7" = "7";
|
||||||
|
"8" = "8";
|
||||||
|
"9" = "9";
|
||||||
|
"10" = "10";
|
||||||
|
"11" = "1";
|
||||||
|
"12" = "2";
|
||||||
|
"13" = "3";
|
||||||
|
"14" = "4";
|
||||||
|
"15" = "5";
|
||||||
|
"16" = "6";
|
||||||
|
"17" = "7";
|
||||||
|
"18" = "8";
|
||||||
|
"19" = "9";
|
||||||
|
"20" = "10";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
network = {
|
||||||
|
tooltip = false;
|
||||||
|
format = "{ipaddr} {icon}";
|
||||||
|
format-alt = "{icon}";
|
||||||
|
format-icons = {
|
||||||
|
wifi = [ "" ];
|
||||||
|
ethernet = [ "" ];
|
||||||
|
disconnected = [ "" ];
|
||||||
|
};
|
||||||
|
on-click-right = "foot -e nmtui";
|
||||||
|
};
|
||||||
|
backlight = {
|
||||||
|
interval = 1;
|
||||||
|
align = 0;
|
||||||
|
rotate = 0;
|
||||||
|
format = "{icon} {percent}%";
|
||||||
|
format-icons = [ "" "" "" "" "" "" "" ];
|
||||||
|
#on-scroll-up = "~/Scripts/bright.sh s +1%";
|
||||||
|
#on-scroll-down = "~/Scripts/bright.sh s 1%-";
|
||||||
|
on-scroll-up = "${pkgs.brightnessctl}/bin/brightnessctl set +1%";
|
||||||
|
on-scroll-down = "${pkgs.brightnessctl}/bin/brightnessctl set 1%-";
|
||||||
|
smooth-scrolling-threshold = 1;
|
||||||
|
};
|
||||||
|
battery = {
|
||||||
|
interval = 1;
|
||||||
|
states = {
|
||||||
|
good = 75;
|
||||||
|
warning = 30;
|
||||||
|
critical = 20;
|
||||||
|
};
|
||||||
|
format = "{icon}{capacity}%";
|
||||||
|
format-charging = "{icon}{capacity}% {power}";
|
||||||
|
format-discharging = "{icon}{capacity}% {power}";
|
||||||
|
format-icons = ["" "" "" "" "" "" "" "" "" "" ""];
|
||||||
|
format-charging-icons = ["" "" "" "" "" "" "" "" "" "" ""];
|
||||||
|
};
|
||||||
|
tray = {
|
||||||
|
icon-size = 18;
|
||||||
|
spacing = 10;
|
||||||
|
};
|
||||||
|
clock = {
|
||||||
|
interval = 1;
|
||||||
|
format = "{: %H:%M:%S %d/%m/%Y}";
|
||||||
|
format-alt = "{: %H:%M:%S}";
|
||||||
|
tooltip-format = "<tt><small>{calendar}</small></tt>";
|
||||||
|
calendar = {
|
||||||
|
mode = "year";
|
||||||
|
mode-mon-col = 3;
|
||||||
|
weeks-pos = "right";
|
||||||
|
on-scroll = 1;
|
||||||
|
on-click-right = "mode";
|
||||||
|
format = {
|
||||||
|
months = "<span color='#EBDBB2'><b>{}</b></span>";
|
||||||
|
days = "<span color='#B16286'><b>{}</b></span>";
|
||||||
|
weeks = "<span color='#458588'><b>T{:%W}</b></span>";
|
||||||
|
weekdays = "<span color='#D79921'><b>{}</b></span>";
|
||||||
|
today = "<span color='#CC241D'><b><u>{}</u></b></span>";
|
||||||
|
};
|
||||||
|
actions = {
|
||||||
|
on-click-right = "mode";
|
||||||
|
on-click-forward = "tz_up";
|
||||||
|
on-click-backward = "tz_down";
|
||||||
|
on-scroll-up = "shift_up";
|
||||||
|
on-scroll-down = "shift_down";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
cpu = {
|
||||||
|
interval = 1;
|
||||||
|
format = " {}%";
|
||||||
|
max-length = 10;
|
||||||
|
};
|
||||||
|
memory = {
|
||||||
|
interval = 1;
|
||||||
|
format = " {}%";
|
||||||
|
max-length = 10;
|
||||||
|
};
|
||||||
|
"custom/launcher" = {
|
||||||
|
format = " ";
|
||||||
|
on-click = "~/.config/rofi/launchers/type-2/launcher.sh";
|
||||||
|
on-click-right = "pkill rofi";
|
||||||
|
};
|
||||||
|
"custom/power" = {
|
||||||
|
format = "";
|
||||||
|
on-click = "~/.config/rofi/powermenu/type-2/powermenu.sh";
|
||||||
|
};
|
||||||
|
"hyprland/window" = {
|
||||||
|
format = "{}";
|
||||||
|
separate-outputs = true;
|
||||||
|
};
|
||||||
|
gamemode = {
|
||||||
|
format = "{glyph}";
|
||||||
|
format-alt = "{glyph} {count}";
|
||||||
|
glyph = "";
|
||||||
|
hide-not-running = true;
|
||||||
|
use-icon = true;
|
||||||
|
icon-name = "input-gaming-symbolic";
|
||||||
|
icon-spacing = 4;
|
||||||
|
icon-size = 20;
|
||||||
|
tooltip = true;
|
||||||
|
tooltip-format = "Games running: {count}";
|
||||||
|
};
|
||||||
|
"custom/dnd" = {
|
||||||
|
exec = "~/Scripts/waybar-dunst.sh";
|
||||||
|
on-click = "~/Scripts/dnd.sh";
|
||||||
|
restart-interval = 1;
|
||||||
|
tooltip = false;
|
||||||
|
};
|
||||||
|
cava = {
|
||||||
|
framerate = 165;
|
||||||
|
autosens = 1;
|
||||||
|
sensitivity = 100;
|
||||||
|
bars = 14;
|
||||||
|
lower_cutoff_freq = 50;
|
||||||
|
higher_cutoff_freq = 10000;
|
||||||
|
method = "pipewire";
|
||||||
|
source = "auto";
|
||||||
|
stereo = true;
|
||||||
|
reverse = false;
|
||||||
|
bar_delimiter = 0;
|
||||||
|
monstercat = false;
|
||||||
|
waves = false;
|
||||||
|
noise_reduction = 0.77;
|
||||||
|
input_delay = 2;
|
||||||
|
format-icons = ["▁" "▂" "▃" "▄" "▅" "▆" "▇" "█" ];
|
||||||
|
actions = {
|
||||||
|
on-click-right = "mode";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
"custom/power_profile" = {
|
||||||
|
exec = "asusctl profile -p | sed s:'Active profile is'::";
|
||||||
|
interval = 30;
|
||||||
|
format = "{}";
|
||||||
|
format-alt-click = "click-right";
|
||||||
|
format-alt = "";
|
||||||
|
on-click = "asusctl profile -n; pkill -SIGRTMIN+8 waybar";
|
||||||
|
signal = 8;
|
||||||
|
};
|
||||||
|
"custom/xwayland" = {
|
||||||
|
exec = "${inputs.hyprland.packages.${pkgs.system}.hyprland}/bin/hyprctl clients | ${pkgs.ripgrep}/bin/rg -e 'xwayland: [1]' | ${pkgs.coreutils-full}/bin/wc -l";
|
||||||
|
interval = 1;
|
||||||
|
format = "X {}";
|
||||||
|
};
|
||||||
|
mpd = {
|
||||||
|
format = " {artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S})";
|
||||||
|
format-disconnected = " Disconnected";
|
||||||
|
format-stopped = " Stopped";
|
||||||
|
interval = 1;
|
||||||
|
tooltip-format = "MPD (connected)";
|
||||||
|
tooltip-format-disconnected = "MPD (disconnected)";
|
||||||
|
on-click = "mpc toggle";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
style = ''
|
||||||
|
@define-color base #1e1e2e;
|
||||||
|
@define-color mantle #181825;
|
||||||
|
@define-color crust #11111b;
|
||||||
|
|
||||||
|
@define-color text #cdd6f4;
|
||||||
|
@define-color subtext0 #a6adc8;
|
||||||
|
@define-color subtext1 #bac2de;
|
||||||
|
|
||||||
|
@define-color surface0 #313244;
|
||||||
|
@define-color surface1 #45475a;
|
||||||
|
@define-color surface2 #585b70;
|
||||||
|
|
||||||
|
@define-color overlay0 #6c7086;
|
||||||
|
@define-color overlay1 #7f849c;
|
||||||
|
@define-color overlay2 #9399b2;
|
||||||
|
|
||||||
|
@define-color blue #89b4fa;
|
||||||
|
@define-color lavender #b4befe;
|
||||||
|
@define-color sapphire #74c7ec;
|
||||||
|
@define-color sky #89dceb;
|
||||||
|
@define-color teal #94e2d5;
|
||||||
|
@define-color green #a6e3a1;
|
||||||
|
@define-color yellow #f9e2af;
|
||||||
|
@define-color peach #fab387;
|
||||||
|
@define-color maroon #eba0ac;
|
||||||
|
@define-color red #f38ba8;
|
||||||
|
@define-color mauve #cba6f7;
|
||||||
|
@define-color pink #f5c2e7;
|
||||||
|
@define-color flamingo #f2cdcd;
|
||||||
|
@define-color rosewater #f5e0dc;
|
||||||
|
|
||||||
|
* {
|
||||||
|
border-radius: 10px;
|
||||||
|
font-family: Material Design Icons;
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar {
|
||||||
|
background-color: alpha(@base, 0.5);
|
||||||
|
border-radius: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar.hidden {
|
||||||
|
opacity: 0.2;
|
||||||
|
}
|
||||||
|
|
||||||
|
#window {
|
||||||
|
margin-top: 4px;
|
||||||
|
margin-bottom: 4px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
background: @mantle;
|
||||||
|
color: @teal;
|
||||||
|
font-family: JetBrains Mono;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces {
|
||||||
|
padding-left: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button {
|
||||||
|
border-radius: 15px;
|
||||||
|
padding-top: 0px;
|
||||||
|
padding-right: 0px;
|
||||||
|
padding-bottom: 0px;
|
||||||
|
padding-left: 0px;
|
||||||
|
margin-top: 6px;
|
||||||
|
margin-right: 3px;
|
||||||
|
margin-bottom: 6px;
|
||||||
|
margin-left: 3px;
|
||||||
|
background-color: @mantle;
|
||||||
|
color: @text;
|
||||||
|
min-width: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.active {
|
||||||
|
padding-top: 0px;
|
||||||
|
padding-bottom: 0px;
|
||||||
|
padding-right: 0px;
|
||||||
|
padding-left: 0px;
|
||||||
|
margin-top: 6px;
|
||||||
|
margin-right: 3px;
|
||||||
|
margin-bottom: 6px;
|
||||||
|
margin-left: 3px;
|
||||||
|
background-color: @blue;
|
||||||
|
color: @mantle;
|
||||||
|
min-width: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button:hover {
|
||||||
|
background: alpha(@mantle, 0.7);
|
||||||
|
transition-property: background, min-width;
|
||||||
|
transition-duration: 0.5s;
|
||||||
|
transition-timing-function: ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.focused {
|
||||||
|
background-color: @yellow;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.urgent {
|
||||||
|
background-color: @red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modules-left > widget:first-child > #workspaces {
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modules-right > widget:first-child > #workspaces {
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 0px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @peach;
|
||||||
|
/*border-top-left-radius: 0;
|
||||||
|
border-bottom-left-radius: 0;*/
|
||||||
|
}
|
||||||
|
|
||||||
|
#cava {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
margin-right: 0px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 0px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @peach;
|
||||||
|
border-top-right-radius: 0;
|
||||||
|
border-bottom-right-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @teal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes blink {
|
||||||
|
to {
|
||||||
|
background-color: @red;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.charging, #battery.plugged {
|
||||||
|
background-color: @mantle;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.critical:not(.charging) {
|
||||||
|
background-color: @mantle;
|
||||||
|
animation-name: blink;
|
||||||
|
animation-duration: 0.5s;
|
||||||
|
animation-timing-function: linear;
|
||||||
|
animation-iteration-count: infinite;
|
||||||
|
animation-direction: alternate;
|
||||||
|
}
|
||||||
|
|
||||||
|
#backlight {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @yellow;
|
||||||
|
}
|
||||||
|
#clock {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition-property: min-width;
|
||||||
|
transition-duration: 0.5s;
|
||||||
|
background: @mantle;
|
||||||
|
color: @pink;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-power_profile {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @rosewater;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tray {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-launcher {
|
||||||
|
font-size: 16px;
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 5px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @blue;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-power {
|
||||||
|
font-size: 20px;
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
margin-right: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @red;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-wallpaper {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-updates {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-media {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-dnd {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @flamingo;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-xwayland {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @green;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
transition: none;
|
||||||
|
background: @mantle;
|
||||||
|
color: @green;
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
|
@ -16,7 +16,6 @@ _: {
|
||||||
#./rofi.nix
|
#./rofi.nix
|
||||||
#./schizofox.nix
|
#./schizofox.nix
|
||||||
./swaylock.nix
|
./swaylock.nix
|
||||||
./waybar.nix
|
|
||||||
./zathura.nix
|
./zathura.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,523 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
inputs,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: with lib; let
|
|
||||||
cfg = config.myOptions.programs.waybar;
|
|
||||||
username = config.myOptions.other.system.username;
|
|
||||||
in {
|
|
||||||
options.myOptions.programs.waybar.enable = mkEnableOption "enable waybar";
|
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
home-manager.users.${username} = {
|
|
||||||
programs.waybar = {
|
|
||||||
enable = true;
|
|
||||||
package = inputs.waybar.packages.${pkgs.system}.waybar;
|
|
||||||
systemd.enable = false;
|
|
||||||
settings.mainBar = {
|
|
||||||
gtk-layer-shell = true;
|
|
||||||
layer = "top";
|
|
||||||
modules-left = [ "custom/launcher" "custom/xwayland" "tray" "hyprland/workspaces" ];
|
|
||||||
modules-center = [ "hyprland/window" ];
|
|
||||||
modules-right = [ /*"custom/dnd"*/ "backlight" /*"cava"*/ "mpd" "pulseaudio" "clock" "battery" "custom/power" ];
|
|
||||||
|
|
||||||
pulseaudio = {
|
|
||||||
tooltip = false;
|
|
||||||
scroll-step = "1";
|
|
||||||
format = " {icon} {volume}%";
|
|
||||||
format-muted = " {volume}%";
|
|
||||||
format-icons = {
|
|
||||||
default = ["" "" ""];
|
|
||||||
};
|
|
||||||
on-click = "${pkgs.wireplumber}/bin/wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle";
|
|
||||||
};
|
|
||||||
"hyprland/workspaces" = {
|
|
||||||
sort-by-name = true;
|
|
||||||
sort-by-coordinates = false;
|
|
||||||
on-click = "activate";
|
|
||||||
#on-scroll = "~/Scripts/cycle_workspace.sh 1";
|
|
||||||
active-only = false;
|
|
||||||
format = "{icon}";
|
|
||||||
format-icons = {
|
|
||||||
"1" = "1";
|
|
||||||
"2" = "2";
|
|
||||||
"3" = "3";
|
|
||||||
"4" = "4";
|
|
||||||
"5" = "5";
|
|
||||||
"6" = "6";
|
|
||||||
"7" = "7";
|
|
||||||
"8" = "8";
|
|
||||||
"9" = "9";
|
|
||||||
"10" = "10";
|
|
||||||
"11" = "1";
|
|
||||||
"12" = "2";
|
|
||||||
"13" = "3";
|
|
||||||
"14" = "4";
|
|
||||||
"15" = "5";
|
|
||||||
"16" = "6";
|
|
||||||
"17" = "7";
|
|
||||||
"18" = "8";
|
|
||||||
"19" = "9";
|
|
||||||
"20" = "10";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
network = {
|
|
||||||
tooltip = false;
|
|
||||||
format = "{ipaddr} {icon}";
|
|
||||||
format-alt = "{icon}";
|
|
||||||
format-icons = {
|
|
||||||
wifi = [ "" ];
|
|
||||||
ethernet = [ "" ];
|
|
||||||
disconnected = [ "" ];
|
|
||||||
};
|
|
||||||
on-click-right = "foot -e nmtui";
|
|
||||||
};
|
|
||||||
backlight = {
|
|
||||||
interval = 1;
|
|
||||||
align = 0;
|
|
||||||
rotate = 0;
|
|
||||||
format = "{icon} {percent}%";
|
|
||||||
format-icons = [ "" "" "" "" "" "" "" ];
|
|
||||||
#on-scroll-up = "~/Scripts/bright.sh s +1%";
|
|
||||||
#on-scroll-down = "~/Scripts/bright.sh s 1%-";
|
|
||||||
on-scroll-up = "${pkgs.brightnessctl}/bin/brightnessctl set +1%";
|
|
||||||
on-scroll-down = "${pkgs.brightnessctl}/bin/brightnessctl set 1%-";
|
|
||||||
smooth-scrolling-threshold = 1;
|
|
||||||
};
|
|
||||||
battery = {
|
|
||||||
interval = 1;
|
|
||||||
states = {
|
|
||||||
good = 75;
|
|
||||||
warning = 30;
|
|
||||||
critical = 20;
|
|
||||||
};
|
|
||||||
format = "{icon}{capacity}%";
|
|
||||||
format-charging = "{icon}{capacity}% {power}";
|
|
||||||
format-discharging = "{icon}{capacity}% {power}";
|
|
||||||
format-icons = ["" "" "" "" "" "" "" "" "" "" ""];
|
|
||||||
format-charging-icons = ["" "" "" "" "" "" "" "" "" "" ""];
|
|
||||||
};
|
|
||||||
tray = {
|
|
||||||
icon-size = 18;
|
|
||||||
spacing = 10;
|
|
||||||
};
|
|
||||||
clock = {
|
|
||||||
interval = 1;
|
|
||||||
format = "{: %H:%M:%S %d/%m/%Y}";
|
|
||||||
format-alt = "{: %H:%M:%S}";
|
|
||||||
tooltip-format = "<tt><small>{calendar}</small></tt>";
|
|
||||||
calendar = {
|
|
||||||
mode = "year";
|
|
||||||
mode-mon-col = 3;
|
|
||||||
weeks-pos = "right";
|
|
||||||
on-scroll = 1;
|
|
||||||
on-click-right = "mode";
|
|
||||||
format = {
|
|
||||||
months = "<span color='#EBDBB2'><b>{}</b></span>";
|
|
||||||
days = "<span color='#B16286'><b>{}</b></span>";
|
|
||||||
weeks = "<span color='#458588'><b>T{:%W}</b></span>";
|
|
||||||
weekdays = "<span color='#D79921'><b>{}</b></span>";
|
|
||||||
today = "<span color='#CC241D'><b><u>{}</u></b></span>";
|
|
||||||
};
|
|
||||||
actions = {
|
|
||||||
on-click-right = "mode";
|
|
||||||
on-click-forward = "tz_up";
|
|
||||||
on-click-backward = "tz_down";
|
|
||||||
on-scroll-up = "shift_up";
|
|
||||||
on-scroll-down = "shift_down";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
cpu = {
|
|
||||||
interval = 1;
|
|
||||||
format = " {}%";
|
|
||||||
max-length = 10;
|
|
||||||
};
|
|
||||||
memory = {
|
|
||||||
interval = 1;
|
|
||||||
format = " {}%";
|
|
||||||
max-length = 10;
|
|
||||||
};
|
|
||||||
"custom/launcher" = {
|
|
||||||
format = " ";
|
|
||||||
on-click = "~/.config/rofi/launchers/type-2/launcher.sh";
|
|
||||||
on-click-right = "pkill rofi";
|
|
||||||
};
|
|
||||||
"custom/power" = {
|
|
||||||
format = "";
|
|
||||||
on-click = "~/.config/rofi/powermenu/type-2/powermenu.sh";
|
|
||||||
};
|
|
||||||
"hyprland/window" = {
|
|
||||||
format = "{}";
|
|
||||||
separate-outputs = true;
|
|
||||||
};
|
|
||||||
gamemode = {
|
|
||||||
format = "{glyph}";
|
|
||||||
format-alt = "{glyph} {count}";
|
|
||||||
glyph = "";
|
|
||||||
hide-not-running = true;
|
|
||||||
use-icon = true;
|
|
||||||
icon-name = "input-gaming-symbolic";
|
|
||||||
icon-spacing = 4;
|
|
||||||
icon-size = 20;
|
|
||||||
tooltip = true;
|
|
||||||
tooltip-format = "Games running: {count}";
|
|
||||||
};
|
|
||||||
"custom/dnd" = {
|
|
||||||
exec = "~/Scripts/waybar-dunst.sh";
|
|
||||||
on-click = "~/Scripts/dnd.sh";
|
|
||||||
restart-interval = 1;
|
|
||||||
tooltip = false;
|
|
||||||
};
|
|
||||||
cava = {
|
|
||||||
framerate = 165;
|
|
||||||
autosens = 1;
|
|
||||||
sensitivity = 100;
|
|
||||||
bars = 14;
|
|
||||||
lower_cutoff_freq = 50;
|
|
||||||
higher_cutoff_freq = 10000;
|
|
||||||
method = "pipewire";
|
|
||||||
source = "auto";
|
|
||||||
stereo = true;
|
|
||||||
reverse = false;
|
|
||||||
bar_delimiter = 0;
|
|
||||||
monstercat = false;
|
|
||||||
waves = false;
|
|
||||||
noise_reduction = 0.77;
|
|
||||||
input_delay = 2;
|
|
||||||
format-icons = ["▁" "▂" "▃" "▄" "▅" "▆" "▇" "█" ];
|
|
||||||
actions = {
|
|
||||||
on-click-right = "mode";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
"custom/power_profile" = {
|
|
||||||
exec = "asusctl profile -p | sed s:'Active profile is'::";
|
|
||||||
interval = 30;
|
|
||||||
format = "{}";
|
|
||||||
format-alt-click = "click-right";
|
|
||||||
format-alt = "";
|
|
||||||
on-click = "asusctl profile -n; pkill -SIGRTMIN+8 waybar";
|
|
||||||
signal = 8;
|
|
||||||
};
|
|
||||||
"custom/xwayland" = {
|
|
||||||
exec = "${inputs.hyprland.packages.${pkgs.system}.hyprland}/bin/hyprctl clients | ${pkgs.ripgrep}/bin/rg -e 'xwayland: [1]' | ${pkgs.coreutils-full}/bin/wc -l";
|
|
||||||
interval = 1;
|
|
||||||
format = "X {}";
|
|
||||||
};
|
|
||||||
mpd = {
|
|
||||||
format = " {artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S})";
|
|
||||||
format-disconnected = " Disconnected";
|
|
||||||
format-stopped = " Stopped";
|
|
||||||
interval = 1;
|
|
||||||
tooltip-format = "MPD (connected)";
|
|
||||||
tooltip-format-disconnected = "MPD (disconnected)";
|
|
||||||
on-click = "mpc toggle";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
style = ''
|
|
||||||
@define-color base #1e1e2e;
|
|
||||||
@define-color mantle #181825;
|
|
||||||
@define-color crust #11111b;
|
|
||||||
|
|
||||||
@define-color text #cdd6f4;
|
|
||||||
@define-color subtext0 #a6adc8;
|
|
||||||
@define-color subtext1 #bac2de;
|
|
||||||
|
|
||||||
@define-color surface0 #313244;
|
|
||||||
@define-color surface1 #45475a;
|
|
||||||
@define-color surface2 #585b70;
|
|
||||||
|
|
||||||
@define-color overlay0 #6c7086;
|
|
||||||
@define-color overlay1 #7f849c;
|
|
||||||
@define-color overlay2 #9399b2;
|
|
||||||
|
|
||||||
@define-color blue #89b4fa;
|
|
||||||
@define-color lavender #b4befe;
|
|
||||||
@define-color sapphire #74c7ec;
|
|
||||||
@define-color sky #89dceb;
|
|
||||||
@define-color teal #94e2d5;
|
|
||||||
@define-color green #a6e3a1;
|
|
||||||
@define-color yellow #f9e2af;
|
|
||||||
@define-color peach #fab387;
|
|
||||||
@define-color maroon #eba0ac;
|
|
||||||
@define-color red #f38ba8;
|
|
||||||
@define-color mauve #cba6f7;
|
|
||||||
@define-color pink #f5c2e7;
|
|
||||||
@define-color flamingo #f2cdcd;
|
|
||||||
@define-color rosewater #f5e0dc;
|
|
||||||
|
|
||||||
* {
|
|
||||||
border-radius: 10px;
|
|
||||||
font-family: Material Design Icons;
|
|
||||||
font-size: 16px;
|
|
||||||
}
|
|
||||||
|
|
||||||
window#waybar {
|
|
||||||
background-color: alpha(@base, 0.5);
|
|
||||||
border-radius: 0px;
|
|
||||||
}
|
|
||||||
|
|
||||||
window#waybar.hidden {
|
|
||||||
opacity: 0.2;
|
|
||||||
}
|
|
||||||
|
|
||||||
#window {
|
|
||||||
margin-top: 4px;
|
|
||||||
margin-bottom: 4px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
background: @mantle;
|
|
||||||
color: @teal;
|
|
||||||
font-family: JetBrains Mono;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces {
|
|
||||||
padding-left: 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button {
|
|
||||||
border-radius: 15px;
|
|
||||||
padding-top: 0px;
|
|
||||||
padding-right: 0px;
|
|
||||||
padding-bottom: 0px;
|
|
||||||
padding-left: 0px;
|
|
||||||
margin-top: 6px;
|
|
||||||
margin-right: 3px;
|
|
||||||
margin-bottom: 6px;
|
|
||||||
margin-left: 3px;
|
|
||||||
background-color: @mantle;
|
|
||||||
color: @text;
|
|
||||||
min-width: 24px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button.active {
|
|
||||||
padding-top: 0px;
|
|
||||||
padding-bottom: 0px;
|
|
||||||
padding-right: 0px;
|
|
||||||
padding-left: 0px;
|
|
||||||
margin-top: 6px;
|
|
||||||
margin-right: 3px;
|
|
||||||
margin-bottom: 6px;
|
|
||||||
margin-left: 3px;
|
|
||||||
background-color: @blue;
|
|
||||||
color: @mantle;
|
|
||||||
min-width: 24px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button:hover {
|
|
||||||
background: alpha(@mantle, 0.7);
|
|
||||||
transition-property: background, min-width;
|
|
||||||
transition-duration: 0.5s;
|
|
||||||
transition-timing-function: ease;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button.focused {
|
|
||||||
background-color: @yellow;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button.urgent {
|
|
||||||
background-color: @red;
|
|
||||||
}
|
|
||||||
|
|
||||||
.modules-left > widget:first-child > #workspaces {
|
|
||||||
margin-left: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.modules-right > widget:first-child > #workspaces {
|
|
||||||
margin-right: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#pulseaudio {
|
|
||||||
margin-top: 3px;
|
|
||||||
margin-bottom: 3px;
|
|
||||||
margin-left: 0px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
transition: none;
|
|
||||||
background: @mantle;
|
|
||||||
color: @peach;
|
|
||||||
/*border-top-left-radius: 0;
|
|
||||||
border-bottom-left-radius: 0;*/
|
|
||||||
}
|
|
||||||
|
|
||||||
#cava {
|
|
||||||
margin-top: 3px;
|
|
||||||
margin-bottom: 3px;
|
|
||||||
margin-left: 8px;
|
|
||||||
margin-right: 0px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 0px;
|
|
||||||
transition: none;
|
|
||||||
background: @mantle;
|
|
||||||
color: @peach;
|
|
||||||
border-top-right-radius: 0;
|
|
||||||
border-bottom-right-radius: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery {
|
|
||||||
margin-top: 3px;
|
|
||||||
margin-bottom: 3px;
|
|
||||||
margin-left: 8px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
transition: none;
|
|
||||||
background: @mantle;
|
|
||||||
color: @teal;
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes blink {
|
|
||||||
to {
|
|
||||||
background-color: @red;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.charging, #battery.plugged {
|
|
||||||
background-color: @mantle;
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.critical:not(.charging) {
|
|
||||||
background-color: @mantle;
|
|
||||||
animation-name: blink;
|
|
||||||
animation-duration: 0.5s;
|
|
||||||
animation-timing-function: linear;
|
|
||||||
animation-iteration-count: infinite;
|
|
||||||
animation-direction: alternate;
|
|
||||||
}
|
|
||||||
|
|
||||||
#backlight {
|
|
||||||
margin-top: 3px;
|
|
||||||
margin-bottom: 3px;
|
|
||||||
margin-left: 8px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
transition: none;
|
|
||||||
background: @mantle;
|
|
||||||
color: @yellow;
|
|
||||||
}
|
|
||||||
#clock {
|
|
||||||
margin-top: 3px;
|
|
||||||
margin-bottom: 3px;
|
|
||||||
margin-left: 8px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
transition-property: min-width;
|
|
||||||
transition-duration: 0.5s;
|
|
||||||
background: @mantle;
|
|
||||||
color: @pink;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-power_profile {
|
|
||||||
margin-top: 3px;
|
|
||||||
margin-bottom: 3px;
|
|
||||||
margin-left: 8px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
transition: none;
|
|
||||||
background: @mantle;
|
|
||||||
color: @rosewater;
|
|
||||||
}
|
|
||||||
|
|
||||||
#tray {
|
|
||||||
margin-top: 3px;
|
|
||||||
margin-bottom: 3px;
|
|
||||||
margin-left: 8px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
transition: none;
|
|
||||||
background: @mantle;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-launcher {
|
|
||||||
font-size: 16px;
|
|
||||||
margin-top: 3px;
|
|
||||||
margin-bottom: 3px;
|
|
||||||
margin-left: 8px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 5px;
|
|
||||||
transition: none;
|
|
||||||
background: @mantle;
|
|
||||||
color: @blue;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-power {
|
|
||||||
font-size: 20px;
|
|
||||||
margin-top: 3px;
|
|
||||||
margin-bottom: 3px;
|
|
||||||
margin-left: 8px;
|
|
||||||
margin-right: 8px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
transition: none;
|
|
||||||
background: @mantle;
|
|
||||||
color: @red;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-wallpaper {
|
|
||||||
margin-top: 3px;
|
|
||||||
margin-bottom: 3px;
|
|
||||||
margin-left: 8px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
transition: none;
|
|
||||||
background: @mantle;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-updates {
|
|
||||||
margin-top: 3px;
|
|
||||||
margin-bottom: 3px;
|
|
||||||
margin-left: 8px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
transition: none;
|
|
||||||
background: @mantle;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-media {
|
|
||||||
margin-top: 3px;
|
|
||||||
margin-bottom: 3px;
|
|
||||||
margin-left: 8px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
transition: none;
|
|
||||||
background: @mantle;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-dnd {
|
|
||||||
margin-top: 3px;
|
|
||||||
margin-bottom: 3px;
|
|
||||||
margin-left: 8px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
transition: none;
|
|
||||||
background: @mantle;
|
|
||||||
color: @flamingo;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-xwayland {
|
|
||||||
margin-top: 3px;
|
|
||||||
margin-bottom: 3px;
|
|
||||||
margin-left: 8px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
transition: none;
|
|
||||||
background: @mantle;
|
|
||||||
color: @green;
|
|
||||||
}
|
|
||||||
|
|
||||||
#mpd {
|
|
||||||
margin-top: 3px;
|
|
||||||
margin-bottom: 3px;
|
|
||||||
margin-left: 8px;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
transition: none;
|
|
||||||
background: @mantle;
|
|
||||||
color: @green;
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -21,7 +21,6 @@
|
||||||
|
|
||||||
workspace=1,default:true,gapsout:0,gapsin:0,border:false,decorate:false
|
workspace=1,default:true,gapsout:0,gapsin:0,border:false,decorate:false
|
||||||
|
|
||||||
${if config.myOptions.programs.waybar.enable then "exec-once=systemctl --user stop waybar.service" else ""}
|
|
||||||
exec-once=[workspace 1;fullscreen;noanim] ${pkgs.greetd.${cfg.greeter}}/bin/${cfg.greeter} -l; ${inputs.hyprland.packages.${pkgs.system}.hyprland}/bin/hyprctl dispatch exit
|
exec-once=[workspace 1;fullscreen;noanim] ${pkgs.greetd.${cfg.greeter}}/bin/${cfg.greeter} -l; ${inputs.hyprland.packages.${pkgs.system}.hyprland}/bin/hyprctl dispatch exit
|
||||||
exec-once=${inputs.hyprland.packages.${pkgs.system}.hyprland}/bin/hyprctl dispatch focuswindow ${cfg.greeter}
|
exec-once=${inputs.hyprland.packages.${pkgs.system}.hyprland}/bin/hyprctl dispatch focuswindow ${cfg.greeter}
|
||||||
'';
|
'';
|
||||||
|
|
Loading…
Reference in a new issue