From de9d8101c2081fe106c040eac699f12d8d8c7b47 Mon Sep 17 00:00:00 2001 From: Gregor Grigorjan Date: Fri, 29 Dec 2023 15:14:00 +0200 Subject: [PATCH] wip: ags --- flake.lock | 561 ++++++++++++++++++- flake.nix | 6 + modules/nixos/desktop/addons/ags/default.nix | 70 +++ modules/nixos/desktop/hyprland/default.nix | 16 +- 4 files changed, 612 insertions(+), 41 deletions(-) create mode 100644 modules/nixos/desktop/addons/ags/default.nix diff --git a/flake.lock b/flake.lock index 71e75ef4..615d7581 100644 --- a/flake.lock +++ b/flake.lock @@ -22,6 +22,68 @@ "type": "github" } }, + "ags": { + "inputs": { + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1703335620, + "narHash": "sha256-utPnd/vAhie8OPIJRQPRQXH9oGFV9uCzrDSqRblYUP0=", + "owner": "Aylur", + "repo": "ags", + "rev": "1342fbdd70a81279c585268416f3fde66554bcbb", + "type": "github" + }, + "original": { + "owner": "Aylur", + "repo": "ags", + "type": "github" + } + }, + "ags_2": { + "inputs": { + "nixpkgs": "nixpkgs_2" + }, + "locked": { + "lastModified": 1702952228, + "narHash": "sha256-TTHyy4fSYAgvZ6htMJQHVmTJWQEWQIDt0nXs8sFk+Og=", + "owner": "Aylur", + "repo": "ags", + "rev": "ab56031d53ebc90453251c409a844576095148bd", + "type": "github" + }, + "original": { + "owner": "Aylur", + "repo": "ags", + "type": "github" + } + }, + "aylur-dotfiles": { + "inputs": { + "ags": "ags_2", + "firefox-gnome-theme": "firefox-gnome-theme", + "home-manager": "home-manager_2", + "hyprland": "hyprland", + "hyprland-plugins": "hyprland-plugins", + "lf-icons": "lf-icons", + "more-waita": "more-waita", + "nixpkgs": "nixpkgs_5" + }, + "locked": { + "lastModified": 1703360625, + "narHash": "sha256-OQjf3zB/m7HzNJi+diNTBc9WLUKI7/AsK+25NHQM0Xo=", + "owner": "gekoke", + "repo": "aylur-dotfiles", + "rev": "298cb6c3087b85bc609a42630d68b5dea6f48898", + "type": "github" + }, + "original": { + "owner": "gekoke", + "ref": "main", + "repo": "aylur-dotfiles", + "type": "github" + } + }, "base16": { "inputs": { "fromYaml": "fromYaml" @@ -177,7 +239,7 @@ "emacs-overlay": { "inputs": { "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs", + "nixpkgs": "nixpkgs_6", "nixpkgs-stable": "nixpkgs-stable" }, "locked": { @@ -194,6 +256,22 @@ "type": "github" } }, + "firefox-gnome-theme": { + "flake": false, + "locked": { + "lastModified": 1702138393, + "narHash": "sha256-2jRm1yzX+gKpSCtdpYt1olIgWVEkJnS7FeK00o9X1ko=", + "owner": "rafaelmardojai", + "repo": "firefox-gnome-theme", + "rev": "d2e6cfdd63651ae8168e5905d94138f406580dd6", + "type": "github" + }, + "original": { + "owner": "rafaelmardojai", + "repo": "firefox-gnome-theme", + "type": "github" + } + }, "flake-compat": { "flake": false, "locked": { @@ -264,7 +342,7 @@ }, "flake-utils": { "inputs": { - "systems": "systems" + "systems": "systems_3" }, "locked": { "lastModified": 1694529238, @@ -300,7 +378,7 @@ }, "flake-utils_2": { "inputs": { - "systems": "systems_3" + "systems": "systems_5" }, "locked": { "lastModified": 1685518550, @@ -318,7 +396,7 @@ }, "flake-utils_3": { "inputs": { - "systems": "systems_4" + "systems": "systems_6" }, "locked": { "lastModified": 1694529238, @@ -336,7 +414,7 @@ }, "flake-utils_4": { "inputs": { - "systems": "systems_5" + "systems": "systems_7" }, "locked": { "lastModified": 1685518550, @@ -411,6 +489,27 @@ } }, "home-manager_2": { + "inputs": { + "nixpkgs": [ + "aylur-dotfiles", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1702538064, + "narHash": "sha256-At5GwJPu2tzvS9dllhBoZmqK6lkkh/sOp2YefWRlaL8=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "0e2e443ff24f9d75925e91b89d1da44b863734af", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "type": "github" + } + }, + "home-manager_3": { "inputs": { "nixpkgs": [ "nixpkgs" @@ -430,7 +529,7 @@ "type": "github" } }, - "home-manager_3": { + "home-manager_4": { "inputs": { "nixpkgs": [ "stylix", @@ -454,19 +553,17 @@ "hyprland": { "inputs": { "hyprland-protocols": "hyprland-protocols", - "nixpkgs": [ - "nixpkgs" - ], - "systems": "systems_2", + "nixpkgs": "nixpkgs_3", + "systems": "systems", "wlroots": "wlroots", "xdph": "xdph" }, "locked": { - "lastModified": 1698945632, - "narHash": "sha256-D49t5G6JBDLRZv5nrMoOoC4J611z1S0LQ7RkNImpGI0=", + "lastModified": 1702576940, + "narHash": "sha256-oZAcNIJ9T49N9V+8HDRqPpSMp4R2+S+CO6iomsDYwU0=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "f10996b5753bfc854b019f6889d6bc0c91961e3f", + "rev": "f7cde9c92cb9e7c908f18ecf10ebdb366d0832b5", "type": "github" }, "original": { @@ -495,13 +592,33 @@ "type": "github" } }, + "hyprland-plugins": { + "inputs": { + "hyprland": "hyprland_2" + }, + "locked": { + "lastModified": 1702559352, + "narHash": "sha256-KYV+CEVrUzURolRALtyF6gfob/aq9MekjBgAjWdkzpQ=", + "owner": "hyprwm", + "repo": "hyprland-plugins", + "rev": "af229e6aee2b1f3c005529862b17c2e2a3d6c8c7", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprland-plugins", + "type": "github" + } + }, "hyprland-protocols": { "inputs": { "nixpkgs": [ + "aylur-dotfiles", "hyprland", "nixpkgs" ], "systems": [ + "aylur-dotfiles", "hyprland", "systems" ] @@ -520,12 +637,144 @@ "type": "github" } }, + "hyprland-protocols_2": { + "inputs": { + "nixpkgs": [ + "aylur-dotfiles", + "hyprland-plugins", + "hyprland", + "nixpkgs" + ], + "systems": [ + "aylur-dotfiles", + "hyprland-plugins", + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1691753796, + "narHash": "sha256-zOEwiWoXk3j3+EoF3ySUJmberFewWlagvewDRuWYAso=", + "owner": "hyprwm", + "repo": "hyprland-protocols", + "rev": "0c2ce70625cb30aef199cb388f99e19a61a6ce03", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprland-protocols", + "type": "github" + } + }, + "hyprland-protocols_3": { + "inputs": { + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1691753796, + "narHash": "sha256-zOEwiWoXk3j3+EoF3ySUJmberFewWlagvewDRuWYAso=", + "owner": "hyprwm", + "repo": "hyprland-protocols", + "rev": "0c2ce70625cb30aef199cb388f99e19a61a6ce03", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprland-protocols", + "type": "github" + } + }, + "hyprland_2": { + "inputs": { + "hyprland-protocols": "hyprland-protocols_2", + "nixpkgs": "nixpkgs_4", + "systems": "systems_2", + "wlroots": "wlroots_2", + "xdph": "xdph_2" + }, + "locked": { + "lastModified": 1699214243, + "narHash": "sha256-Qf7gKEGDTE9jbcMjJJXuJwEJHTsJQM+e2DpXC6LFnTo=", + "owner": "hyprwm", + "repo": "Hyprland", + "rev": "ecf98069f655a4e54943ec70d638ddcf429211d1", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "Hyprland", + "type": "github" + } + }, + "hyprland_3": { + "inputs": { + "hyprland-protocols": "hyprland-protocols_3", + "nixpkgs": [ + "nixpkgs" + ], + "systems": "systems_4", + "wlroots": "wlroots_3", + "xdph": "xdph_3" + }, + "locked": { + "lastModified": 1698945632, + "narHash": "sha256-D49t5G6JBDLRZv5nrMoOoC4J611z1S0LQ7RkNImpGI0=", + "owner": "hyprwm", + "repo": "Hyprland", + "rev": "f10996b5753bfc854b019f6889d6bc0c91961e3f", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "Hyprland", + "type": "github" + } + }, + "lf-icons": { + "flake": false, + "locked": { + "lastModified": 1702270293, + "narHash": "sha256-C8MCVpogbUPUrOtHcXioYxSkeOEVaXD8n6RpDYkvR9o=", + "owner": "gokcehan", + "repo": "lf", + "rev": "d8b7df87cbc0592fcb9ed2cb1f41e24279303ae2", + "type": "github" + }, + "original": { + "owner": "gokcehan", + "repo": "lf", + "type": "github" + } + }, + "more-waita": { + "flake": false, + "locked": { + "lastModified": 1700249054, + "narHash": "sha256-A/XigUb903ebJo7TmhdqOm4uy5HWcCSHFaxhb5plPQE=", + "owner": "somepaulo", + "repo": "MoreWaita", + "rev": "05c406b47326cdb0f481486156a6c9c9b28ef304", + "type": "github" + }, + "original": { + "owner": "somepaulo", + "repo": "MoreWaita", + "type": "github" + } + }, "nix-pre-commit-hooks": { "inputs": { "flake-compat": "flake-compat", "flake-utils": "flake-utils_2", "gitignore": "gitignore", - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs_7", "nixpkgs-stable": "nixpkgs-stable_2" }, "locked": { @@ -560,11 +809,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1697723726, - "narHash": "sha256-SaTWPkI8a5xSHX/rrKzUe+/uVNy6zCGMXgoeMb7T9rg=", + "lastModified": 1693471703, + "narHash": "sha256-0l03ZBL8P1P6z8MaSDS/MvuU8E75rVxe5eE1N6gxeTo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "7c9cc5a6e5d38010801741ac830a3f8fd667a7a0", + "rev": "3e52e76b70d5508f3cec70b882a29199f4d1ee85", "type": "github" }, "original": { @@ -606,7 +855,103 @@ "type": "github" } }, + "nixpkgs_10": { + "locked": { + "lastModified": 1702151865, + "narHash": "sha256-9VAt19t6yQa7pHZLDbil/QctAgVsA66DLnzdRGqDisg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "666fc80e7b2afb570462423cb0e1cf1a3a34fedd", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs_2": { + "locked": { + "lastModified": 1693471703, + "narHash": "sha256-0l03ZBL8P1P6z8MaSDS/MvuU8E75rVxe5eE1N6gxeTo=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "3e52e76b70d5508f3cec70b882a29199f4d1ee85", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { + "locked": { + "lastModified": 1702312524, + "narHash": "sha256-gkZJRDBUCpTPBvQk25G0B7vfbpEYM5s5OZqghkjZsnE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "a9bf124c46ef298113270b1f84a164865987a91c", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_4": { + "locked": { + "lastModified": 1698134075, + "narHash": "sha256-foCD+nuKzfh49bIoiCBur4+Fx1nozo+4C/6k8BYk4sg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "8efd5d1e283604f75a808a20e6cde0ef313d07d4", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_5": { + "locked": { + "lastModified": 1702312524, + "narHash": "sha256-gkZJRDBUCpTPBvQk25G0B7vfbpEYM5s5OZqghkjZsnE=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "a9bf124c46ef298113270b1f84a164865987a91c", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_6": { + "locked": { + "lastModified": 1697723726, + "narHash": "sha256-SaTWPkI8a5xSHX/rrKzUe+/uVNy6zCGMXgoeMb7T9rg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "7c9cc5a6e5d38010801741ac830a3f8fd667a7a0", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_7": { "locked": { "lastModified": 1689261696, "narHash": "sha256-LzfUtFs9MQRvIoQ3MfgSuipBVMXslMPH/vZ+nM40LkA=", @@ -622,7 +967,7 @@ "type": "github" } }, - "nixpkgs_3": { + "nixpkgs_8": { "locked": { "lastModified": 1698611440, "narHash": "sha256-jPjHjrerhYDy3q9+s5EAsuhyhuknNfowY6yt6pjn9pc=", @@ -638,7 +983,7 @@ "type": "github" } }, - "nixpkgs_4": { + "nixpkgs_9": { "locked": { "lastModified": 1686020360, "narHash": "sha256-Wee7lIlZ6DIZHHLiNxU5KdYZQl0iprENXa/czzI6Cj4=", @@ -736,14 +1081,16 @@ "root": { "inputs": { "agenix": "agenix", + "ags": "ags", + "aylur-dotfiles": "aylur-dotfiles", "emacs-overlay": "emacs-overlay", "flake-parts": "flake-parts", - "home-manager": "home-manager_2", - "hyprland": "hyprland", + "home-manager": "home-manager_3", + "hyprland": "hyprland_3", "hyprland-contrib": "hyprland-contrib", "nix-pre-commit-hooks": "nix-pre-commit-hooks", "nixos-hardware": "nixos-hardware", - "nixpkgs": "nixpkgs_3", + "nixpkgs": "nixpkgs_8", "nur": "nur", "nwg-displays-with-desktop-file": "nwg-displays-with-desktop-file", "pinned-swww": "pinned-swww", @@ -752,7 +1099,8 @@ "snowfall-lib": "snowfall-lib", "spicetify-nix": "spicetify-nix", "stylix": "stylix", - "systems": "systems_6" + "systems": "systems_8", + "wrapper-manager": "wrapper-manager" } }, "snowfall-lib": { @@ -780,7 +1128,7 @@ "spicetify-nix": { "inputs": { "flake-utils": "flake-utils_4", - "nixpkgs": "nixpkgs_4" + "nixpkgs": "nixpkgs_9" }, "locked": { "lastModified": 1693075322, @@ -807,7 +1155,7 @@ "base16-tmux": "base16-tmux", "base16-vim": "base16-vim", "flake-compat": "flake-compat_3", - "home-manager": "home-manager_3", + "home-manager": "home-manager_4", "nixpkgs": [ "nixpkgs" ] @@ -827,6 +1175,36 @@ } }, "systems": { + "locked": { + "lastModified": 1689347949, + "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "owner": "nix-systems", + "repo": "default-linux", + "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default-linux", + "type": "github" + } + }, + "systems_2": { + "locked": { + "lastModified": 1689347949, + "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "owner": "nix-systems", + "repo": "default-linux", + "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default-linux", + "type": "github" + } + }, + "systems_3": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -841,7 +1219,7 @@ "type": "github" } }, - "systems_2": { + "systems_4": { "locked": { "lastModified": 1689347949, "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", @@ -856,7 +1234,7 @@ "type": "github" } }, - "systems_3": { + "systems_5": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -871,7 +1249,7 @@ "type": "github" } }, - "systems_4": { + "systems_6": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -886,7 +1264,7 @@ "type": "github" } }, - "systems_5": { + "systems_7": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -901,7 +1279,7 @@ "type": "github" } }, - "systems_6": { + "systems_8": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -917,6 +1295,44 @@ } }, "wlroots": { + "flake": false, + "locked": { + "host": "gitlab.freedesktop.org", + "lastModified": 1701368958, + "narHash": "sha256-7kvyoA91etzVEl9mkA/EJfB6z/PltxX7Xc4gcr7/xlo=", + "owner": "wlroots", + "repo": "wlroots", + "rev": "5d639394f3e83b01596dcd166a44a9a1a2583350", + "type": "gitlab" + }, + "original": { + "host": "gitlab.freedesktop.org", + "owner": "wlroots", + "repo": "wlroots", + "rev": "5d639394f3e83b01596dcd166a44a9a1a2583350", + "type": "gitlab" + } + }, + "wlroots_2": { + "flake": false, + "locked": { + "host": "gitlab.freedesktop.org", + "lastModified": 1697909146, + "narHash": "sha256-jU0I6FoCKnj4zIBL4daosFWh81U1fM719Z6cae8PxSY=", + "owner": "wlroots", + "repo": "wlroots", + "rev": "47bf87ade2bd32395615a385ebde1fefbcdf79a2", + "type": "gitlab" + }, + "original": { + "host": "gitlab.freedesktop.org", + "owner": "wlroots", + "repo": "wlroots", + "rev": "47bf87ade2bd32395615a385ebde1fefbcdf79a2", + "type": "gitlab" + } + }, + "wlroots_3": { "flake": false, "locked": { "host": "gitlab.freedesktop.org", @@ -935,7 +1351,92 @@ "type": "gitlab" } }, + "wrapper-manager": { + "inputs": { + "nixpkgs": "nixpkgs_10" + }, + "locked": { + "lastModified": 1702396227, + "narHash": "sha256-JTgwZK6m3Lt1LrjgWdl5+9RyDlAI9mzH3QHFMY8RwVY=", + "owner": "viperML", + "repo": "wrapper-manager", + "rev": "3a4c510ffb9f01fc7cab5e23f5ae818d72a66e1a", + "type": "github" + }, + "original": { + "owner": "viperML", + "repo": "wrapper-manager", + "type": "github" + } + }, "xdph": { + "inputs": { + "hyprland-protocols": [ + "aylur-dotfiles", + "hyprland", + "hyprland-protocols" + ], + "nixpkgs": [ + "aylur-dotfiles", + "hyprland", + "nixpkgs" + ], + "systems": [ + "aylur-dotfiles", + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1702334919, + "narHash": "sha256-ibOZ3TLjqndGMcj2f+07NFwDWoum4IbzF58byZuJJNg=", + "owner": "hyprwm", + "repo": "xdg-desktop-portal-hyprland", + "rev": "f5c3576c3b6cb1c31a8dfa3e4113f59bfe40cd71", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "xdg-desktop-portal-hyprland", + "type": "github" + } + }, + "xdph_2": { + "inputs": { + "hyprland-protocols": [ + "aylur-dotfiles", + "hyprland-plugins", + "hyprland", + "hyprland-protocols" + ], + "nixpkgs": [ + "aylur-dotfiles", + "hyprland-plugins", + "hyprland", + "nixpkgs" + ], + "systems": [ + "aylur-dotfiles", + "hyprland-plugins", + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1697981233, + "narHash": "sha256-y8q4XUwx+gVK7i2eLjfR32lVo7TYvEslyzrmzYEaPZU=", + "owner": "hyprwm", + "repo": "xdg-desktop-portal-hyprland", + "rev": "22e7a65ff9633e1dedfa5317fdffc49f68de2ff2", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "xdg-desktop-portal-hyprland", + "type": "github" + } + }, + "xdph_3": { "inputs": { "hyprland-protocols": [ "hyprland", diff --git a/flake.nix b/flake.nix index 10abb544..642a2810 100644 --- a/flake.nix +++ b/flake.nix @@ -44,6 +44,12 @@ nwg-displays-with-desktop-file.url = "github:gekoke/nixpkgs/gekoke/nwg-displays"; pinned-swww.url = "github:NixOS/nixpkgs/8bf3e834daedadc6d0f4172616b2bdede1109c48"; + + ags.url = "github:Aylur/ags"; + + aylur-dotfiles.url = "github:gekoke/aylur-dotfiles/main"; + + wrapper-manager.url = "github:viperML/wrapper-manager"; }; outputs = inputs: diff --git a/modules/nixos/desktop/addons/ags/default.nix b/modules/nixos/desktop/addons/ags/default.nix new file mode 100644 index 00000000..e422cd46 --- /dev/null +++ b/modules/nixos/desktop/addons/ags/default.nix @@ -0,0 +1,70 @@ +{ inputs, pkgs, lib, ... }: +let + inherit (lib) mkEnableOption; +in +{ + options.elementary.desktop.addons.ags = { + enable = mkEnableOption "Aylur's GTK Shell"; + }; + + config = { + elementary.home = { + extraOptions.imports = [ + inputs.ags.homeManagerModules.default + ]; + + packages = builtins.attrValues + { + inherit (pkgs) + # Dependencies + brightnessctl + nerdfonts + sassc + swww + + # Optional dependencies + asusctl + hyprpicker + imagemagick + pavucontrol + slurp + supergfxctl + swappy + wayshot + wf-recorder + wl-gammactl + ; + }; + + + programs.ags = { + enable = true; + }; + + configFile."ags" = { + recursive = true; + source = "${inputs.aylur-dotfiles}/ags/"; + }; + }; + + elementary.desktop.hyprland.extraHomeManagerOptions.extraConfig = '' + bind=CTRL SHIFT, R, exec, ags quit; ags -b hypr + + bind=SUPER, P, exec, ags -b hypr -t applauncher + bind=,XF86PowerOff, exec, ags -b hypr -t powermenu + bind=SUPER, Tab, exec, ags -b hypr -t overview + + bind=,XF86Launch4, exec, ags -b hypr -r 'recorder.start()' + bind=,Print, exec, ags -b hypr -r 'recorder.screenshot()' + bind=SHIFT, Print, exec, ags -b hypr -r 'recorder.screenshot(true)' + + bindle=,XF86MonBrightnessUp, exec, ags -b hypr -r 'brightness.screen += 0.05; indicator.display()' + bindle=,XF86MonBrightnessDown, exec, ags -b hypr -r 'brightness.screen -= 0.05; indicator.display()' + bindle=,XF86KbdBrightnessUp, exec, ags -b hypr -r 'brightness.kbd++; indicator.kbd()' + bindle=,XF86KbdBrightnessDown, exec, ags -b hypr -r 'brightness.kbd--; indicator.kbd()' + + bindle=,XF86AudioRaiseVolume, exec, ags -b hypr -r 'audio.speaker.volume += 0.05; indicator.speaker()' + bindle=,XF86AudioLowerVolume, exec, ags -b hypr -r 'audio.speaker.volume -= 0.05; indicator.speaker()' + ''; + }; +} diff --git a/modules/nixos/desktop/hyprland/default.nix b/modules/nixos/desktop/hyprland/default.nix index 03b7caa9..56d146dc 100644 --- a/modules/nixos/desktop/hyprland/default.nix +++ b/modules/nixos/desktop/hyprland/default.nix @@ -13,6 +13,10 @@ in config = mkIf cfg.enable { + environment.systemPackages = [ + pkgs.gnome.adwaita-icon-theme + ]; + programs.hyprland = { enable = true; enableNvidiaPatches = config.elementary.hardware.nvidia.enable; @@ -31,8 +35,6 @@ in }; elementary = { - services.udiskie = enabled; - desktop = { hyprland.extraHomeManagerOptions = { enable = true; @@ -47,17 +49,9 @@ in builtins.readFile ./hyprland.conf + masterMonocleCommand; }; addons = { - waybar = enabled // { hyprlandSupport = true; }; - rofi = enabled; - dunst = enabled; - wlogout = enabled; - avizo = enabled; + ags.enable = true; unclutter = enabled; - swww = enabled; - swaylock = enabled; clipboard = enabled; - keyring = enabled; - screenshot = enabled // { hyprlandSupport = true; }; cursor = enabled; }; };