hypr: add hyprspace overview and waybar config
This commit is contained in:
71
nixos/flake.lock
generated
71
nixos/flake.lock
generated
@@ -29,7 +29,7 @@
|
||||
"railbird-secrets",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": "systems_11"
|
||||
"systems": "systems_12"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1707830867,
|
||||
@@ -405,7 +405,7 @@
|
||||
},
|
||||
"flake-utils_10": {
|
||||
"inputs": {
|
||||
"systems": "systems_12"
|
||||
"systems": "systems_13"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709126324,
|
||||
@@ -423,7 +423,7 @@
|
||||
},
|
||||
"flake-utils_11": {
|
||||
"inputs": {
|
||||
"systems": "systems_14"
|
||||
"systems": "systems_15"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1710146030,
|
||||
@@ -441,7 +441,7 @@
|
||||
},
|
||||
"flake-utils_12": {
|
||||
"inputs": {
|
||||
"systems": "systems_15"
|
||||
"systems": "systems_16"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1685518550,
|
||||
@@ -459,7 +459,7 @@
|
||||
},
|
||||
"flake-utils_13": {
|
||||
"inputs": {
|
||||
"systems": "systems_16"
|
||||
"systems": "systems_17"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1681202837,
|
||||
@@ -515,7 +515,7 @@
|
||||
},
|
||||
"flake-utils_4": {
|
||||
"inputs": {
|
||||
"systems": "systems_5"
|
||||
"systems": "systems_6"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
@@ -533,7 +533,7 @@
|
||||
},
|
||||
"flake-utils_5": {
|
||||
"inputs": {
|
||||
"systems": "systems_6"
|
||||
"systems": "systems_7"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
@@ -551,7 +551,7 @@
|
||||
},
|
||||
"flake-utils_6": {
|
||||
"inputs": {
|
||||
"systems": "systems_7"
|
||||
"systems": "systems_8"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
@@ -569,7 +569,7 @@
|
||||
},
|
||||
"flake-utils_7": {
|
||||
"inputs": {
|
||||
"systems": "systems_8"
|
||||
"systems": "systems_9"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1685518550,
|
||||
@@ -587,7 +587,7 @@
|
||||
},
|
||||
"flake-utils_8": {
|
||||
"inputs": {
|
||||
"systems": "systems_9"
|
||||
"systems": "systems_10"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
@@ -605,7 +605,7 @@
|
||||
},
|
||||
"flake-utils_9": {
|
||||
"inputs": {
|
||||
"systems": "systems_10"
|
||||
"systems": "systems_11"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
@@ -1580,6 +1580,27 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprspace": {
|
||||
"inputs": {
|
||||
"hyprland": [
|
||||
"hyprland"
|
||||
],
|
||||
"systems": "systems_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1767871242,
|
||||
"narHash": "sha256-Gge7LY1lrPc2knDnyw8GBQ2sxRPzM7W2T6jNG1HY5bA=",
|
||||
"owner": "KZDKM",
|
||||
"repo": "Hyprspace",
|
||||
"rev": "bcd969224ffeb6266c6618c192949461135eef38",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "KZDKM",
|
||||
"repo": "Hyprspace",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprtoolkit": {
|
||||
"inputs": {
|
||||
"aquamarine": [
|
||||
@@ -2484,6 +2505,7 @@
|
||||
"home-manager": "home-manager_2",
|
||||
"hy3": "hy3",
|
||||
"hyprland": "hyprland",
|
||||
"hyprspace": "hyprspace",
|
||||
"imalison-taffybar": "imalison-taffybar",
|
||||
"nix": "nix",
|
||||
"nixified-ai": "nixified-ai",
|
||||
@@ -2495,7 +2517,7 @@
|
||||
"org-agenda-api": "org-agenda-api",
|
||||
"railbird-secrets": "railbird-secrets",
|
||||
"status-notifier-item": "status-notifier-item_2",
|
||||
"systems": "systems_13",
|
||||
"systems": "systems_14",
|
||||
"taffybar": "taffybar_2",
|
||||
"vscode-server": "vscode-server",
|
||||
"xmonad": "xmonad_3",
|
||||
@@ -2735,6 +2757,21 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_17": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_2": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
@@ -2782,16 +2819,16 @@
|
||||
},
|
||||
"systems_5": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"repo": "default-linux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
|
||||
@@ -42,6 +42,11 @@
|
||||
inputs.hyprland.follows = "hyprland";
|
||||
};
|
||||
|
||||
hyprspace = {
|
||||
url = "github:KZDKM/Hyprspace";
|
||||
inputs.hyprland.follows = "hyprland";
|
||||
};
|
||||
|
||||
railbird-secrets = {
|
||||
url = "git+ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git";
|
||||
};
|
||||
@@ -153,6 +158,7 @@
|
||||
imalison-taffybar,
|
||||
hyprland,
|
||||
hy3,
|
||||
hyprspace,
|
||||
org-agenda-api,
|
||||
flake-utils,
|
||||
...
|
||||
|
||||
@@ -8,114 +8,37 @@ makeEnable config "myModules.hyprland" true {
|
||||
|
||||
home-manager.sharedModules = [
|
||||
{
|
||||
# Wire the Hyprland config from dotfiles into ~/.config/hypr
|
||||
xdg.configFile."hypr" = {
|
||||
source = ../dotfiles/config/hypr;
|
||||
xdg.configFile."waybar" = {
|
||||
source = ../dotfiles/config/waybar;
|
||||
recursive = true;
|
||||
force = true;
|
||||
};
|
||||
|
||||
programs.waybar = {
|
||||
enable = true;
|
||||
systemd.enable = true;
|
||||
settings = [
|
||||
{
|
||||
layer = "top";
|
||||
position = "top";
|
||||
height = 30;
|
||||
"modules-left" = [ "hyprland/workspaces" ];
|
||||
"modules-center" = [ "hyprland/window" ];
|
||||
"modules-right" = [ "tray" "clock" ];
|
||||
programs.waybar.enable = true;
|
||||
|
||||
"hyprland/workspaces" = {
|
||||
format = "{id}:{windows}";
|
||||
"format-window-separator" = " ";
|
||||
"window-rewrite-default" = "";
|
||||
"window-rewrite" = {
|
||||
"class<firefox>" = "";
|
||||
"class<google-chrome|chromium>" = "";
|
||||
"class<code|codium>" = "";
|
||||
"class<Alacritty|kitty|foot>" = "";
|
||||
"class<Slack>" = "";
|
||||
"class<Spotify>" = "";
|
||||
"class<Element|discord>" = "";
|
||||
"class<pavucontrol>" = "";
|
||||
"class<transmission-gtk>" = "";
|
||||
};
|
||||
"persistent-workspaces" = { "*" = 10; };
|
||||
"all-outputs" = true;
|
||||
"on-click" = "activate";
|
||||
};
|
||||
|
||||
"hyprland/window" = {
|
||||
format = "{class}: {title}";
|
||||
"separate-outputs" = true;
|
||||
};
|
||||
|
||||
tray = {
|
||||
spacing = 8;
|
||||
};
|
||||
|
||||
clock = {
|
||||
format = "{:%a %b %d %I:%M:%S %p}";
|
||||
};
|
||||
}
|
||||
];
|
||||
style = ''
|
||||
* {
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
font-family: "Roboto", "JetBrainsMono Nerd Font";
|
||||
font-size: 11pt;
|
||||
min-height: 0;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background: rgba(24, 24, 24, 0.92);
|
||||
color: #e6e6e6;
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
margin-left: 6px;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
padding: 0 8px;
|
||||
margin: 4px 4px;
|
||||
border-radius: 6px;
|
||||
background: transparent;
|
||||
color: #bfbfbf;
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
background: #e0b45a;
|
||||
color: #1c1c1c;
|
||||
}
|
||||
|
||||
#workspaces button.visible {
|
||||
background: #3a3a3a;
|
||||
color: #e6e6e6;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
background: #e06060;
|
||||
color: #1c1c1c;
|
||||
}
|
||||
|
||||
#workspaces button.empty {
|
||||
color: #777777;
|
||||
}
|
||||
|
||||
#window {
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
||||
#tray,
|
||||
#clock {
|
||||
padding: 0 10px;
|
||||
}
|
||||
'';
|
||||
systemd.user.targets.hyprland-session = {
|
||||
Unit = {
|
||||
Description = "Hyprland session";
|
||||
};
|
||||
};
|
||||
|
||||
systemd.user.services.waybar = {
|
||||
Unit = {
|
||||
Description = "Waybar";
|
||||
PartOf = [ "hyprland-session.target" ];
|
||||
After = [ "hyprland-session.target" ];
|
||||
};
|
||||
Service = {
|
||||
ExecStart = "${pkgs.waybar}/bin/waybar";
|
||||
Restart = "on-failure";
|
||||
RestartSec = 1;
|
||||
};
|
||||
Install = {
|
||||
WantedBy = [ "hyprland-session.target" ];
|
||||
};
|
||||
};
|
||||
|
||||
programs.hyprpanel.enable = false;
|
||||
}
|
||||
];
|
||||
|
||||
@@ -136,6 +59,9 @@ makeEnable config "myModules.hyprland" true {
|
||||
# hy3 plugin from flake (properly built against matching Hyprland)
|
||||
inputs.hy3.packages.${pkgs.stdenv.hostPlatform.system}.hy3
|
||||
|
||||
# Hyprspace plugin from flake (workspace overview)
|
||||
inputs.hyprspace.packages.${pkgs.stdenv.hostPlatform.system}.Hyprspace
|
||||
|
||||
# For scripts
|
||||
jq
|
||||
];
|
||||
|
||||
Reference in New Issue
Block a user