Modules/Hyprland: Remove bullshit
This commit is contained in:
Generated
+533
-39
@@ -1,5 +1,38 @@
|
||||
{
|
||||
"nodes": {
|
||||
"aquamarine": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"hyprwayland-scanner": [
|
||||
"hyprland",
|
||||
"hyprwayland-scanner"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1782073106,
|
||||
"narHash": "sha256-dnS5SaZlPqR1E0dPXaPc+lFkBwLUbAgbwsVMk7uA6dY=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "aquamarine",
|
||||
"rev": "6d6e2384f381def4ea4ea81543cba4bbdac72457",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "aquamarine",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"crane": {
|
||||
"locked": {
|
||||
"lastModified": 1754269165,
|
||||
@@ -97,6 +130,22 @@
|
||||
}
|
||||
},
|
||||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1767039857,
|
||||
"narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=",
|
||||
"owner": "NixOS",
|
||||
"repo": "flake-compat",
|
||||
"rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_2": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1747046372,
|
||||
@@ -112,7 +161,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_2": {
|
||||
"flake-compat_3": {
|
||||
"locked": {
|
||||
"lastModified": 1767039857,
|
||||
"narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=",
|
||||
@@ -127,7 +176,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_3": {
|
||||
"flake-compat_4": {
|
||||
"locked": {
|
||||
"lastModified": 1733328505,
|
||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||
@@ -206,7 +255,7 @@
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems_2"
|
||||
"systems": "systems_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
@@ -224,7 +273,7 @@
|
||||
},
|
||||
"flake-utils_2": {
|
||||
"inputs": {
|
||||
"systems": "systems_4"
|
||||
"systems": "systems_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
@@ -321,9 +370,358 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprcursor": {
|
||||
"inputs": {
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1776511930,
|
||||
"narHash": "sha256-fCpwFiTW0rT7oKJqr3cqHMnkwypSwQKpbtUEtxdkgrM=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"rev": "39435900785d0c560c6ae8777d29f28617d031ef",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprgraphics": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1782566056,
|
||||
"narHash": "sha256-haEZcHzYrePnjFOYSWTbxm/Nrla0aPslJfmvdCvqtVc=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprgraphics",
|
||||
"rev": "c6e7b9f673f4360bc813d3dc75028f75ee88d3f8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprgraphics",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland": {
|
||||
"inputs": {
|
||||
"aquamarine": "aquamarine",
|
||||
"hyprcursor": "hyprcursor",
|
||||
"hyprgraphics": "hyprgraphics",
|
||||
"hyprland-guiutils": "hyprland-guiutils",
|
||||
"hyprland-protocols": "hyprland-protocols",
|
||||
"hyprlang": "hyprlang",
|
||||
"hyprutils": "hyprutils",
|
||||
"hyprwayland-scanner": "hyprwayland-scanner",
|
||||
"hyprwire": "hyprwire",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"pre-commit-hooks": "pre-commit-hooks",
|
||||
"systems": "systems_2",
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1784359482,
|
||||
"narHash": "sha256-2EHBXr5rQ/wytZA3drczqyckSWsZ1C+5Kc815Pf0nys=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"rev": "55ce25bd67ab6f2ae7d60883f6c626be7d2ee12f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-guiutils": {
|
||||
"inputs": {
|
||||
"aquamarine": [
|
||||
"hyprland",
|
||||
"aquamarine"
|
||||
],
|
||||
"hyprgraphics": [
|
||||
"hyprland",
|
||||
"hyprgraphics"
|
||||
],
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"hyprtoolkit": "hyprtoolkit",
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"hyprwayland-scanner": [
|
||||
"hyprland",
|
||||
"hyprwayland-scanner"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1782563850,
|
||||
"narHash": "sha256-rs/EzgrgPHbCtJjFZN4aR1HYldH/0NtGAempWVpWQTs=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-guiutils",
|
||||
"rev": "5ba080ee036c30cb2485f2647ff8a61f7aa08178",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-guiutils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-plugins": {
|
||||
"inputs": {
|
||||
"hyprland": [
|
||||
"hyprland"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland-plugins",
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland-plugins",
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1784102347,
|
||||
"narHash": "sha256-piRpwar7VZI3YviYo0a/UMFz9+rLesfv3nRLGKxjVGg=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-plugins",
|
||||
"rev": "7644cecdb947060682891a0db2a0cdc5c0b9e704",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-plugins",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-protocols": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772460177,
|
||||
"narHash": "sha256-/6G/MsPvtn7bc4Y32pserBT/Z4SUUdBd4XYJpOEKVR4=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"rev": "1cb6db5fd6bb8aee419f4457402fa18293ace917",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprlang": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1777320127,
|
||||
"narHash": "sha256-Qu+Wf2Bp5qUjyn2YpZNq8a7JyzTGowhT1knrwE38a9U=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"rev": "090117506ddc3d7f26e650ff344d378c2ec329cc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprtoolkit": {
|
||||
"inputs": {
|
||||
"aquamarine": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"aquamarine"
|
||||
],
|
||||
"hyprgraphics": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"hyprgraphics"
|
||||
],
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"hyprlang"
|
||||
],
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"hyprutils"
|
||||
],
|
||||
"hyprwayland-scanner": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"hyprwayland-scanner"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1782554491,
|
||||
"narHash": "sha256-+p3MlyN/nqRefcf2IckPlGRUn9+hielqpS9XClbLleM=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprtoolkit",
|
||||
"rev": "bdba25ced39ea39ab004a8f31593ba0b0ff1ca35",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprtoolkit",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprutils": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1783002634,
|
||||
"narHash": "sha256-xGqHIUK0wIZoW7SiMalwvO6uGOO/VrlQwoRobpE7dDI=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprutils",
|
||||
"rev": "41fb809557abd29a57151b6e1aaeabd05f9437e1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprutils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprwayland-scanner": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1777159683,
|
||||
"narHash": "sha256-Jxixw6wZphUp+nHYxOKUYSckL17QMBx2d5Zp0rJHr1g=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"rev": "b8632713a6beaf28b56f2a7b0ab2fb7088dbb404",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprwire": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1778410714,
|
||||
"narHash": "sha256-o6RzFj4nJXaPRY7EM01siuCQeT41RfwwmcmFQqwFJJg=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwire",
|
||||
"rev": "85148a8e612808cf5ddb25d0b3c5840f3498a7dc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwire",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hytale-launcher": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_4"
|
||||
"nixpkgs": "nixpkgs_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1781228795,
|
||||
@@ -342,7 +740,7 @@
|
||||
"impermanence": {
|
||||
"inputs": {
|
||||
"home-manager": "home-manager_2",
|
||||
"nixpkgs": "nixpkgs_5"
|
||||
"nixpkgs": "nixpkgs_6"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1769548169,
|
||||
@@ -361,7 +759,7 @@
|
||||
"lanzaboote": {
|
||||
"inputs": {
|
||||
"crane": "crane",
|
||||
"flake-compat": "flake-compat",
|
||||
"flake-compat": "flake-compat_2",
|
||||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
@@ -408,7 +806,7 @@
|
||||
"naersk": {
|
||||
"inputs": {
|
||||
"fenix": "fenix",
|
||||
"nixpkgs": "nixpkgs_9"
|
||||
"nixpkgs": "nixpkgs_10"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1763384566,
|
||||
@@ -484,9 +882,9 @@
|
||||
},
|
||||
"nix-alien": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_2",
|
||||
"flake-compat": "flake-compat_3",
|
||||
"nix-index-database": "nix-index-database",
|
||||
"nixpkgs": "nixpkgs_6"
|
||||
"nixpkgs": "nixpkgs_7"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1778849865,
|
||||
@@ -609,6 +1007,22 @@
|
||||
}
|
||||
},
|
||||
"nixpkgs_10": {
|
||||
"locked": {
|
||||
"lastModified": 1752077645,
|
||||
"narHash": "sha256-HM791ZQtXV93xtCY+ZxG1REzhQenSQO020cu6rHtAPk=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "be9e214982e20b8310878ac2baa063a961c1bdf6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_11": {
|
||||
"locked": {
|
||||
"lastModified": 1775710090,
|
||||
"narHash": "sha256-ar3rofg+awPB8QXDaFJhJ2jJhu+KqN/PRCXeyuXR76E=",
|
||||
@@ -654,6 +1068,22 @@
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1784120854,
|
||||
"narHash": "sha256-KesHgItiZPgGX740axSiQLcIQ8D24MDqNpkKYWIek8k=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "753cc8a3a87467296ddd1fa93f0cc3e81120ee46",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1781074563,
|
||||
"narHash": "sha256-md8WlXOlfnIeHeOScMTTHFyf2d6iaTwPl2apR5EQ3P4=",
|
||||
@@ -669,7 +1099,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1768564909,
|
||||
"narHash": "sha256-Kell/SpJYVkHWMvnhqJz/8DqQg2b6PguxVWOuadbHCc=",
|
||||
@@ -685,7 +1115,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_6": {
|
||||
"nixpkgs_7": {
|
||||
"locked": {
|
||||
"lastModified": 1778443072,
|
||||
"narHash": "sha256-zi7/fsqM/kFdNuED//4WOCUtezGtKKqRNORjMvfwjnA=",
|
||||
@@ -701,7 +1131,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_7": {
|
||||
"nixpkgs_8": {
|
||||
"locked": {
|
||||
"lastModified": 1781074563,
|
||||
"narHash": "sha256-md8WlXOlfnIeHeOScMTTHFyf2d6iaTwPl2apR5EQ3P4=",
|
||||
@@ -717,7 +1147,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_8": {
|
||||
"nixpkgs_9": {
|
||||
"locked": {
|
||||
"lastModified": 1780336545,
|
||||
"narHash": "sha256-vhVhuXzFrIOfcssC/9hDHx7MHzDKjF3keHuREOQqQiQ=",
|
||||
@@ -733,27 +1163,11 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_9": {
|
||||
"locked": {
|
||||
"lastModified": 1752077645,
|
||||
"narHash": "sha256-HM791ZQtXV93xtCY+ZxG1REzhQenSQO020cu6rHtAPk=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "be9e214982e20b8310878ac2baa063a961c1bdf6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixvim": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts_2",
|
||||
"nixpkgs": "nixpkgs_8",
|
||||
"systems": "systems_3"
|
||||
"nixpkgs": "nixpkgs_9",
|
||||
"systems": "systems_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1781287460,
|
||||
@@ -771,7 +1185,7 @@
|
||||
},
|
||||
"nps": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_3",
|
||||
"flake-compat": "flake-compat_4",
|
||||
"flake-utils": "flake-utils_2",
|
||||
"naersk": "naersk",
|
||||
"nixpkgs": [
|
||||
@@ -813,6 +1227,28 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1783008725,
|
||||
"narHash": "sha256-jGiy6+sxjNWXSjp25uoJuNfyH9zBK1PEDY0lVoL4ibQ=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "bca82caa46d5ec0f5d422c61fb1e30bc51313cbe",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks-nix": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
@@ -846,6 +1282,8 @@
|
||||
"elephant": "elephant",
|
||||
"hardware": "hardware",
|
||||
"home-manager": "home-manager",
|
||||
"hyprland": "hyprland",
|
||||
"hyprland-plugins": "hyprland-plugins",
|
||||
"hytale-launcher": "hytale-launcher",
|
||||
"impermanence": "impermanence",
|
||||
"lanzaboote": "lanzaboote",
|
||||
@@ -854,7 +1292,7 @@
|
||||
"nix-alien": "nix-alien",
|
||||
"nix-darwin": "nix-darwin",
|
||||
"nix-flatpak": "nix-flatpak",
|
||||
"nixpkgs": "nixpkgs_7",
|
||||
"nixpkgs": "nixpkgs_8",
|
||||
"nixpkgs-stable": "nixpkgs-stable_2",
|
||||
"nixvim": "nixvim",
|
||||
"nps": "nps",
|
||||
@@ -938,6 +1376,21 @@
|
||||
}
|
||||
},
|
||||
"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=",
|
||||
@@ -952,7 +1405,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_3": {
|
||||
"systems_4": {
|
||||
"locked": {
|
||||
"lastModified": 1774449309,
|
||||
"narHash": "sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w=",
|
||||
@@ -968,7 +1421,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_4": {
|
||||
"systems_5": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
@@ -983,7 +1436,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_5": {
|
||||
"systems_6": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
@@ -1023,8 +1476,8 @@
|
||||
"elephant": [
|
||||
"elephant"
|
||||
],
|
||||
"nixpkgs": "nixpkgs_10",
|
||||
"systems": "systems_5"
|
||||
"nixpkgs": "nixpkgs_11",
|
||||
"systems": "systems_6"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1781164128,
|
||||
@@ -1040,6 +1493,47 @@
|
||||
"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": 1782644412,
|
||||
"narHash": "sha256-/iSa/bL1QQFLv+uJ9gI0N87J8gOeZXvca7EjoPGKE6w=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"rev": "c01c99fc278ec68c82e9865923088f043c7c1621",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"xwayland-satellite-stable": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
|
||||
@@ -57,6 +57,12 @@
|
||||
niri.url = "github:sodiboo/niri-flake";
|
||||
niri.inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
||||
# Hyprland
|
||||
hyprland.url = "github:hyprwm/Hyprland";
|
||||
# hyprland.inputs.nixpkgs.follows = "nixpkgs";
|
||||
hyprland-plugins.url = "github:hyprwm/hyprland-plugins";
|
||||
hyprland-plugins.inputs.hyprland.follows = "hyprland";
|
||||
|
||||
# Walker
|
||||
elephant.url = "github:abenz1267/elephant";
|
||||
walker.url = "github:abenz1267/walker";
|
||||
|
||||
@@ -79,34 +79,13 @@ in
|
||||
|
||||
hyprland = {
|
||||
enable = nixosConfig.programs.hyprland.enable;
|
||||
dunst.enable = !config.homemodules.hyprpanel.enable; # Disable for hyprpanel
|
||||
bars.enable = false;
|
||||
dynamicCursor.enable = false;
|
||||
trails.enable = true;
|
||||
hyprspace.enable = false; # Always broken
|
||||
hyprpanel.enable = false;
|
||||
caelestia.enable = false;
|
||||
|
||||
keybindings = {
|
||||
main-mod = "SUPER";
|
||||
|
||||
bindings = lib.mergeAttrsList [
|
||||
# Use Rofi if we don't have caelestia
|
||||
(lib.optionalAttrs (!config.homemodules.hyprland.caelestia.enable) {
|
||||
"$mainMod, a" = ["exec, rofi -drun-show-actions -show drun"];
|
||||
"$mainMod, c" = ["exec, clipman pick --tool=rofi"];
|
||||
"$mainMod SHIFT, l" = ["exec, loginctl lock-session"];
|
||||
})
|
||||
|
||||
# Caelestia
|
||||
(lib.optionalAttrs (config.homemodules.hyprland.caelestia.enable) {
|
||||
"$mainMod, a" = ["exec, caelestia shell drawers toggle launcher"];
|
||||
# "$mainMod, c" = ["exec, caelestia clipboard"];
|
||||
"$mainMod SHIFT, l" = ["exec, caelestia shell lock lock"];
|
||||
|
||||
"$mainMod, escape" = ["exec, caelestia shell drawers toggle session"];
|
||||
})
|
||||
|
||||
{
|
||||
# Applications
|
||||
"$mainMod, t" = ["exec, kitty"];
|
||||
|
||||
@@ -4,28 +4,28 @@
|
||||
homemodules = {
|
||||
# TODO: Niri config (needs to modularize niri module)
|
||||
|
||||
# hyprland = {
|
||||
# keyboard = {
|
||||
# layout = "us";
|
||||
# variant = "altgr-intl";
|
||||
# option = "nodeadkeys";
|
||||
# };
|
||||
#
|
||||
# monitors = {
|
||||
# "eDP-1" = {
|
||||
# width = 1920;
|
||||
# height = 1080;
|
||||
# rate = 60;
|
||||
# x = 0;
|
||||
# y = 0;
|
||||
# scale = 1;
|
||||
# };
|
||||
# };
|
||||
#
|
||||
# workspaces = {
|
||||
# "eDP-1" = [1 2 3 4 5 6 7 8 9];
|
||||
# };
|
||||
# };
|
||||
hyprland = {
|
||||
keyboard = {
|
||||
layout = "us";
|
||||
variant = "altgr-intl";
|
||||
option = "nodeadkeys";
|
||||
};
|
||||
|
||||
monitors = {
|
||||
"eDP-1" = {
|
||||
width = 1920;
|
||||
height = 1080;
|
||||
rate = 60;
|
||||
x = 0;
|
||||
y = 0;
|
||||
scale = 1;
|
||||
};
|
||||
};
|
||||
|
||||
workspaces = {
|
||||
"eDP-1" = [1 2 3 4 5 6 7 8 9];
|
||||
};
|
||||
};
|
||||
|
||||
waybar.monitors = ["eDP-1"];
|
||||
};
|
||||
|
||||
@@ -5,14 +5,8 @@
|
||||
hyprland,
|
||||
}:
|
||||
builtins.concatLists [
|
||||
(lib.optionals hyprland.dunst.enable ["dunst"]) # Notifications
|
||||
(lib.optionals hyprland.hyprpanel.enable ["hyprpanel"]) # Panel
|
||||
(lib.optionals hyprland.caelestia.enable ["caelestia shell"]) # Panel/Shell # TODO: Crashes on startup
|
||||
[
|
||||
# Start clipboard management
|
||||
"wl-paste -t text --watch clipman store --no-persist"
|
||||
"wl-paste -p -t text --watch clipman store -P --histpath=\"~/.local/share/clipman-primary.json\""
|
||||
|
||||
"hyprctl setcursor ${config.home.pointerCursor.name} ${builtins.toString config.home.pointerCursor.size}"
|
||||
"hyprsunset --identity"
|
||||
|
||||
|
||||
@@ -1,516 +0,0 @@
|
||||
{
|
||||
config,
|
||||
hyprland,
|
||||
color,
|
||||
}: {
|
||||
enable = hyprland.caelestia.enable;
|
||||
|
||||
systemd = {
|
||||
enable = false; # Start from hyprland autostart
|
||||
target = "graphical-session.target";
|
||||
environment = [];
|
||||
};
|
||||
|
||||
settings = {
|
||||
appearance = {
|
||||
anim = {durations = {scale = 1;};};
|
||||
font = {
|
||||
family = {
|
||||
clock = "Rubik";
|
||||
material = "Material Symbols Rounded";
|
||||
mono = color.font;
|
||||
sans = color.font;
|
||||
};
|
||||
size = {scale = 1;};
|
||||
};
|
||||
|
||||
padding = {scale = 1;};
|
||||
rounding = {scale = 1;};
|
||||
spacing = {scale = 1;};
|
||||
|
||||
transparency = {
|
||||
base = 0.85;
|
||||
enabled = false;
|
||||
layers = 0.4;
|
||||
};
|
||||
};
|
||||
|
||||
background = {
|
||||
desktopClock = {enabled = false;};
|
||||
enabled = true;
|
||||
|
||||
# Lags when visible on both monitors (different refresh rates?)
|
||||
visualiser = {
|
||||
autoHide = true;
|
||||
blur = true;
|
||||
enabled = false;
|
||||
rounding = 1;
|
||||
spacing = 1;
|
||||
};
|
||||
};
|
||||
|
||||
bar = {
|
||||
clock = {showIcon = true;};
|
||||
dragThreshold = 20;
|
||||
|
||||
entries = [
|
||||
{
|
||||
enabled = true;
|
||||
id = "logo";
|
||||
}
|
||||
{
|
||||
enabled = true;
|
||||
id = "workspaces";
|
||||
}
|
||||
{
|
||||
enabled = true;
|
||||
id = "spacer";
|
||||
}
|
||||
{
|
||||
enabled = true;
|
||||
id = "activeWindow";
|
||||
}
|
||||
{
|
||||
enabled = true;
|
||||
id = "spacer";
|
||||
}
|
||||
{
|
||||
enabled = true;
|
||||
id = "clock";
|
||||
}
|
||||
{
|
||||
enabled = true;
|
||||
id = "tray";
|
||||
}
|
||||
{
|
||||
enabled = true;
|
||||
id = "statusIcons";
|
||||
}
|
||||
{
|
||||
enabled = true;
|
||||
id = "power";
|
||||
}
|
||||
];
|
||||
|
||||
persistent = true;
|
||||
|
||||
popouts = {
|
||||
activeWindow = true;
|
||||
statusIcons = true;
|
||||
tray = true;
|
||||
};
|
||||
|
||||
scrollActions = {
|
||||
brightness = false;
|
||||
volume = true;
|
||||
workspaces = true;
|
||||
};
|
||||
|
||||
showOnHover = true;
|
||||
|
||||
status = {
|
||||
showAudio = true;
|
||||
showBattery = false;
|
||||
showBluetooth = true;
|
||||
showKbLayout = false;
|
||||
showLockStatus = true;
|
||||
showMicrophone = false;
|
||||
showNetwork = true;
|
||||
};
|
||||
|
||||
tray = {
|
||||
background = true;
|
||||
compact = false;
|
||||
iconSubs = [];
|
||||
recolour = false;
|
||||
};
|
||||
|
||||
workspaces = {
|
||||
activeIndicator = true;
|
||||
activeLabel = "";
|
||||
activeTrail = true;
|
||||
label = " ";
|
||||
occupiedBg = false;
|
||||
occupiedLabel = "";
|
||||
perMonitorWorkspaces = false;
|
||||
showWindows = false;
|
||||
shown = 10;
|
||||
|
||||
# Pick them here: https://fonts.google.com/icons
|
||||
specialWorkspaceIcons = [
|
||||
{
|
||||
icon = "music_note";
|
||||
name = "rmpc";
|
||||
}
|
||||
{
|
||||
icon = "memory";
|
||||
name = "btop";
|
||||
}
|
||||
{
|
||||
icon = "mark_chat_unread";
|
||||
name = "ferdium";
|
||||
}
|
||||
{
|
||||
icon = "network_intelligence";
|
||||
name = "msty";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
border = {
|
||||
rounding = 25;
|
||||
thickness = 10;
|
||||
};
|
||||
|
||||
dashboard = {
|
||||
dragThreshold = 50;
|
||||
enabled = true;
|
||||
mediaUpdateInterval = 500;
|
||||
showOnHover = true;
|
||||
};
|
||||
|
||||
general = {
|
||||
apps = {
|
||||
audio = ["kitty" "--title=NcpaMixer" "-e" "ncpamixer"];
|
||||
explorer = ["kitty" "--title=Yazi" "-e" "yazi"];
|
||||
playback = ["mpv"];
|
||||
terminal = ["kitty"];
|
||||
};
|
||||
|
||||
battery = {
|
||||
criticalLevel = 3;
|
||||
warnLevels = [
|
||||
{
|
||||
icon = "battery_android_frame_2";
|
||||
level = 20;
|
||||
message = "You might want to plug in a charger";
|
||||
title = "Low battery";
|
||||
}
|
||||
{
|
||||
icon = "battery_android_frame_1";
|
||||
level = 10;
|
||||
message = "You should probably plug in a charger <b>now</b>";
|
||||
title = "Did you see the previous message?";
|
||||
}
|
||||
{
|
||||
critical = true;
|
||||
icon = "battery_android_alert";
|
||||
level = 5;
|
||||
message = "PLUG THE CHARGER RIGHT NOW!!";
|
||||
title = "Critical battery level";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
idle = {
|
||||
inhibitWhenAudio = true;
|
||||
lockBeforeSleep = true;
|
||||
timeouts = [
|
||||
{
|
||||
idleAction = "lock";
|
||||
timeout = 600;
|
||||
}
|
||||
{
|
||||
# idleAction = "dpms off";
|
||||
# returnAction = "dpms on";
|
||||
idleAction = "echo 'idle'";
|
||||
returnAction = "echo 'return'";
|
||||
timeout = 10000;
|
||||
}
|
||||
{
|
||||
# idleAction = ["systemctl" "suspend-then-hibernate"];
|
||||
idleAction = ["echo" "'idle'"];
|
||||
timeout = 20000;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
launcher = {
|
||||
actionPrefix = ">";
|
||||
actions = [
|
||||
{
|
||||
command = ["autocomplete" "calc"];
|
||||
dangerous = false;
|
||||
description = "Do simple math equations (powered by Qalc)";
|
||||
enabled = true;
|
||||
icon = "calculate";
|
||||
name = "Calculator";
|
||||
}
|
||||
{
|
||||
command = ["autocomplete" "scheme"];
|
||||
dangerous = false;
|
||||
description = "Change the current colour scheme";
|
||||
enabled = true;
|
||||
icon = "palette";
|
||||
name = "Scheme";
|
||||
}
|
||||
{
|
||||
command = ["autocomplete" "wallpaper"];
|
||||
dangerous = false;
|
||||
description = "Change the current wallpaper";
|
||||
enabled = true;
|
||||
icon = "image";
|
||||
name = "Wallpaper";
|
||||
}
|
||||
{
|
||||
command = ["autocomplete" "variant"];
|
||||
dangerous = false;
|
||||
description = "Change the current scheme variant";
|
||||
enabled = true;
|
||||
icon = "colors";
|
||||
name = "Variant";
|
||||
}
|
||||
{
|
||||
command = ["autocomplete" "transparency"];
|
||||
dangerous = false;
|
||||
description = "Change shell transparency";
|
||||
enabled = false;
|
||||
icon = "opacity";
|
||||
name = "Transparency";
|
||||
}
|
||||
{
|
||||
command = ["caelestia" "wallpaper" "-r"];
|
||||
dangerous = false;
|
||||
description = "Switch to a random wallpaper";
|
||||
enabled = false;
|
||||
icon = "casino";
|
||||
name = "Random";
|
||||
}
|
||||
{
|
||||
command = ["setMode" "light"];
|
||||
dangerous = false;
|
||||
description = "Change the scheme to light mode";
|
||||
enabled = true;
|
||||
icon = "light_mode";
|
||||
name = "Light";
|
||||
}
|
||||
{
|
||||
command = ["setMode" "dark"];
|
||||
dangerous = false;
|
||||
description = "Change the scheme to dark mode";
|
||||
enabled = true;
|
||||
icon = "dark_mode";
|
||||
name = "Dark";
|
||||
}
|
||||
{
|
||||
command = ["systemctl" "poweroff"];
|
||||
dangerous = true;
|
||||
description = "Shutdown the system";
|
||||
enabled = true;
|
||||
icon = "power_settings_new";
|
||||
name = "Shutdown";
|
||||
}
|
||||
{
|
||||
command = ["systemctl" "reboot"];
|
||||
dangerous = true;
|
||||
description = "Reboot the system";
|
||||
enabled = true;
|
||||
icon = "cached";
|
||||
name = "Reboot";
|
||||
}
|
||||
{
|
||||
command = ["loginctl" "terminate-user" ""];
|
||||
dangerous = true;
|
||||
description = "Log out of the current session";
|
||||
enabled = true;
|
||||
icon = "exit_to_app";
|
||||
name = "Logout";
|
||||
}
|
||||
{
|
||||
command = ["loginctl" "lock-session"];
|
||||
dangerous = false;
|
||||
description = "Lock the current session";
|
||||
enabled = true;
|
||||
icon = "lock";
|
||||
name = "Lock";
|
||||
}
|
||||
{
|
||||
command = ["systemctl" "suspend-then-hibernate"];
|
||||
dangerous = false;
|
||||
description = "Suspend then hibernate";
|
||||
enabled = false;
|
||||
icon = "bedtime";
|
||||
name = "Sleep";
|
||||
}
|
||||
];
|
||||
|
||||
dragThreshold = 50;
|
||||
enableDangerousActions = true;
|
||||
hiddenApps = [];
|
||||
maxShown = 7;
|
||||
maxWallpapers = 9;
|
||||
showOnHover = false;
|
||||
specialPrefix = "@";
|
||||
useFuzzy = {
|
||||
actions = false;
|
||||
apps = false;
|
||||
schemes = false;
|
||||
variants = false;
|
||||
wallpapers = false;
|
||||
};
|
||||
vimKeybinds = false;
|
||||
};
|
||||
|
||||
lock = {recolourLogo = false;};
|
||||
|
||||
notifs = {
|
||||
actionOnClick = false;
|
||||
clearThreshold = 0.3;
|
||||
defaultExpireTimeout = 5000;
|
||||
expandThreshold = 20;
|
||||
expire = true;
|
||||
};
|
||||
|
||||
osd = {
|
||||
enableBrightness = false;
|
||||
enableMicrophone = true;
|
||||
enabled = true;
|
||||
hideDelay = 2000;
|
||||
};
|
||||
|
||||
paths = {
|
||||
mediaGif = "root:/assets/bongocat.gif";
|
||||
sessionGif = "root:/assets/kurukuru.gif";
|
||||
wallpaperDir = "~/NixFlake/wallpapers";
|
||||
};
|
||||
|
||||
services = {
|
||||
audioIncrement = 0.1;
|
||||
defaultPlayer = "MPD";
|
||||
gpuType = "";
|
||||
maxVolume = 1;
|
||||
playerAliases = [
|
||||
{
|
||||
from = "com.github.th_ch.youtube_music";
|
||||
to = "YT Music";
|
||||
}
|
||||
];
|
||||
smartScheme = true;
|
||||
useFahrenheit = false;
|
||||
useTwelveHourClock = false;
|
||||
visualiserBars = 45;
|
||||
weatherLocation = "Dortmund, Germany";
|
||||
};
|
||||
|
||||
session = {
|
||||
commands = {
|
||||
hibernate = ["systemctl" "hibernate"];
|
||||
logout = ["loginctl" "terminate-user" ""];
|
||||
reboot = ["systemctl" "reboot"];
|
||||
shutdown = ["systemctl" "poweroff"];
|
||||
};
|
||||
dragThreshold = 30;
|
||||
enabled = true;
|
||||
vimKeybinds = false;
|
||||
};
|
||||
|
||||
sidebar = {
|
||||
dragThreshold = 80;
|
||||
enabled = true;
|
||||
};
|
||||
|
||||
utilities = {
|
||||
enabled = true;
|
||||
maxToasts = 4;
|
||||
toasts = {
|
||||
audioInputChanged = true;
|
||||
audioOutputChanged = true;
|
||||
capsLockChanged = true;
|
||||
chargingChanged = true;
|
||||
configLoaded = true;
|
||||
dndChanged = true;
|
||||
gameModeChanged = true;
|
||||
kbLayoutChanged = false;
|
||||
nowPlaying = false;
|
||||
numLockChanged = true;
|
||||
vpnChanged = true;
|
||||
};
|
||||
|
||||
vpn = {
|
||||
enabled = false;
|
||||
provider = [
|
||||
{
|
||||
displayName = "Wireguard (Your VPN)";
|
||||
interface = "your-connection-name";
|
||||
name = "wireguard";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
cli = {
|
||||
enable = hyprland.caelestia.enable;
|
||||
|
||||
settings = {
|
||||
record = {extraArgs = [];};
|
||||
|
||||
theme = {
|
||||
enableBtop = false;
|
||||
enableDiscord = false;
|
||||
enableFuzzel = false;
|
||||
enableGtk = false;
|
||||
enableHypr = false;
|
||||
enableQt = false;
|
||||
enableSpicetify = false;
|
||||
enableTerm = false;
|
||||
};
|
||||
|
||||
toggles = {
|
||||
communication = {
|
||||
discord = {
|
||||
command = ["discord"];
|
||||
enable = false;
|
||||
match = [{class = "discord";}];
|
||||
move = true;
|
||||
};
|
||||
whatsapp = {
|
||||
enable = false;
|
||||
match = [{class = "whatsapp";}];
|
||||
move = true;
|
||||
};
|
||||
};
|
||||
|
||||
music = {
|
||||
feishin = {
|
||||
enable = false;
|
||||
match = [{class = "feishin";}];
|
||||
move = true;
|
||||
};
|
||||
spotify = {
|
||||
command = ["spicetify" "watch" "-s"];
|
||||
enable = false;
|
||||
match = [{class = "Spotify";} {initialTitle = "Spotify";} {initialTitle = "Spotify Free";}];
|
||||
move = true;
|
||||
};
|
||||
};
|
||||
|
||||
sysmon = {
|
||||
btop = {
|
||||
command = ["kitty" "--title" "Btop" "-e" "btop"];
|
||||
enable = false;
|
||||
match = [
|
||||
{
|
||||
class = "btop";
|
||||
title = "Btop";
|
||||
workspace = {name = "special:sysmon";};
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
todo = {
|
||||
todoist = {
|
||||
command = ["todoist"];
|
||||
enable = false;
|
||||
match = [{class = "Todoist";}];
|
||||
move = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
wallpaper = {postHook = "echo $WALLPAPER_PATH";};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -24,6 +24,11 @@
|
||||
in {
|
||||
options.homemodules.hyprland = import ./options.nix {inherit lib mylib;};
|
||||
|
||||
# TODO: Extract common niri/hyprland stuff to modules (e.g., dunst), so no configs are duplicated
|
||||
# TODO: Remove unnecessary bullshit
|
||||
# TODO: Switch to lua config
|
||||
# TODO: Synchronize with niri mappings
|
||||
|
||||
config = lib.mkIf hyprland.enable {
|
||||
assertions = [
|
||||
{
|
||||
@@ -34,10 +39,6 @@ in {
|
||||
assertion = builtins.hasAttr "hyprlock" nixosConfig.security.pam.services;
|
||||
message = "Can't enable Hyprland module without Hyprlock PAM service!";
|
||||
}
|
||||
{
|
||||
assertion = hyprland.hyprpanel.enable != hyprland.caelestia.enable;
|
||||
message = "Can't enable Hyprpanel and Caelestia at the same time!";
|
||||
}
|
||||
];
|
||||
|
||||
gtk = {
|
||||
@@ -60,18 +61,17 @@ in {
|
||||
};
|
||||
|
||||
packages = with pkgs; [
|
||||
hyprpaper # Wallpaper setter
|
||||
hyprpicker # Color picker
|
||||
# hyprpolkitagent # Ugly polkit authentication GUI
|
||||
hyprland-qt-support
|
||||
hyprsunset # Blue light filter
|
||||
|
||||
wl-clipboard
|
||||
clipman # Clipboard manager (wl-paste)
|
||||
# clipman # Clipboard manager (wl-paste)
|
||||
libnotify
|
||||
inotify-tools # Includes inotifywait
|
||||
|
||||
ncpamixer # Audio control
|
||||
# ncpamixer # Audio control
|
||||
slurp # Region selector for screensharing
|
||||
grim # Grab images from compositor
|
||||
|
||||
@@ -121,49 +121,27 @@ in {
|
||||
|
||||
programs = {
|
||||
hyprlock = import ./hyprlock.nix {inherit config hyprland color;};
|
||||
caelestia = import ./caelestia.nix {inherit config hyprland color;};
|
||||
};
|
||||
|
||||
services = {
|
||||
dunst = import ./dunst.nix {inherit pkgs config hyprland color;};
|
||||
hypridle = import ./hypridle.nix {inherit config hyprland color;};
|
||||
hyprpaper = import ./hyprpaper.nix {inherit config hyprland color;};
|
||||
};
|
||||
|
||||
# Make sure the units only start when using Hyprland
|
||||
systemd.user.services.dunst.Unit.After = lib.mkIf hyprland.dunst.enable (lib.mkForce ["hyprland-session.target"]);
|
||||
systemd.user.services.dunst.Unit.PartOf = lib.mkIf hyprland.dunst.enable (lib.mkForce ["hyprland-session.target"]);
|
||||
systemd.user.services.hypridle.Install.WantedBy = lib.mkIf (!hyprland.caelestia.enable) (lib.mkForce ["hyprland-session.target"]);
|
||||
systemd.user.services.hypridle.Unit.After = lib.mkIf (!hyprland.caelestia.enable) (lib.mkForce ["hyprland-session.target"]);
|
||||
systemd.user.services.hypridle.Unit.PartOf = lib.mkIf (!hyprland.caelestia.enable) (lib.mkForce ["hyprland-session.target"]);
|
||||
systemd.user.services.hyprpaper.Install.WantedBy = lib.mkIf (!hyprland.caelestia.enable) (lib.mkForce ["hyprland-session.target"]);
|
||||
systemd.user.services.hyprpaper.Unit.After = lib.mkIf (!hyprland.caelestia.enable) (lib.mkForce ["hyprland-session.target"]);
|
||||
systemd.user.services.hyprpaper.Unit.PartOf = lib.mkIf (!hyprland.caelestia.enable) (lib.mkForce ["hyprland-session.target"]);
|
||||
systemd.user.services.hypridle.Install.WantedBy = lib.mkForce ["hyprland-session.target"];
|
||||
systemd.user.services.hypridle.Unit.After = lib.mkForce ["hyprland-session.target"];
|
||||
systemd.user.services.hypridle.Unit.PartOf = lib.mkForce ["hyprland-session.target"];
|
||||
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||
portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
||||
configType = "hyprlang"; # TODO: lua
|
||||
|
||||
systemd.enable = true; # Enable hyprland-session.target
|
||||
systemd.variables = ["--all"]; # Import PATH into systemd
|
||||
xwayland.enable = true;
|
||||
|
||||
plugins = builtins.concatLists [
|
||||
(lib.optionals
|
||||
hyprland.bars.enable
|
||||
[inputs.hyprland-plugins.packages.${pkgs.stdenv.hostPlatform.system}.hyprbars])
|
||||
(lib.optionals
|
||||
hyprland.dynamicCursor.enable
|
||||
[inputs.hypr-dynamic-cursors.packages.${pkgs.stdenv.hostPlatform.system}.hypr-dynamic-cursors])
|
||||
(lib.optionals
|
||||
hyprland.trails.enable
|
||||
[inputs.hyprland-plugins.packages.${pkgs.stdenv.hostPlatform.system}.hyprtrails])
|
||||
(lib.optionals
|
||||
hyprland.hyprspace.enable
|
||||
[inputs.hyprspace.packages.${pkgs.stdenv.hostPlatform.system}.Hyprspace])
|
||||
];
|
||||
|
||||
settings = import ./settings.nix {
|
||||
inherit
|
||||
lib
|
||||
|
||||
@@ -1,36 +0,0 @@
|
||||
{
|
||||
pkgs,
|
||||
config,
|
||||
hyprland,
|
||||
color,
|
||||
}: {
|
||||
enable = hyprland.dunst.enable;
|
||||
|
||||
iconTheme.package = color.iconPackage;
|
||||
iconTheme.name = color.iconTheme;
|
||||
|
||||
settings = {
|
||||
global = {
|
||||
monitor = config.homemodules.waybar.monitor;
|
||||
font = "${color.font} 11";
|
||||
offset = "10x10";
|
||||
background = color.hexS.base;
|
||||
foreground = color.hexS.text;
|
||||
frame_width = 2;
|
||||
corner_radius = 6;
|
||||
separator_color = "frame";
|
||||
};
|
||||
|
||||
urgency_low = {
|
||||
frame_color = color.hexS.green;
|
||||
};
|
||||
|
||||
urgency_normal = {
|
||||
frame_color = color.hexS.green;
|
||||
};
|
||||
|
||||
urgency_critical = {
|
||||
frame_color = color.hexS.red;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -3,7 +3,7 @@
|
||||
hyprland,
|
||||
color,
|
||||
}: {
|
||||
enable = !hyprland.caelestia.enable;
|
||||
enable = true;
|
||||
|
||||
settings = {
|
||||
general = {
|
||||
|
||||
@@ -1,44 +0,0 @@
|
||||
{
|
||||
keyboard = {
|
||||
layout = "us";
|
||||
variant = "altgr-intl";
|
||||
option = "nodeadkeys";
|
||||
};
|
||||
|
||||
monitors = {
|
||||
"DP-1" = {
|
||||
width = 3440;
|
||||
height = 1440;
|
||||
rate = 165;
|
||||
x = 1920;
|
||||
y = 0;
|
||||
scale = 1;
|
||||
};
|
||||
|
||||
"DP-2" = {
|
||||
width = 1920;
|
||||
height = 1080;
|
||||
rate = 60;
|
||||
x = 0;
|
||||
y = 0;
|
||||
scale = 1;
|
||||
};
|
||||
};
|
||||
|
||||
workspaces = {
|
||||
"DP-1" = [1 2 3 4 5 6 7 8 9];
|
||||
"DP-2" = [10];
|
||||
};
|
||||
|
||||
autostart = {
|
||||
delayed = [
|
||||
"fcitx5"
|
||||
];
|
||||
};
|
||||
|
||||
floating = [
|
||||
{
|
||||
class = "fcitx";
|
||||
}
|
||||
];
|
||||
}
|
||||
@@ -1,186 +0,0 @@
|
||||
{
|
||||
nixosConfig,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
}: {
|
||||
enable = nixosConfig.programs.hyprland.enable;
|
||||
dunst.enable = !config.homemodules.hyprpanel.enable; # Disable for hyprpanel
|
||||
bars.enable = false;
|
||||
dynamicCursor.enable = false;
|
||||
trails.enable = true;
|
||||
hyprspace.enable = false; # Always broken
|
||||
hyprpanel.enable = false;
|
||||
caelestia.enable = false;
|
||||
|
||||
keybindings = {
|
||||
main-mod = "SUPER";
|
||||
|
||||
bindings = lib.mergeAttrsList [
|
||||
# Use Rofi if we don't have caelestia
|
||||
(lib.optionalAttrs (!config.homemodules.hyprland.caelestia.enable) {
|
||||
"$mainMod, a" = ["exec, rofi -drun-show-actions -show drun"];
|
||||
"$mainMod, c" = ["exec, clipman pick --tool=rofi"];
|
||||
"$mainMod SHIFT, l" = ["exec, loginctl lock-session"];
|
||||
})
|
||||
|
||||
# Caelestia
|
||||
(lib.optionalAttrs (config.homemodules.hyprland.caelestia.enable) {
|
||||
"$mainMod, a" = ["exec, caelestia shell drawers toggle launcher"];
|
||||
# "$mainMod, c" = ["exec, caelestia clipboard"];
|
||||
"$mainMod SHIFT, l" = ["exec, caelestia shell lock lock"];
|
||||
|
||||
"$mainMod, escape" = ["exec, caelestia shell drawers toggle session"];
|
||||
})
|
||||
|
||||
{
|
||||
# Applications
|
||||
"$mainMod, t" = ["exec, kitty"];
|
||||
"$mainMod, e" = ["exec, kitty --title=Yazi yazi"];
|
||||
"$mainMod, n" = ["exec, neovide"];
|
||||
# "$mainMod, r" = ["exec, kitty --title=Rmpc rmpc"];
|
||||
"$mainMod CTRL, n" = ["exec, kitty --title=Navi navi"];
|
||||
"$mainMod SHIFT, n" = ["exec, neovide ${config.paths.dotfiles}/navi/christoph.cheat"];
|
||||
"$mainMod SHIFT, f" = ["exec, neovide ${config.paths.dotfiles}/flake.nix"];
|
||||
# "ALT, tab" = ["exec, rofi -show window"];
|
||||
|
||||
# Screenshots
|
||||
"$mainMod, p" = ["exec, hyprpicker --autocopy --format=hex"];
|
||||
"$mainMod, s" = ["exec, grim -g \"$(slurp)\""];
|
||||
"$mainMod SHIFT, s" = ["exec, grim -g \"$(slurp)\" - | wl-copy"];
|
||||
|
||||
# Audio
|
||||
", XF86AudioRaiseVolume" = ["exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+"];
|
||||
", XF86AudioLowerVolume" = ["exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%-"];
|
||||
", XF86AudioPlay" = ["exec, playerctl play-pause"];
|
||||
", XF86AudioPrev" = ["exec, playerctl previous"];
|
||||
", XF86AudioNext" = ["exec, playerctl next"];
|
||||
|
||||
# Brightness
|
||||
", XF86MonBrightnessDown" = ["exec, hyprctl hyprsunset gamma -10"];
|
||||
", XF86MonBrightnessUp" = ["exec, hyprctl hyprsunset gamma +10"];
|
||||
"$mainMod, XF86MonBrightnessDown" = ["exec, hyprctl hyprsunset temperature 5750"];
|
||||
"$mainMod, XF86MonBrightnessUp" = ["exec, hyprctl hyprsunset identity"];
|
||||
|
||||
"CTRL ALT, f" = let
|
||||
hyprctl = "${config.wayland.windowManager.hyprland.package}/bin/hyprctl";
|
||||
grep = "${pkgs.gnugrep}/bin/grep";
|
||||
awk = "${pkgs.gawk}/bin/gawk";
|
||||
notify = "${pkgs.libnotify}/bin/notify-send";
|
||||
|
||||
toggleMouseFocus = pkgs.writeScriptBin "hypr-toggle-mouse-focus" ''
|
||||
CURRENT=$(${hyprctl} getoption input:follow_mouse | ${grep} int | ${awk} -F' ' '{print $2}')
|
||||
|
||||
if [[ "$CURRENT" == "1" ]]; then
|
||||
${hyprctl} keyword input:follow_mouse 0
|
||||
${notify} "Disabled Mouse Focus!"
|
||||
else
|
||||
${hyprctl} keyword input:follow_mouse 1
|
||||
${notify} "Enabled Mouse Focus!"
|
||||
fi
|
||||
'';
|
||||
in ["exec, ${toggleMouseFocus}/bin/hypr-toggle-mouse-focus"];
|
||||
|
||||
# "CTRL ALT, t" = ["exec, bash -c 'systemctl --user restart hyprpanel.service'"];
|
||||
}
|
||||
];
|
||||
|
||||
ws-bindings = {
|
||||
# "<Workspace>" = "<Key>";
|
||||
"1" = "1";
|
||||
"2" = "2";
|
||||
"3" = "3";
|
||||
"4" = "4";
|
||||
"5" = "5";
|
||||
"6" = "6";
|
||||
"7" = "7";
|
||||
"8" = "8";
|
||||
"9" = "9";
|
||||
"10" = "0";
|
||||
};
|
||||
|
||||
special-ws-bindings = {
|
||||
"ferdium" = "x";
|
||||
"msty" = "z";
|
||||
"btop" = "b";
|
||||
"rmpc" = "r";
|
||||
};
|
||||
};
|
||||
|
||||
autostart = {
|
||||
immediate = [
|
||||
"kitty --hold fastfetch"
|
||||
"zeal"
|
||||
"nextcloud --background"
|
||||
"protonvpn-app"
|
||||
|
||||
# "kdeconnect-indicator" # started by services.kdeconnect.indicator
|
||||
];
|
||||
|
||||
delayed = [
|
||||
"keepassxc" # The tray doesn't work when started too early
|
||||
];
|
||||
|
||||
special-silent = {
|
||||
"ferdium" = ["ferdium"];
|
||||
"msty" = ["msty"];
|
||||
"btop" = ["kitty --title=Btop btop"];
|
||||
"rmpc" = ["kitty --title=Rmpc rmpc"];
|
||||
};
|
||||
};
|
||||
|
||||
windowrules = [
|
||||
# Fix jetbrains tooltip flicker
|
||||
"match:class ^(jetbrains-.*)$, match:title ^(win[0-9]+)$, float 1"
|
||||
"match:class ^(jetbrains-.*)$, match:title ^(win[0-9]+)$, no_initial_focus 1"
|
||||
];
|
||||
|
||||
workspacerules = {
|
||||
"1" = [];
|
||||
"2" = ["Zotero" "neovide" "code-url-handler"];
|
||||
"3" = ["obsidian"];
|
||||
"4" = ["firefox" "Google-chrome" "chromium-browser" "org.qutebrowser.qutebrowser"];
|
||||
"5" = ["steam"];
|
||||
"6" = ["steam_app_(.+)"];
|
||||
"7" = ["signal"];
|
||||
"8" = ["tidal-hifi"];
|
||||
"9" = ["discord"];
|
||||
"10" = ["python3"];
|
||||
};
|
||||
|
||||
floating = [
|
||||
{class = "org.kde.polkit-kde-authentication-agent-1";}
|
||||
{
|
||||
class = "thunar";
|
||||
title = "File Operation Progress";
|
||||
}
|
||||
{class = "ffplay";}
|
||||
{class = "Unity";}
|
||||
];
|
||||
|
||||
transparent-opacity = "0.75";
|
||||
|
||||
transparent = [
|
||||
"kitty"
|
||||
"Alacritty"
|
||||
"discord"
|
||||
"signal"
|
||||
"vesktop"
|
||||
"Spotify"
|
||||
"tidal-hifi"
|
||||
"obsidian"
|
||||
"firefox"
|
||||
"org.qutebrowser.qutebrowser"
|
||||
"jetbrains-clion"
|
||||
"jetbrains-idea"
|
||||
"jetbrains-pycharm"
|
||||
"jetbrains-rustrover"
|
||||
"jetbrains-rider"
|
||||
"jetbrains-webstorm"
|
||||
"code-url-handler"
|
||||
"neovide"
|
||||
"steam"
|
||||
"ferdium"
|
||||
"Msty"
|
||||
];
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
{
|
||||
config,
|
||||
hyprland,
|
||||
color,
|
||||
}: {
|
||||
enable = !hyprland.caelestia.enable;
|
||||
|
||||
settings = {
|
||||
ipc = "on";
|
||||
splash = false;
|
||||
splash_offset = 2.0;
|
||||
|
||||
# Wallpapers have to be preloaded to be displayed
|
||||
preload = let
|
||||
mkPreload = name: "${config.paths.nixflake}/wallpapers/${name}.jpg";
|
||||
in
|
||||
color.wallpapers |> builtins.map mkPreload;
|
||||
|
||||
wallpaper = let
|
||||
mkWallpaper = monitor:
|
||||
"${monitor}, "
|
||||
+ "${config.paths.nixflake}/wallpapers/${color.wallpaper}.jpg";
|
||||
in
|
||||
hyprland.monitors
|
||||
|> builtins.attrNames
|
||||
|> builtins.map mkWallpaper;
|
||||
};
|
||||
}
|
||||
@@ -5,13 +5,8 @@
|
||||
}: {
|
||||
enable = lib.mkEnableOption "Hyprland Window Manager + Compositor";
|
||||
|
||||
dunst.enable = lib.mkEnableOption "Enable Dunst notification daemon";
|
||||
bars.enable = lib.mkEnableOption "Enable window bars";
|
||||
dynamicCursor.enable = lib.mkEnableOption "Enable dynamic cursors";
|
||||
trails.enable = lib.mkEnableOption "Enable dynamic window trails";
|
||||
hyprspace.enable = lib.mkEnableOption "Enable Hyprspace workspace overview";
|
||||
hyprpanel.enable = lib.mkEnableOption "Enable Hyprpanel";
|
||||
caelestia.enable = lib.mkEnableOption "Enable Caelestia";
|
||||
|
||||
keyboard = {
|
||||
layout = lib.mkOption {
|
||||
|
||||
@@ -237,123 +237,5 @@
|
||||
on_double_click = "hyprctl dispatch fullscreen 1";
|
||||
};
|
||||
})
|
||||
|
||||
(lib.optionalAttrs hyprland.dynamicCursor.enable {
|
||||
dynamic-cursors = {
|
||||
# enables the plugin
|
||||
enabled = true;
|
||||
|
||||
# sets the cursor behaviour, supports these values:
|
||||
# tilt - tilt the cursor based on x-velocity
|
||||
# rotate - rotate the cursor based on movement direction
|
||||
# stretch - stretch the cursor shape based on direction and velocity
|
||||
# none - do not change the cursors behaviour
|
||||
mode = "rotate";
|
||||
|
||||
# minimum angle difference in degrees after which the shape is changed
|
||||
# smaller values are smoother, but more expensive for hw cursors
|
||||
threshold = 2;
|
||||
|
||||
# for mode = rotate
|
||||
rotate = {
|
||||
# length in px of the simulated stick used to rotate the cursor
|
||||
# most realistic if this is your actual cursor size
|
||||
length = 20;
|
||||
|
||||
# clockwise offset applied to the angle in degrees
|
||||
# this will apply to ALL shapes
|
||||
offset = 0.0;
|
||||
};
|
||||
|
||||
# for mode = tilt
|
||||
tilt = {
|
||||
# controls how powerful the tilt is, the lower, the more power
|
||||
# this value controls at which speed (px/s) the full tilt is reached
|
||||
# the full tilt being 60° in both directions
|
||||
limit = 1000;
|
||||
|
||||
# relationship between speed and tilt, supports these values:
|
||||
# linear - a linear function is used
|
||||
# quadratic - a quadratic function is used (most realistic to actual air drag)
|
||||
# negative_quadratic - negative version of the quadratic one, feels more aggressive
|
||||
# see `activation` in `src/mode/utils.cpp` for how exactly the calculation is done
|
||||
function = "negative_quadratic";
|
||||
|
||||
# time window (ms) over which the speed is calculated
|
||||
# higher values will make slow motions smoother but more delayed
|
||||
window = 100;
|
||||
};
|
||||
|
||||
# configure shake to find
|
||||
# magnifies the cursor if its is being shaken
|
||||
shake = {
|
||||
# enables shake to find
|
||||
enabled = false;
|
||||
|
||||
# use nearest-neighbour (pixelated) scaling when shaking
|
||||
# may look weird when effects are enabled
|
||||
nearest = true;
|
||||
|
||||
# controls how soon a shake is detected
|
||||
# lower values mean sooner
|
||||
threshold = 3.0;
|
||||
|
||||
# magnification level immediately after shake start
|
||||
base = 1.5;
|
||||
# magnification increase per second when continuing to shake
|
||||
speed = 0.0;
|
||||
# how much the speed is influenced by the current shake intensitiy
|
||||
influence = 0.0;
|
||||
|
||||
# maximal magnification the cursor can reach
|
||||
# values below 1 disable the limit (e.g. 0)
|
||||
limit = 0.0;
|
||||
|
||||
# time in millseconds the cursor will stay magnified after a shake has ended
|
||||
timeout = 1000;
|
||||
|
||||
# show cursor behaviour `tilt`, `rotate`, etc. while shaking
|
||||
effects = true;
|
||||
|
||||
# enable ipc events for shake
|
||||
# see the `ipc` section below
|
||||
ipc = false;
|
||||
};
|
||||
|
||||
# use hyprcursor to get a higher resolution texture when the cursor is magnified
|
||||
# see the `hyprcursor` section below
|
||||
hyprcursor = {
|
||||
# use nearest-neighbour (pixelated) scaling when magnifing beyond texture size
|
||||
# this will also have effect without hyprcursor support being enabled
|
||||
# 0 / false - never use pixelated scaling
|
||||
# 1 / true - use pixelated when no highres image
|
||||
# 2 - always use pixleated scaling
|
||||
nearest = true;
|
||||
|
||||
# enable dedicated hyprcursor support
|
||||
enabled = true;
|
||||
|
||||
# resolution in pixels to load the magnified shapes at
|
||||
# be warned that loading a very high-resolution image will take a long time and might impact memory consumption
|
||||
# -1 means we use [normal cursor size] * [shake:base option]
|
||||
resolution = -1;
|
||||
|
||||
# shape to use when clientside cursors are being magnified
|
||||
# see the shape-name property of shape rules for possible names
|
||||
# specifying clientside will use the actual shape, but will be pixelated
|
||||
fallback = "clientside";
|
||||
};
|
||||
};
|
||||
})
|
||||
|
||||
(lib.optionalAttrs hyprland.trails.enable {
|
||||
hyprtrails = {
|
||||
color = "rgb(${color.hex.accent})";
|
||||
};
|
||||
})
|
||||
|
||||
(lib.optionalAttrs hyprland.hyprspace.enable {
|
||||
overview = {};
|
||||
})
|
||||
];
|
||||
}
|
||||
|
||||
+2
-2
@@ -318,8 +318,8 @@ with mylib.networking; {
|
||||
gpu-screen-recorder.enable = !headless;
|
||||
|
||||
hyprland = {
|
||||
enable = true;
|
||||
# enable = !headless;
|
||||
# enable = true;
|
||||
enable = !headless;
|
||||
|
||||
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||
portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
||||
|
||||
Reference in New Issue
Block a user