M hosts/alice/hyprland.nix => hosts/alice/hyprland.nix +191 -1
@@ 3,6 3,29 @@
hm = {
wayland.windowManager.hyprland.settings = {
+ exec-once = [
+ "waybar"
+ ];
+
+ general = {
+ 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"
@@ 16,7 39,9 @@
"4,monitor:DP-1"
"5,monitor:DP-1"
"6,monitor:DP-2,persistent:1"
- "7,monitor:HDMI-A-1,persistent:1"
+ "7,monitor:DP-2,persistent:1"
+ "8,monitor:HDMI-A-1,persistent:1"
+ "9,monitor:HDMI-A-1,persistent:1"
];
};
@@ 34,5 59,170 @@
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;
+ }
+ '';
+ };
};
}
M hosts/arwen/hyprland.nix => hosts/arwen/hyprland.nix +19 -0
@@ 3,6 3,25 @@
hm = {
wayland.windowManager.hyprland.settings = {
+ general = {
+ border_size = 1;
+ gaps_in = 2;
+ gaps_out = 2;
+ };
+
+ decoration = {
+ rounding = false;
+ drop_shadow = false;
+ blur = {
+ enabled = false;
+ };
+ };
+
+ animations = {
+ enabled = false;
+ first_launch_animation = false;
+ };
+
monitor = [
"eDP-1,1920x1080@60,0x0,1"
];
M roles/hyprland.nix => roles/hyprland.nix +24 -20
@@ 11,7 11,11 @@ in {
};
config = lib.mkIf cfg.enable {
- environment.systemPackages = [pkgs.bemenu];
+ environment.systemPackages = [
+ pkgs.bemenu
+
+ pkgs.playerctl
+ ];
programs.hyprland.enable = true;
@@ 26,25 30,6 @@ in {
"wpaperd -d"
];
- general = {
- border_size = 1;
- gaps_in = 2;
- gaps_out = 2;
- };
-
- decoration = {
- rounding = false;
- drop_shadow = false;
- blur = {
- enabled = false;
- };
- };
-
- animations = {
- enabled = false;
- first_launch_animation = false;
- };
-
input = {
kb_layout = "us,fi,no";
kb_options = "grp:win_space_toggle,ctrl:nocaps";
@@ 91,6 76,8 @@ in {
"$mod, 5, workspace, 5"
"$mod, 6, workspace, 6"
"$mod, 7, workspace, 7"
+ "$mod, 8, workspace, 8"
+ "$mod, 9, workspace, 9"
"$mod SHIFT, 1, movetoworkspace, 1"
"$mod SHIFT, 2, movetoworkspace, 2"
"$mod SHIFT, 3, movetoworkspace, 3"
@@ 98,6 85,8 @@ in {
"$mod SHIFT, 5, movetoworkspace, 5"
"$mod SHIFT, 6, movetoworkspace, 6"
"$mod SHIFT, 7, movetoworkspace, 7"
+ "$mod SHIFT, 8, movetoworkspace, 8"
+ "$mod SHIFT, 9, movetoworkspace, 9"
];
binde = [
"$mod CTRL, h, resizeactive, -10 0"
@@ 149,6 138,21 @@ in {
};
programs.wpaperd.enable = true;
+
+ services.mako = {
+ enable = true;
+ maxVisible = 5;
+ defaultTimeout = 5000;
+ backgroundColor = "#7298bf";
+ textColor = "#e0c296";
+ borderColor = "#ffffff";
+ borderSize = 2;
+ };
+
+ programs.waybar = {
+ enable = true;
+ systemd.enable = false;
+ };
};
};
}