diff --git a/flake.lock b/flake.lock index eab5229..2d834dd 100644 --- a/flake.lock +++ b/flake.lock @@ -1,48 +1,26 @@ { "nodes": { - "aquamarine": { + "flake-parts": { "inputs": { - "hyprutils": "hyprutils", - "hyprwayland-scanner": "hyprwayland-scanner", - "nixpkgs": [ - "nixpkgs-unstable" - ], - "systems": "systems" + "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1742162448, - "narHash": "sha256-ybpV2+yNExdHnMhhhmtxqgBCgI+nRr8gi/D+VVb9lQY=", - "ref": "refs/tags/v0.8.0", - "rev": "1c8fa0bf04d706698311cf595e80bbd6d3697956", - "revCount": 279, - "type": "git", - "url": "https://github.com/hyprwm/aquamarine" - }, - "original": { - "ref": "refs/tags/v0.8.0", - "type": "git", - "url": "https://github.com/hyprwm/aquamarine" - } - }, - "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "lastModified": 1741352980, + "narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9", "type": "github" }, "original": { - "owner": "edolstra", - "repo": "flake-compat", + "owner": "hercules-ci", + "repo": "flake-parts", "type": "github" } }, "flake-utils": { "inputs": { - "systems": "systems_6" + "systems": "systems_3" }, "locked": { "lastModified": 1681202837, @@ -58,35 +36,13 @@ "type": "github" } }, - "gitignore": { - "inputs": { - "nixpkgs": [ - "hyprland", - "pre-commit-hooks", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", - "type": "github" - } - }, "hardware": { "locked": { - "lastModified": 1741792691, - "narHash": "sha256-f0BVt1/cvA0DQ/q3rB+HY4g4tKksd03ZkzI4xehC2Ew=", + "lastModified": 1743167577, + "narHash": "sha256-I09SrXIO0UdyBFfh0fxDq5WnCDg8XKmZ1HQbaXzMA1k=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "e1f12151258b12c567f456d8248e4694e9390613", + "rev": "0ed819e708af17bfc4bbc63ee080ef308a24aa42", "type": "github" }, "original": { @@ -102,11 +58,11 @@ ] }, "locked": { - "lastModified": 1741955947, - "narHash": "sha256-2lbURKclgKqBNm7hVRtWh0A7NrdsibD0EaWhahUVhhY=", + "lastModified": 1743267068, + "narHash": "sha256-G7866vbO5jgqMcYJzgbxej40O6mBGQMGt6gM0himjoA=", "owner": "nix-community", "repo": "home-manager", - "rev": "4e12151c9e014e2449e0beca2c0e9534b96a26b4", + "rev": "b431496538b0e294fbe44a1441b24ae8195c63f0", "type": "github" }, "original": { @@ -115,252 +71,13 @@ "type": "github" } }, - "hyprcursor": { - "inputs": { - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1738664950, - "narHash": "sha256-xIeGNM+iivwVHkv9tHwOqoUP5dDrtees34bbFKKMZYs=", - "owner": "hyprwm", - "repo": "hyprcursor", - "rev": "7c6d165e1eb9045a996551eb9f121b6d1b30adc3", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprcursor", - "type": "github" - } - }, - "hyprgraphics": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1739049071, - "narHash": "sha256-3+7TpXMrbsUXSwgr5VAKAnmkzMb6JO+Rvc9XRb5NMg4=", - "owner": "hyprwm", - "repo": "hyprgraphics", - "rev": "175c6b29b6ff82100539e7c4363a35a02c74dd73", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprgraphics", - "type": "github" - } - }, - "hyprland": { - "inputs": { - "aquamarine": [ - "aquamarine" - ], - "hyprcursor": "hyprcursor", - "hyprgraphics": "hyprgraphics", - "hyprland-protocols": "hyprland-protocols", - "hyprland-qtutils": "hyprland-qtutils", - "hyprlang": "hyprlang_2", - "hyprutils": "hyprutils_3", - "hyprwayland-scanner": "hyprwayland-scanner_2", - "nixpkgs": [ - "nixpkgs-unstable" - ], - "pre-commit-hooks": "pre-commit-hooks", - "systems": "systems_2", - "xdph": "xdph" - }, - "locked": { - "lastModified": 1738457237, - "narHash": "sha256-dSKR1VpjpdJVZ5dmLgIvAu3K+DYrSbohZkqxSQhjw8U=", - "ref": "refs/tags/v0.47.2", - "rev": "882f7ad7d2bbfc7440d0ccaef93b1cdd78e8e3ff", - "revCount": 5767, - "submodules": true, - "type": "git", - "url": "https://github.com/hyprwm/Hyprland" - }, - "original": { - "ref": "refs/tags/v0.47.2", - "submodules": true, - "type": "git", - "url": "https://github.com/hyprwm/Hyprland" - } - }, - "hyprland-protocols": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1738422629, - "narHash": "sha256-5v+bv75wJWvahyM2xcMTSNNxmV8a7hb01Eey5zYnBJw=", - "owner": "hyprwm", - "repo": "hyprland-protocols", - "rev": "755aef8dab49d0fc4663c715fa4ad221b2aedaed", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-protocols", - "type": "github" - } - }, - "hyprland-qt-support": { - "inputs": { - "hyprlang": [ - "hyprland", - "hyprland-qtutils", - "hyprlang" - ], - "nixpkgs": [ - "hyprland", - "hyprland-qtutils", - "nixpkgs" - ], - "systems": [ - "hyprland", - "hyprland-qtutils", - "systems" - ] - }, - "locked": { - "lastModified": 1737634706, - "narHash": "sha256-nGCibkfsXz7ARx5R+SnisRtMq21IQIhazp6viBU8I/A=", - "owner": "hyprwm", - "repo": "hyprland-qt-support", - "rev": "8810df502cdee755993cb803eba7b23f189db795", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-qt-support", - "type": "github" - } - }, - "hyprland-qtutils": { - "inputs": { - "hyprland-qt-support": "hyprland-qt-support", - "hyprlang": "hyprlang", - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1739048983, - "narHash": "sha256-REhTcXq4qs3B3cCDtLlYDz0GZvmsBSh947Ub6pQWGTQ=", - "owner": "hyprwm", - "repo": "hyprland-qtutils", - "rev": "3504a293c8f8db4127cb0f7cfc1a318ffb4316f8", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-qtutils", - "type": "github" - } - }, "hyprlang": { - "inputs": { - "hyprutils": "hyprutils_2", - "nixpkgs": [ - "hyprland", - "hyprland-qtutils", - "nixpkgs" - ], - "systems": [ - "hyprland", - "hyprland-qtutils", - "systems" - ] - }, - "locked": { - "lastModified": 1741191527, - "narHash": "sha256-kM+11Nch47Xwfgtw2EpRitJuORy4miwoMuRi5tyMBDY=", - "owner": "hyprwm", - "repo": "hyprlang", - "rev": "72df3861f1197e41b078faa3e38eedd60e00018d", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprlang", - "type": "github" - } - }, - "hyprlang_2": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1741191527, - "narHash": "sha256-kM+11Nch47Xwfgtw2EpRitJuORy4miwoMuRi5tyMBDY=", - "owner": "hyprwm", - "repo": "hyprlang", - "rev": "72df3861f1197e41b078faa3e38eedd60e00018d", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprlang", - "type": "github" - } - }, - "hyprlang_3": { "inputs": { "nixpkgs": [ "rose-pine-hyprcursor", "nixpkgs" ], - "systems": "systems_4" + "systems": "systems" }, "locked": { "lastModified": 1709914708, @@ -376,163 +93,34 @@ "type": "github" } }, - "hyprspace": { - "inputs": { - "hyprland": [ - "hyprland" - ], - "systems": "systems_3" - }, - "locked": { - "lastModified": 1741933157, - "narHash": "sha256-HEWIQ1SgUTnc964oDsi68rQQug57BqbdUYqZvr3Ep0A=", - "owner": "KZDKM", - "repo": "Hyprspace", - "rev": "c3cf91bdb6a912f9d2c2779deebdf23385fd659a", - "type": "github" - }, - "original": { - "owner": "KZDKM", - "repo": "Hyprspace", - "type": "github" - } - }, - "hyprutils": { + "nix-gaming": { "inputs": { + "flake-parts": "flake-parts", "nixpkgs": [ - "aquamarine", "nixpkgs" - ], - "systems": [ - "aquamarine", - "systems" ] }, "locked": { - "lastModified": 1741534688, - "narHash": "sha256-EV3945SnjOCuRVbGRghsWx/9D89FyshnSO1Q6/TuQ14=", - "owner": "hyprwm", - "repo": "hyprutils", - "rev": "dd1f720cbc2dbb3c71167c9598045dd3261d27b3", + "lastModified": 1742998728, + "narHash": "sha256-WOJEfqNrgvUFgGlA70S3h9iHIJtT6qhwxVwbiUdVhXs=", + "owner": "fufexan", + "repo": "nix-gaming", + "rev": "5f44cf346870efd1c6300d81d03a132a8834e0e4", "type": "github" }, "original": { - "owner": "hyprwm", - "repo": "hyprutils", - "type": "github" - } - }, - "hyprutils_2": { - "inputs": { - "nixpkgs": [ - "hyprland", - "hyprland-qtutils", - "hyprlang", - "nixpkgs" - ], - "systems": [ - "hyprland", - "hyprland-qtutils", - "hyprlang", - "systems" - ] - }, - "locked": { - "lastModified": 1737632363, - "narHash": "sha256-X9I8POSlHxBVjD0fiX1O2j7U9Zi1+4rIkrsyHP0uHXY=", - "owner": "hyprwm", - "repo": "hyprutils", - "rev": "006620eb29d54ea9086538891404c78563d1bae1", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprutils", - "type": "github" - } - }, - "hyprutils_3": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1741534688, - "narHash": "sha256-EV3945SnjOCuRVbGRghsWx/9D89FyshnSO1Q6/TuQ14=", - "owner": "hyprwm", - "repo": "hyprutils", - "rev": "dd1f720cbc2dbb3c71167c9598045dd3261d27b3", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprutils", - "type": "github" - } - }, - "hyprwayland-scanner": { - "inputs": { - "nixpkgs": [ - "aquamarine", - "nixpkgs" - ], - "systems": [ - "aquamarine", - "systems" - ] - }, - "locked": { - "lastModified": 1739870480, - "narHash": "sha256-SiDN5BGxa/1hAsqhgJsS03C3t2QrLgBT8u+ENJ0Qzwc=", - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "rev": "206367a08dc5ac4ba7ad31bdca391d098082e64b", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "type": "github" - } - }, - "hyprwayland-scanner_2": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1739870480, - "narHash": "sha256-SiDN5BGxa/1hAsqhgJsS03C3t2QrLgBT8u+ENJ0Qzwc=", - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "rev": "206367a08dc5ac4ba7ad31bdca391d098082e64b", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprwayland-scanner", + "owner": "fufexan", + "repo": "nix-gaming", "type": "github" } }, "nixpkgs": { "locked": { - "lastModified": 1741851582, - "narHash": "sha256-cPfs8qMccim2RBgtKGF+x9IBCduRvd/N5F4nYpU0TVE=", + "lastModified": 1743095683, + "narHash": "sha256-gWd4urRoLRe8GLVC/3rYRae1h+xfQzt09xOfb0PaHSk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6607cf789e541e7873d40d3a8f7815ea92204f32", + "rev": "5e5402ecbcb27af32284d4a62553c019a3a49ea6", "type": "github" }, "original": { @@ -542,6 +130,21 @@ "type": "github" } }, + "nixpkgs-lib": { + "locked": { + "lastModified": 1740877520, + "narHash": "sha256-oiwv/ZK/2FhGxrCkQkB83i7GnWXPPLzoqFHpDD3uYpk=", + "owner": "nix-community", + "repo": "nixpkgs.lib", + "rev": "147dee35aab2193b174e4c0868bd80ead5ce755c", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixpkgs.lib", + "type": "github" + } + }, "nixpkgs-ovmf": { "locked": { "lastModified": 1708984720, @@ -560,11 +163,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1741862977, - "narHash": "sha256-prZ0M8vE/ghRGGZcflvxCu40ObKaB+ikn74/xQoNrGQ=", + "lastModified": 1743231893, + "narHash": "sha256-tpJsHMUPEhEnzySoQxx7+kA+KUtgWqvlcUBqROYNNt0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "cdd2ef009676ac92b715ff26630164bb88fec4e0", + "rev": "c570c1f5304493cafe133b8d843c7c1c4a10d3a6", "type": "github" }, "original": { @@ -576,11 +179,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1741851582, - "narHash": "sha256-cPfs8qMccim2RBgtKGF+x9IBCduRvd/N5F4nYpU0TVE=", + "lastModified": 1743095683, + "narHash": "sha256-gWd4urRoLRe8GLVC/3rYRae1h+xfQzt09xOfb0PaHSk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6607cf789e541e7873d40d3a8f7815ea92204f32", + "rev": "5e5402ecbcb27af32284d4a62553c019a3a49ea6", "type": "github" }, "original": { @@ -626,36 +229,11 @@ "url": "https://flakehub.com/f/AshleyYakeley/NixVirt/%2A.tar.gz" } }, - "pre-commit-hooks": { - "inputs": { - "flake-compat": "flake-compat", - "gitignore": "gitignore", - "nixpkgs": [ - "hyprland", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1741379162, - "narHash": "sha256-srpAbmJapkaqGRE3ytf3bj4XshspVR5964OX5LfjDWc=", - "owner": "cachix", - "repo": "git-hooks.nix", - "rev": "b5a62751225b2f62ff3147d0a334055ebadcd5cc", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "git-hooks.nix", - "type": "github" - } - }, "root": { "inputs": { - "aquamarine": "aquamarine", "hardware": "hardware", "home-manager": "home-manager", - "hyprland": "hyprland", - "hyprspace": "hyprspace", + "nix-gaming": "nix-gaming", "nixpkgs": "nixpkgs", "nixpkgs-stable": "nixpkgs-stable", "nixpkgs-unstable": "nixpkgs-unstable", @@ -667,7 +245,7 @@ }, "rose-pine-hyprcursor": { "inputs": { - "hyprlang": "hyprlang_3", + "hyprlang": "hyprlang", "nixpkgs": "nixpkgs_2", "utils": "utils" }, @@ -701,51 +279,6 @@ } }, "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": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", - "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default-linux", - "type": "github" - } - }, - "systems_4": { - "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_5": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -760,7 +293,7 @@ "type": "github" } }, - "systems_6": { + "systems_3": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -777,7 +310,7 @@ }, "utils": { "inputs": { - "systems": "systems_5" + "systems": "systems_2" }, "locked": { "lastModified": 1710146030, @@ -814,47 +347,6 @@ "type": "github" } }, - "xdph": { - "inputs": { - "hyprland-protocols": [ - "hyprland", - "hyprland-protocols" - ], - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "hyprwayland-scanner": [ - "hyprland", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1741934139, - "narHash": "sha256-ZhTcTH9FoeAtbPfWGrhkH7RjLJZ7GeF18nygLAMR+WE=", - "owner": "hyprwm", - "repo": "xdg-desktop-portal-hyprland", - "rev": "150b0b6f52bb422a1b232a53698606fe0320dde0", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "xdg-desktop-portal-hyprland", - "type": "github" - } - }, "zen-browser": { "inputs": { "nixpkgs": [ @@ -862,11 +354,11 @@ ] }, "locked": { - "lastModified": 1741838758, - "narHash": "sha256-nGTC/y9e+1+QIVCzIbiSpPiXM2HfS8YwIDCp52CcOQ4=", + "lastModified": 1743134754, + "narHash": "sha256-NC90oFdXwjABXs7wg0tMi5yxNW/xT1bgezg+0a9+3AI=", "owner": "youwen5", "repo": "zen-browser-flake", - "rev": "03a7fc89bc48344aed00e01b409c1d6ffc4c52ce", + "rev": "ceb2e7122307700e9c310973c793c2c241dc0901", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index c6b190a..82bafa2 100644 --- a/flake.nix +++ b/flake.nix @@ -32,33 +32,6 @@ ## Hyprland ## - aquamarine = { - type = "git"; - url = "https://github.com/hyprwm/aquamarine"; - ref = "refs/tags/v0.8.0"; - inputs.nixpkgs.follows = "nixpkgs-unstable"; - }; - - hyprland = { - type = "git"; - submodules = true; - url = "https://github.com/hyprwm/Hyprland"; - ref = "refs/tags/v0.47.2"; - inputs.aquamarine.follows = "aquamarine"; - inputs.nixpkgs.follows = "nixpkgs-unstable"; - }; - - # TODO: Not working but id like to fix it - # hycov = { - # url = "github:bighu630/hycov"; - # inputs.hyprland.follows = "hyprland"; - # }; - - hyprspace = { - url = "github:KZDKM/Hyprspace"; - inputs.hyprland.follows = "hyprland"; - }; - rose-pine-hyprcursor = { url = "github:ndom91/rose-pine-hyprcursor"; }; diff --git a/home/toph/common/optional/hyprland/binds.nix b/home/toph/common/optional/hyprland/binds.nix index 7302132..e5c524e 100644 --- a/home/toph/common/optional/hyprland/binds.nix +++ b/home/toph/common/optional/hyprland/binds.nix @@ -4,119 +4,196 @@ pkgs, ... }: -{ - #INFO: Reference bind flags: https://wiki.hyprland.org/Configuring/Binds/#bind-flags - wayland.windowManager.hyprland.settings = - let - # -- Functions -- - defaultApp = - type: "${pkgs.gtk3}/bin/gtk-launch $(${pkgs.xdg-utils}/bin/xdg-mime query default ${type})"; - exec = script: "${pkgs.fish}/bin/fish ${script}"; - xdg-open = command: "${pkgs.xdg-utils}/bin/xdg-open ${command}"; +let + ## Functions, Variables and Launchers ## - # -- Script Launchers -- - # colorpicker = exec ./scripts/colorpicker.fish; - # lockscreen = exec ./scripts/lockscreen.fish; - # notify = exec ./scripts/notify.fish; - terminal = exec ./scripts/terminal.fish; - # wlogout = exec ./scripts/wlogout.fish; + # colorpicker = exec ./scripts/colorpicker.fish; + # lockscreen = exec ./scripts/lockscreen.fish; + # notify = exec ./scripts/notify.fish; + # wlogout = exec ./scripts/wlogout.fish; + #gtk-play = "${pkgs.libcanberra-gtk3}/bin/canberra-gtk-play"; + #makoctl = "${config.services.mako.package}/bin/makoctl"; + #notify-send = "${pkgs.libnotify}/bin/notify-send"; + #playerctl = lib.getExe pkgs.playerctl; # installed via /home/common/optional/desktops/playerctl.nix + #swaylock = "lib.getExe pkgs.swaylock; - # -- Commands or Binaries -- - browser = defaultApp "x-scheme-handler/https"; - editor = "code"; - menu = "${pkgs.walker}/bin/walker --modules applications,ssh"; - files = xdg-open "$HOME"; - pactl = lib.getExe' pkgs.pulseaudio "pactl"; + defaultApp = + type: "${pkgs.gtk3}/bin/gtk-launch $(${pkgs.xdg-utils}/bin/xdg-mime query default ${type})"; + exec = script: "${pkgs.fish}/bin/fish ${script}"; - #playerctl = lib.getExe pkgs.playerctl; # installed via /home/common/optional/desktops/playerctl.nix - #swaylock = "lib.getExe pkgs.swaylock; - #makoctl = "${config.services.mako.package}/bin/makoctl"; - #gtk-play = "${pkgs.libcanberra-gtk3}/bin/canberra-gtk-play"; - #notify-send = "${pkgs.libnotify}/bin/notify-send"; + files = "${pkgs.nautilus}/bin/nautilus $HOME"; + browser = defaultApp "x-scheme-handler/https"; + editor = "code"; + launcher = "${pkgs.walker}/bin/walker --modules applications,ssh"; + pactl = lib.getExe' pkgs.pulseaudio "pactl"; + terminal = exec ./scripts/terminal.fish; - # This shits too long - lowerVol = "XF86AudioLowerVolume"; - raiseVol = "XF86AudioRaiseVolume"; - in - { - ## Mouse Binds ## - bindm = [ - ", mouse:275, movewindow" - ", mouse:276, resizewindow" - ]; + ## Long ass keys ## + lowerVol = "XF86AudioLowerVolume"; + raiseVol = "XF86AudioRaiseVolume"; - ## Non-consuming Binds ## - bindn = [ - ]; + ## Keybinds & Submaps ## - ## Repeat Binds ## - binde = [ - # Resize active window 5 pixels in direction - "SUPER_ALT, left, resizeactive, -20 0" - "SUPER_ALT, right, resizeactive, 20 0" - "SUPER_ALT, up, resizeactive, 0 -20" - "SUPER_ALT, down, resizeactive, 0 20" + #INFO: Did this scripts to avoid the shitty hyprland config implementation for nix :) + submaps = { + ## Submap: Reset ## + "" = { + binds = { + ## One-Shot Binds ## + "" = [ + ## Terminal ## + "SUPER, T, exec, ${terminal}" + # "SUPER_SHIFT, T, exec, ${terminal}" # Floating + # "SUPER_ALT, T, exec, ${terminal}" # Select - # -- Volume -- - ", ${raiseVol}, exec, ${pactl} set-sink-volume @DEFAULT_SINK@ +5%" - ", ${lowerVol}, exec, ${pactl} set-sink-volume @DEFAULT_SINK@ -5%" - ", ${raiseVol}, exec, ${pactl} set-source-volume @DEFAULT_SOURCE@ +5%" - ", ${lowerVol}, exec, ${pactl} set-source-volume @DEFAULT_SOURCE@ -5%" - ]; + ## App Runs ## + "SUPER, F, exec, ${files}" + "SUPER, E, exec, ${editor}" + "SUPER, W, exec, ${browser}" + "SUPER, N, exec, nm-connection-editor" - ## One-shot Binds ## - bind = [ - # -- Terminal -- - "SUPER, T, exec, ${terminal}" - "SUPER_SHIFT, T, exec, ${terminal}" # floating - "SUPER_ALT, T, exec, ${terminal}" # select size? + ## Launcher ## + "SUPER, SUPER_L, exec, ${launcher}" + # "SUPER, SUPER_L, exec, ${launcher} --app launcher" + # "SUPER, P, exec, ${launcher} --app color" # Color Picker + # "SUPER, V, exec, ${launcher} --app clip" # Clipboard + # "SUPER, X, exec, ${launcher} --app power" # Power Menu - # -- Apps -- - "SUPER, F, exec, ${files}" - "SUPER, E, exec, ${editor}" - "SUPER, W, exec, ${browser}" - "SUPER, N, exec, nm-connection-editor" - # "SUPER, P, exec, ${colorpicker}" + ## System ## + "SUPER, L, exec, hyprlock" + # "SUPER, L, exec, ${lockscreen}" + "SUPER, Q, killactive," + "CTRL_ALT, Delete, exit," - # -- Menu -- - "SUPER, SUPER_L, exec, ${menu}" - # "SUPER, V, exec, ${menu}" + ## Window Management ## + "SUPER_SHIFT, F, fullscreen, 0" + # "SUPER, F, exec, ${notify} 'Fullscreen Mode'" + "SUPER, Backspace, togglefloating," + "SUPER, Backspace, centerwindow," + "SUPER, left, scroller:movefocus, l" + "SUPER, right, scroller:movefocus, r" + "SUPER, up, scroller:movefocus, u" + "SUPER, down, scroller:movefocus, d" + "SUPER_SHIFT, left, scroller:movewindow, l, nomode" + "SUPER_SHIFT, right, scroller:movewindow, r, nomode" + "SUPER_SHIFT, up, scroller:movewindow, u, nomode" + "SUPER_SHIFT, down, scroller:movewindow, d, nomode" + "SUPER_SHIFT, P, pin," + # "SUPER_SHIFT, P, exec, ${notify} 'Toggled Pin'" + "SUPER_SHIFT, S, swapnext" + # "SUPER_SHIFT, O, toggleopaque" + "SUPER, G, togglegroup" + # "SUPER, G, exec, ${notify} 'Toggled Group'" + "SUPER, Tab, changegroupactive, f" - # -- System -- - # "SUPER, X, exec, ${wlogout}" - # "SUPER, L, exec, ${lockscreen}" - "SUPER, L, exec, hyprlock" - "SUPER, Q, killactive," - "CTRL_ALT, Delete, exit," + # ## Workspaces ## + # ", Home, hyprexpo:expo, toggle" + ", Home, overview:toggle" + "ALT, Tab, cyclenext," + "ALT, Tab, bringactivetotop," + "SUPER_ALT, G, submap, steam" - # -- Window Management -- - "SUPER_SHIFT, F, fullscreen, 0" - # "SUPER, F, exec, ${notify} 'Fullscreen Mode'" - "SUPER, Backspace, togglefloating," - "SUPER, Backspace, centerwindow," - "SUPER, left, movefocus, l" - "SUPER, right, movefocus, r" - "SUPER, up, movefocus, u" - "SUPER, down, movefocus, d" - "SUPER_SHIFT, left, movewindow, l" - "SUPER_SHIFT, right, movewindow, r" - "SUPER_SHIFT, up, movewindow, u" - "SUPER_SHIFT, down, movewindow, d" - "SUPER_SHIFT, P, pin," - # "SUPER_SHIFT, P, exec, ${notify} 'Toggled Pin'" - "SUPER_SHIFT, S, swapnext" - # "SUPER_SHIFT, O, toggleopaque" - "SUPER, G, togglegroup" - # "SUPER, G, exec, ${notify} 'Toggled Group'" - "SUPER, Tab, changegroupactive, f" + ## Scroller ## + "SUPER, P, scroller:pin" + "SUPER, P, scroller:alignwindow, left" + "SUPER, P, scroller:setsize, onethird" + # "\\notify" + "SUPER_SHIFT, P, scroller:pin" + "SUPER_SHIFT, P, scroller:alignwindow, right" + "SUPER_SHIFT, P, scroller:setsize, onethird" + # "\\notify" + "SUPER, A, scroller:jump" + # F20 - F23 + ", code:198, scroller:selectiontoggle" + ", code:199, scroller:selectionworkspace" + ", code:200, scroller:selectionmove, e" + ", code:201, scroller:selectionreset" - # -- Workspaces -- - ", Home, overview:toggle" - # "SUPER, A, " - # TODO: use hycov for alt tab, https://github.com/bighu630/hycov - "ALT, Tab, cyclenext," - "ALT, Tab, bringactivetotop," - ]; + ]; + ## Repeating Binds ## + e = [ + "SUPER_ALT, left, scroller:cyclewidth, next" + "SUPER_ALT, right, scroller:cyclewidth, prev" + "SUPER_ALT, up, scroller:cycleheight, next" + "SUPER_ALT, down, scroller:cycleheight, prev" + # "SUPER_ALT, left, resizeactive, -20 0" + # "SUPER_ALT, right, resizeactive, 20 0" + # "SUPER_ALT, up, resizeactive, 0 -20" + # "SUPER_ALT, down, resizeactive, 0 20" + ", ${raiseVol}, exec, ${pactl} set-sink-volume @DEFAULT_SINK@ +5%" + ", ${lowerVol}, exec, ${pactl} set-sink-volume @DEFAULT_SINK@ -5%" + ", ${raiseVol}, exec, ${pactl} set-source-volume @DEFAULT_SOURCE@ +5%" + ", ${lowerVol}, exec, ${pactl} set-source-volume @DEFAULT_SOURCE@ -5%" + ]; + + ## Mouse Binds ## + m = [ + ", mouse:275, movewindow" + ", mouse:276, resizewindow" + ]; + }; }; + + ## Submap: Steam ## + steam = { + binds = { + "" = [ + "SUPER, Escape, submap, reset" + "SUPER, SUPER_L, pass" + ", mouse:275, pass" + ", mouse:276, pass" + ]; + }; + }; + }; + + submaps-json = pkgs.writeText "submaps.json" (builtins.toJSON submaps); + submaps-script = pkgs.writeScript "submap-script" '' + #!/usr/bin/env fish + + # Usage: ./parse_submaps.fish path/to/file.json + if test (count $argv) -lt 1 + echo "Usage: $argv[0] path/to/file.json" + exit 1 + end + + set json_file $argv[1] + + # Iterate over submaps preserving order + for entry in (${pkgs.jq}/bin/jq -c '.| to_entries[]' $json_file) + set submap_name (echo $entry | ${pkgs.jq}/bin/jq -r '.key') + echo "submap=$submap_name" + + # Process each binds entry within the submap + for bind_entry in (echo $entry | ${pkgs.jq}/bin/jq -c '.value.binds | to_entries[]') + set bind_key (echo $bind_entry | ${pkgs.jq}/bin/jq -r '.key') + + if test "$bind_key" = "" + set prefix "bind=" + else if test "$bind_key" = "unbind" + set prefix "unbind=" + else + set prefix "bind$bind_key=" + end + + # Process each binding's value in the array + for binding in (echo $bind_entry | ${pkgs.jq}/bin/jq -r '.value[]') + echo "$prefix$binding" + end + end + + # Append submap reset except for default "" submap + if not test "$submap_name" = "" + echo "submap=reset" + end + end + ''; + submaps-run = pkgs.runCommand "submaps-run" { inherit submaps-json submaps-script; } '' + mkdir -p $out + ${pkgs.fish}/bin/fish ${submaps-script} ${submaps-json} > $out/submaps-out + ''; +in +{ + wayland.windowManager.hyprland.extraConfig = builtins.readFile "${submaps-run}/submaps-out"; } diff --git a/home/toph/common/optional/hyprland/default.nix b/home/toph/common/optional/hyprland/default.nix index c5323f6..c95875f 100644 --- a/home/toph/common/optional/hyprland/default.nix +++ b/home/toph/common/optional/hyprland/default.nix @@ -12,7 +12,6 @@ wayland.windowManager.hyprland = { enable = true; # withUWSM = true; # One day, but not today - package = inputs.hyprland.packages."${pkgs.system}".hyprland; systemd = { enable = true; @@ -23,15 +22,7 @@ ]; }; - plugins = [ - # inputs.hycov.packages.${pkgs.system}.hycov - (inputs.hyprspace.packages.${pkgs.system}.Hyprspace.overrideAttrs { - dontUseCmakeConfigure = true; - }) - ]; - settings = { - ## Environment Vars ## env = [ "NIXOS_OZONE_WL, 1" # for ozone-based and electron apps to run on wayland @@ -59,8 +50,8 @@ ) (config.monitors) ); - # I love this :) - # Creates 5 workspaces for all monitors + # This used to be usefull now its just overkill + # Creates 1 persistent workspaces for all monitors workspace = let json = pkgs.writeTextFile { @@ -71,7 +62,7 @@ mkdir "$out"; ${pkgs.jq}/bin/jq -r ' [ to_entries[] | (.key as $i | .value.name as $name | - [ range(0;5) | ($i * 5 + .) as $wsnum | + [ range(0;1) | ($i * 1 + .) as $wsnum | if . == 0 then "\($wsnum), monitor:\($name), default:true, persistent:true" else "\($wsnum), monitor:\($name)" end ] @@ -131,11 +122,12 @@ ## Appearance ## general = { + layout = "scroller"; border_size = 2; gaps_in = 6; gaps_out = 6; - "col.inactive_border" = "0x44e3625e"; - "col.active_border" = "0x20e3625e"; + "col.inactive_border" = "rgb(191b1c)"; + "col.active_border" = "rgb(1cbdd9) rgb(f6ef9d) 30deg"; allow_tearing = true; # used to reduce latency and/or jitter in games snap = { enabled = true; @@ -146,13 +138,15 @@ decoration = { rounding = 10; rounding_power = 4.0; - active_opacity = 0.90; - inactive_opacity = 0.80; + active_opacity = 0.85; + inactive_opacity = 0.75; fullscreen_opacity = 1.0; + dim_inactive = true; + dim_strength = 0.2; blur = { enabled = true; - size = 15; - passes = 2; + size = 7; + passes = 3; new_optimizations = true; ignore_opacity = true; xray = true; @@ -162,10 +156,10 @@ shadow = { enabled = true; range = 30; - render_power = 3; - scale = 1.0; - color = "0x66000000"; - color_inactive = "0x66000000"; + render_power = 2; + scale = 1.5; + color = "rgb(191b1c)"; + color_inactive = "rgb(191b1c)"; }; }; @@ -181,102 +175,6 @@ "border, 1, 10 ,default" "workspaces, 1, 5 ,default, slide" ]; - - ## Auto Launch ## - - exec-once = [ - ''${pkgs.waypaper}/bin/waypaper --restore'' - ]; - - ## Layers Rules ## - - layer = [ - #"blur, rofi" - #"ignorezero, rofi" - #"ignorezero, logout_dialog" - ]; - - ## Window Rules ## - - windowrule = [ - # Dialogs - "float, title:^(Open File)(.*)$" - "float, title:^(Select a File)(.*)$" - "float, title:^(Choose wallpaper)(.*)$" - "float, title:^(Open Folder)(.*)$" - "float, title:^(Save As)(.*)$" - "float, title:^(Library)(.*)$" - "float, title:^(Accounts)(.*)$" - ]; - - windowrulev2 = [ - #Zen Extensions - "suppressevent maximize, class:^(zen)$" - - "float, class:^(galculator)$" - "float, class:^(waypaper)$" - "float, class:^(keymapp)$" - - # - # ========== Always opaque ========== - # - "opaque, class:^([Gg]imp)$" - "opaque, class:^([Ff]lameshot)$" - "opaque, class:^([Ii]nkscape)$" - "opaque, class:^([Bb]lender)$" - "opaque, class:^([Oo][Bb][Ss])$" - "opaque, class:^([Ss]team)$" - "opaque, class:^([Ss]team_app_*)$" - "opaque, class:^([Vv]lc)$" - - # Remove transparency from video - "opaque, title:^(Netflix)(.*)$" - "opaque, title:^(.*YouTube.*)$" - "opaque, title:^(Picture-in-Picture)$" - # - # ========== Scratch rules ========== - # - #"size 80% 85%, workspace:^(special:special)$" - #"center, workspace:^(special:special)$" - - # - # ========== Steam rules ========== - # - "stayfocused, title:^()$,class:^([Ss]team)$" - "minsize 1 1, title:^()$,class:^([Ss]team)$" - "immediate, class:^([Ss]team_app_*)$" - "workspace 7, class:^([Ss]team_app_*)$" - "monitor 0, class:^([Ss]team_app_*)$" - - # - # ========== Fameshot rules ========== - # - # flameshot currently doesn't have great wayland support so needs some tweaks - #"rounding 0, class:^([Ff]lameshot)$" - #"noborder, class:^([Ff]lameshot)$" - #"float, class:^([Ff]lameshot)$" - #"move 0 0, class:^([Ff]lameshot)$" - #"suppressevent fullscreen, class:^([Ff]lameshot)$" - # "monitor:DP-1, ${flameshot}" - - # - # ========== Workspace Assignments ========== - # - # "workspace 8, class:^(virt-manager)$" - # "workspace 8, class:^(obsidian)$" - # "workspace 9, class:^(brave-browser)$" - # "workspace 9, class:^(signal)$" - # "workspace 9, class:^(org.telegram.desktop)$" - # "workspace 9, class:^(discord)$" - # "workspace 0, title:^([Ss]potify*)$" - # "workspace special, class:^(yubioath-flutter)$" - ]; - - # load at the end of the hyperland set - # extraConfig = ''''; - - plugin = { - }; }; }; } diff --git a/home/toph/common/optional/hyprland/hyprpaper/default.nix b/home/toph/common/optional/hyprland/hyprpaper/default.nix new file mode 100644 index 0000000..4d55812 --- /dev/null +++ b/home/toph/common/optional/hyprland/hyprpaper/default.nix @@ -0,0 +1,39 @@ +# Hyprpaper is used to set the wallpaper on the system +{ + pkgs, + config, + ... +}: +let + # wallpaper = "/home/${config.hostSpec.username}/Pictures/Wallpapers/wallpaper.jpg"; + # wallpaper = "/home/${config.hostSpec.username}/Pictures/Wallpapers/wallpaper.png"; + wallpaper = "/home/${config.hostSpec.username}/Pictures/Wallpapers/invincible.jpg"; +in +{ + # The wallpaper is set by stylix + services.hyprpaper = { + enable = true; + settings = { + ipc = "on"; + splash = false; + splash_offset = 2.0; + preload = [ + wallpaper + ]; + wallpaper = [ + ", ${wallpaper}" + ]; + }; + }; + + home.file."Pictures/Wallpapers" = { + source = ./wallpapers; + recursive = true; + }; + + wayland.windowManager.hyprland.settings = { + exec-once = [ + "${pkgs.hyprpaper}/bin/hyprpaper" + ]; + }; +} diff --git a/home/toph/common/optional/hyprland/hyprpaper/wallpapers/invincible.jpg b/home/toph/common/optional/hyprland/hyprpaper/wallpapers/invincible.jpg new file mode 100644 index 0000000..41abbb5 Binary files /dev/null and b/home/toph/common/optional/hyprland/hyprpaper/wallpapers/invincible.jpg differ diff --git a/home/toph/common/optional/hyprland/hyprpaper/wallpapers/wallpaper.jpg b/home/toph/common/optional/hyprland/hyprpaper/wallpapers/wallpaper.jpg new file mode 100644 index 0000000..f54c525 Binary files /dev/null and b/home/toph/common/optional/hyprland/hyprpaper/wallpapers/wallpaper.jpg differ diff --git a/home/toph/common/optional/hyprland/plugins.nix b/home/toph/common/optional/hyprland/plugins.nix new file mode 100644 index 0000000..2e84108 --- /dev/null +++ b/home/toph/common/optional/hyprland/plugins.nix @@ -0,0 +1,67 @@ +{ pkgs, inputs, ... }: +{ + + home.packages = [ + # pkgs.hyprlandPlugins.hyprexpo + pkgs.hyprlandPlugins.hyprspace + pkgs.hyprlandPlugins.hyprscroller + ]; + + wayland.windowManager.hyprland = { + plugins = [ + # pkgs.hyprlandPlugins.hyprexpo + pkgs.hyprlandPlugins.hyprspace + pkgs.hyprlandPlugins.hyprscroller + ]; + + # TODO: Colors and Theme + settings = { + windowrulev2 = [ + "bordercolor rgb(191b1c) rgb(ffffff) 25deg, tag: scroller:pinned" + ]; + + plugin = { + # hyprexpo = { + # columns = 3; + # gap_size = 5; + # bg_col = "rgb(000000)"; + # workspace_method = "center current"; # [center/first] [workspace] e.g. first 1 or center m+1 + # }; + overview = { + centerAligned = true; + hideOverlayLayers = true; + showSpecialWorkspaces = true; + }; + scroller = { + center_active_column = true; + center_active_window = false; + focus_wrap = true; + overview_scale_content = false; + "col.selection_border" = "rgb(191b1c)"; + jump_labels_font = "Monocraft"; + jump_labels_color = "rgb(ffffff)"; + jump_labels_scale = "0.1"; + jump_labels_keys = "qwfpgarstd"; + # monitor_options = '' + # ( + # DP-3 = ( + # mode = row; + # column_default_width = onehalf; + # column_widths = onehalf onethird twothirds threefourths; + # window_default_height = seveneighths; + # window_heights = seveneighths onehalf onethird twothirds + # ), + # HDMI-A-2 = ( + # mode = col; + # column_default_width = one; + # column_widths = one onehalf; + # window_default_height = twothirds; + # window_heights = seveneighths onehalf onethird twothirds + # ), + # )''; + monitor_options = "(DP-3 = (mode = row;column_default_width = onehalf;column_widths = threequarters twothirds onehalf onethird;window_default_height = one;window_heights = one seveneighths twothirds onehalf onethird),HDMI-A-2 = (mode = col; column_default_width = one;column_widths = one onehalf;window_default_height = twothirds;window_heights = seveneighths twothirds onehalf onethird),)"; + }; + }; + }; + }; +} diff --git a/home/toph/common/optional/hyprland/rules.nix b/home/toph/common/optional/hyprland/rules.nix new file mode 100644 index 0000000..943ace0 --- /dev/null +++ b/home/toph/common/optional/hyprland/rules.nix @@ -0,0 +1,90 @@ +{ + + wayland.windowManager.hyprland.settings = { + + ## Layers Rules ## + + layer = [ + #"blur, rofi" + #"ignorezero, rofi" + #"ignorezero, logout_dialog" + ]; + + ## Window Rules ## + + windowrulev2 = [ + # Dialogs + "float, title:^(Open File)(.*)$" + "float, title:^(Select a File)(.*)$" + "float, title:^(Choose wallpaper)(.*)$" + "float, title:^(Open Folder)(.*)$" + "float, title:^(Save As)(.*)$" + "float, title:^(Library)(.*)$" + "float, title:^(Accounts)(.*)$" + "float, title:^(Media viewer)$" + + ## Zen ## + "suppressevent maximize, class:^(zen)$" + "float, title:^(Picture-in-Picture)$" + "pin, title:^(Picture-in-Picture)$" + "float, class:^(zen)$, title:^(File Upload)$" + "workspace special silent, title:^(Zen — Sharing Indicator)$" + "workspace special silent, title:^(.*is sharing (your screen|a window)\.)$" + + # Float Apps + "float, class:^(galculator)$" + "float, class:^(waypaper)$" + "float, class:^(keymapp)$" + + # Nautilus + "float, initialClass:^(org.gnome.Nautilus)$" + "float, initialClass:^(org.gnome.Nautilus)$, move 10% 50%" + "size 30% 30%, initialClass:^(org.gnome.Nautilus)$" + + # Always opaque + "opaque, class:^([Gg]imp)$" + "opaque, class:^([Ff]lameshot)$" + + "opaque, class:^([Ii]nkscape)$" + "opaque, class:^([Bb]lender)$" + "opaque, class:^([Oo][Bb][Ss])$" + "opaque, class:^([Vv]lc)$" + + # Remove transparency from video + "opaque, title:^(Netflix)(.*)$" + "opaque, title:^(.*YouTube.*)$" + + ## Scratch rules ## + #"size 80% 85%, workspace:^(special:special)$" + #"center, workspace:^(special:special)$" + + ## Steam rules ## + "stayfocused, initialClass:^([Gg]amescope)$" + "fullscreen, initialClass:^([Gg]amescope)$" + "minsize 1 1, initialClass:^([Gg]amescope)$" + "immediate, initialClass:^([Gg]amescope)$" + "workspace 3, initialClass:^([Gg]amescope)$" + "monitor 0, initialClass:^([Gg]amescope)$" + + # + # ========== Fameshot rules ========== + # + # flameshot currently doesn't have great wayland support so needs some tweaks + #"rounding 0, class:^([Ff]lameshot)$" + #"noborder, class:^([Ff]lameshot)$" + #"float, class:^([Ff]lameshot)$" + #"move 0 0, class:^([Ff]lameshot)$" + #"suppressevent fullscreen, class:^([Ff]lameshot)$" + # "monitor:DP-1, ${flameshot}" + + ## Workspace Assignments ## + "workspace 1, initialClass:^(vesktop)$" + "workspace 1, initialClass:^(spotify)$" + "workspace 1, initialClass:^(org.telegram.desktop)$" + # "workspace name:4, initialClass:^(virt-manager)$" + + # "workspace 8, class:^(obsidian)$" + # "workspace 9, class:^(brave-browser)$" + ]; + }; +} diff --git a/hosts/common/optional/hyprland/default.nix b/hosts/common/optional/hyprland/default.nix index 9c8b88d..058e8a1 100644 --- a/hosts/common/optional/hyprland/default.nix +++ b/hosts/common/optional/hyprland/default.nix @@ -11,8 +11,6 @@ programs.hyprland = { enable = true; # withUWSM = true; # One day, but not today - package = inputs.hyprland.packages."${pkgs.system}".hyprland; - portalPackage = inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland; }; environment.systemPackages = [