{
roles.hyprland.enable = true;
hm = {
wayland.windowManager.hyprland.settings = {
exec-once = [
"waybar"
];
general = {
layout = "hy3";
border_size = 1;
gaps_in = 6;
gaps_out = 12;
};
decoration = {
rounding = 8;
drop_shadow = false;
blur = {
enabled = false;
};
};
animations = {
enabled = true;
first_launch_animation = false;
};
monitor = [
"DP-2,3840x2160@60,0x0,1"
"DP-1,2560x1440@59,3840x0,1"
"HDMI-A-1,1920x1080@60,6400x0,1,transform,1"
];
workspace = [
"1,monitor:DP-1,persistent:1"
"2,monitor:DP-1"
"3,monitor:DP-1"
"4,monitor:DP-1"
"5,monitor:DP-1"
"6,monitor:DP-2,persistent:1"
"7,monitor:DP-2,persistent:1"
"8,monitor:HDMI-A-1,persistent:1"
"9,monitor:HDMI-A-1,persistent:1"
];
};
programs.wpaperd.settings = {
DP-2 = {
path = "/home/skye/Nextcloud/Wallpapers/forest";
duration = "15m";
};
DP-1 = {
path = "/home/skye/Nextcloud/Wallpapers/minimalgals";
duration = "15m";
};
HDMI-A-1 = {
path = "/home/skye/Nextcloud/Wallpapers/sailormoonmobile";
duration = "15m";
};
};
programs.waybar = {
settings = [
{
output = "DP-2";
layer = "bottom";
position = "bottom";
height = 0;
spacing = 8;
margin = "0 12 12 12";
modules-center = ["mpris"];
modules-right = ["hyprland/workspaces"];
mpris = {
format = "{title} - {artist} - {album}";
};
"hyprland/workspaces" = {
format = "";
persistent-workspaces = {
"DP-2" = [6 7];
};
};
}
{
output = "DP-1";
layer = "bottom";
position = "bottom";
height = 0;
spacing = 8;
margin = "0 12 12 12";
modules-left = ["hyprland/window"];
modules-center = ["hyprland/workspaces"];
modules-right = ["hyprland/language" "clock" "tray"];
"hyprland/workspaces" = {
format = "";
persistent-workspaces = {
"DP-1" = [1 2 3 4 5];
};
};
"hyprland/language" = {
format-en = "US";
format-fi = "FI";
format-no = "NO";
};
clock = {
format = "{:%H:%M}";
format-alt = "{:%A, %B %d, %Y (%R)}";
};
}
{
output = "HDMI-A-1";
layer = "bottom";
position = "top";
height = 0;
spacing = 8;
margin = "12 12 0 12";
modules-left = ["hyprland/workspaces"];
modules-right = ["cpu" "memory" "disk"];
"hyprland/workspaces" = {
format = "";
persistent-workspaces = {
"HDMI-A-1" = [8 9];
};
};
cpu = {
format = " {usage}%";
};
memory = {
format = " {used}/{total}GiB";
};
disk = {
format = " {used}/{total}";
};
}
];
style = ''
@define-color text #444444;
/* https://www.color-hex.com/color-palette/45494 */
@define-color white0 #ffffff;
@define-color white1 #f6f6f6;
@define-color white2 #ececec;
@define-color white3 #e1e1e1;
@define-color white4 #d0d0d0;
/* https://www.color-hex.com/color-palette/5361 */
@define-color red #ffb3ba;
@define-color orange #ffdfba;
@define-color yellow #ffffba;
@define-color green #baffc9;
@define-color blue #bae1ff;
* {
font-family: VictorMono Nerd Font;
border: none;
border-radius: 10px;
}
window#waybar {
background: transparent;
color: @text;
font-size: 14px;
font-weight: 900;
}
#clock,
#cpu,
#disk,
#language,
#memory,
#mpris,
#tray,
#window,
#workspaces {
background: @white0;
padding: 0 6px;
}
#mpris.paused {
color: @orange;
}
#window {
font-weight: 700;
font-style: italic;
}
#workspaces button {
background: @white4;
font-size: 0px;
min-height: 10px;
min-width: 10px;
padding: 0px;
margin: 10px;
transition: all 200ms linear;
}
#workspaces button.empty {
background: @white2;
}
#workspaces button.visible {
background: @blue;
padding: 0 6px;
}
#workspaces button.active {
background: @green;
padding: 0 6px;
}
#workspaces button.urgent {
background: @red;
}
'';
};
};
}