summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--flake.lock509
-rwxr-xr-xflake.nix45
-rw-r--r--host/Rory-laptop/configuration.nix5
-rw-r--r--host/Rory-laptop/optional/gui/wayland.nix18
-rw-r--r--host/Rory-laptop/optional/hardware-specific/intel.nix2
5 files changed, 538 insertions, 41 deletions
diff --git a/flake.lock b/flake.lock

index 543631c..fd55397 100644 --- a/flake.lock +++ b/flake.lock
@@ -1,5 +1,38 @@ { "nodes": { + "aquamarine": { + "inputs": { + "hyprutils": [ + "hyprland", + "hyprutils" + ], + "hyprwayland-scanner": [ + "hyprland", + "hyprwayland-scanner" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1742213273, + "narHash": "sha256-0l0vDb4anfsBu1rOs94bC73Hub+xEivgBAo6QXl2MmU=", + "owner": "hyprwm", + "repo": "aquamarine", + "rev": "484b732195cc53f4536ce4bd59a5c6402b1e7ccf", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "aquamarine", + "type": "github" + } + }, "attic": { "inputs": { "crane": "crane", @@ -75,7 +108,7 @@ }, "locked": { "lastModified": 1745744468, - "narHash": "sha256-iM+uxKk3eaSr2WHqhBd+M1MQvEMLf0VIfs0Y8yYdC9E=", + "narHash": "sha256-S1vibZhzfZrZbjXCJIjzCXf4Gx/yHfPzGCzOJ9m0kWY=", "ref": "refs/heads/master", "rev": "43939110959a719b0b346780e8f0d0c028320180", "revCount": 1658, @@ -321,6 +354,22 @@ "type": "github" } }, + "flake-compat_5": { + "flake": false, + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, "flake-parts": { "inputs": { "nixpkgs-lib": [ @@ -433,7 +482,7 @@ }, "flake-utils_6": { "inputs": { - "systems": "systems_5" + "systems": "systems_6" }, "locked": { "lastModified": 1726560853, @@ -464,6 +513,28 @@ "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" + } + }, "grapevine": { "inputs": { "attic": "attic_2", @@ -510,6 +581,289 @@ "type": "github" } }, + "hy3": { + "inputs": { + "hyprland": [ + "hyprland" + ] + }, + "locked": { + "lastModified": 1743128724, + "narHash": "sha256-CUlxc2u1Y8gpeAl7NKrZxxpeZjyU2DBxOYb8b0haM2M=", + "owner": "outfoxxed", + "repo": "hy3", + "rev": "4014433d1c3d1bf36c6684cff14c23d538337070", + "type": "github" + }, + "original": { + "owner": "outfoxxed", + "ref": "hl0.48.0", + "repo": "hy3", + "type": "github" + } + }, + "hyprcursor": { + "inputs": { + "hyprlang": [ + "hyprland", + "hyprlang" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1742215578, + "narHash": "sha256-zfs71PXVVPEe56WEyNi2TJQPs0wabU4WAlq0XV7GcdE=", + "owner": "hyprwm", + "repo": "hyprcursor", + "rev": "2fd36421c21aa87e2fe3bee11067540ae612f719", + "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", + "hyprutils": "hyprutils", + "hyprwayland-scanner": "hyprwayland-scanner", + "nixpkgs": "nixpkgs_7", + "pre-commit-hooks": "pre-commit-hooks", + "systems": "systems_5", + "xdph": "xdph" + }, + "locked": { + "lastModified": 1743178567, + "narHash": "sha256-skuJFly6LSFfyAVy2ByNolkEwIijsTu2TxzQ9ugWarI=", + "ref": "refs/tags/v0.48.1", + "rev": "29e2e59fdbab8ed2cc23a20e3c6043d5decb5cdc", + "revCount": 5937, + "submodules": true, + "type": "git", + "url": "https://github.com/hyprwm/Hyprland" + }, + "original": { + "ref": "refs/tags/v0.48.1", + "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": [ + "hyprland", + "hyprlang" + ], + "hyprutils": [ + "hyprland", + "hyprland-qtutils", + "hyprlang", + "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": [ + "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" + } + }, + "hyprutils": { + "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": [ + "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", + "type": "github" + } + }, "lix": { "flake": false, "locked": { @@ -683,11 +1037,11 @@ }, "nixpkgs-RoryNix": { "locked": { - "lastModified": 1746463976, - "narHash": "sha256-R5eQGTgf+yW5dLBSXe/1zEdUhmgoReceZ0dqszMI12g=", + "lastModified": 1746523602, + "narHash": "sha256-wEJAnkNMUn0fWKFZ3M2PE0KCz/v2pP7p4Zev6YQYawg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b08e86e19fadad4bb0a610eec7213f14b80afb21", + "rev": "28fe7e08afe73bafcbe6ceacd831662ac142182b", "type": "github" }, "original": { @@ -715,11 +1069,11 @@ }, "nixpkgs-master": { "locked": { - "lastModified": 1746463976, - "narHash": "sha256-R5eQGTgf+yW5dLBSXe/1zEdUhmgoReceZ0dqszMI12g=", + "lastModified": 1746523602, + "narHash": "sha256-wEJAnkNMUn0fWKFZ3M2PE0KCz/v2pP7p4Zev6YQYawg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b08e86e19fadad4bb0a610eec7213f14b80afb21", + "rev": "28fe7e08afe73bafcbe6ceacd831662ac142182b", "type": "github" }, "original": { @@ -777,6 +1131,22 @@ "type": "github" } }, + "nixpkgs_10": { + "locked": { + "lastModified": 1744868846, + "narHash": "sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "ebe4301cbd8f81c4f8d3244b3632338bbeb6d49c", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs_2": { "locked": { "lastModified": 1702539185, @@ -859,11 +1229,11 @@ }, "nixpkgs_7": { "locked": { - "lastModified": 1746328495, - "narHash": "sha256-uKCfuDs7ZM3QpCE/jnfubTg459CnKnJG/LwqEVEdEiw=", + "lastModified": 1742069588, + "narHash": "sha256-C7jVfohcGzdZRF6DO+ybyG/sqpo1h6bZi9T56sxLy+k=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "979daf34c8cacebcd917d540070b52a3c2b9b16e", + "rev": "c80f6a7e10b39afcc1894e02ef785b1ad0b0d7e5", "type": "github" }, "original": { @@ -875,15 +1245,15 @@ }, "nixpkgs_8": { "locked": { - "lastModified": 1734119587, - "narHash": "sha256-AKU6qqskl0yf2+JdRdD0cfxX4b9x3KKV5RqA6wijmPM=", - "owner": "nixos", + "lastModified": 1746328495, + "narHash": "sha256-uKCfuDs7ZM3QpCE/jnfubTg459CnKnJG/LwqEVEdEiw=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "3566ab7246670a43abd2ffa913cc62dad9cdf7d5", + "rev": "979daf34c8cacebcd917d540070b52a3c2b9b16e", "type": "github" }, "original": { - "owner": "nixos", + "owner": "NixOS", "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" @@ -891,27 +1261,27 @@ }, "nixpkgs_9": { "locked": { - "lastModified": 1744868846, - "narHash": "sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs=", - "owner": "NixOS", + "lastModified": 1734119587, + "narHash": "sha256-AKU6qqskl0yf2+JdRdD0cfxX4b9x3KKV5RqA6wijmPM=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "ebe4301cbd8f81c4f8d3244b3632338bbeb6d49c", + "rev": "3566ab7246670a43abd2ffa913cc62dad9cdf7d5", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", + "owner": "nixos", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, "ooye": { "inputs": { - "nixpkgs": "nixpkgs_8" + "nixpkgs": "nixpkgs_9" }, "locked": { "lastModified": 1737779835, - "narHash": "sha256-TY7cnYqhgxIXZCltcFxYuKQ6Hpt3gouuYn0rj9URsp4=", + "narHash": "sha256-iZ/kQ/XFqIx053AuSHhCwu3HA8627ognYiJl/LRNpD0=", "ref": "refs/heads/master", "rev": "11cc65efa2909bdc7e3e978bf1f56f6d141bf82a", "revCount": 11, @@ -923,6 +1293,29 @@ "url": "https://cgit.rory.gay/nix/OOYE-module.git" } }, + "pre-commit-hooks": { + "inputs": { + "flake-compat": "flake-compat_5", + "gitignore": "gitignore", + "nixpkgs": [ + "hyprland", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1742058297, + "narHash": "sha256-b4SZc6TkKw8WQQssbN5O2DaCEzmFfvSTPYHlx/SFW9Y=", + "owner": "cachix", + "repo": "git-hooks.nix", + "rev": "59f17850021620cd348ad2e9c0c64f4e6325ce2a", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "git-hooks.nix", + "type": "github" + } + }, "rocksdb": { "flake": false, "locked": { @@ -949,11 +1342,13 @@ "flake-utils": "flake-utils_4", "grapevine": "grapevine", "home-manager": "home-manager", + "hy3": "hy3", + "hyprland": "hyprland", "lix-module": "lix-module", "matrixSpecSrc": "matrixSpecSrc", "mtxclientSrc": "mtxclientSrc", "nhekoSrc": "nhekoSrc", - "nixpkgs": "nixpkgs_7", + "nixpkgs": "nixpkgs_8", "nixpkgs-Draupnir": "nixpkgs-Draupnir", "nixpkgs-RoryNix": "nixpkgs-RoryNix", "nixpkgs-keydb": "nixpkgs-keydb", @@ -999,14 +1394,14 @@ }, "sops-nix": { "inputs": { - "nixpkgs": "nixpkgs_9" + "nixpkgs": "nixpkgs_10" }, "locked": { - "lastModified": 1745310711, - "narHash": "sha256-ePyTpKEJTgX0gvgNQWd7tQYQ3glIkbqcW778RpHlqgA=", + "lastModified": 1746485181, + "narHash": "sha256-PxrrSFLaC7YuItShxmYbMgSuFFuwxBB+qsl9BZUnRvg=", "owner": "Mic92", "repo": "sops-nix", - "rev": "5e3e92b16d6fdf9923425a8d4df7496b2434f39c", + "rev": "e93ee1d900ad264d65e9701a5c6f895683433386", "type": "github" }, "original": { @@ -1077,6 +1472,21 @@ }, "systems_5": { "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_6": { + "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", "owner": "nix-systems", @@ -1089,6 +1499,47 @@ "repo": "default", "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" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix
index 679d867..34e1193 100755 --- a/flake.nix +++ b/flake.nix
@@ -2,8 +2,14 @@ description = "Rory&'s services flake"; nixConfig = { - extra-substituters = [ "https://attic.computer.surgery/grapevine" ]; - extra-trusted-public-keys = [ "grapevine:nYiZ0Qz9nT7Y7kNC/2NdoS3+J9gwTyWxOvlwZnFgceA=" ]; + extra-substituters = [ + "https://attic.computer.surgery/grapevine" + "https://hyprland.cachix.org" + ]; + extra-trusted-public-keys = [ + "grapevine:nYiZ0Qz9nT7Y7kNC/2NdoS3+J9gwTyWxOvlwZnFgceA=" + "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" + ]; }; inputs = { @@ -57,7 +63,7 @@ ooye = { url = "git+https://cgit.rory.gay/nix/OOYE-module.git"; }; - + cgit-magenta = { url = "git+https://cgit.rory.gay/cgit-magenta.git"; inputs.nixpkgs.follows = "nixpkgs"; @@ -78,21 +84,30 @@ url = "github:the-draupnir-project/Draupnir/main"; flake = false; }; - + matrixSpecSrc = { url = "github:matrix-org/matrix-spec/main"; flake = false; }; + + hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1&ref=refs/tags/v0.48.1"; + hy3 = { + url = "github:outfoxxed/hy3?ref=hl0.48.0"; + inputs.hyprland.follows = "hyprland"; + }; + }; outputs = inputs: with inputs; let - pkgs-stable = system: import nixpkgs-stable { - inherit system; - config.allowUnfree = true; - }; + pkgs-stable = + system: + import nixpkgs-stable { + inherit system; + config.allowUnfree = true; + }; in { nixosConfigurations = { @@ -117,7 +132,6 @@ grapevine.nixosModules.default ooye.modules.default - ( { pkgs, ... }: { @@ -243,6 +257,16 @@ }; } ) + ( + { pkgs, ... }: + { + nixpkgs.overlays = [ + (final: prev: { + jetbrains = (pkgs-stable pkgs.stdenv.hostPlatform.system).jetbrains; + }) + ]; + } + ) ]; specialArgs = { inherit home-manager; @@ -250,6 +274,8 @@ inherit (inputs) mtxclientSrc; inherit (inputs) nhekoSrc; inherit nixpkgs-stable; + inherit hyprland; + inherit hy3; }; }; @@ -276,7 +302,6 @@ }; }; - Rory-portable = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ diff --git a/host/Rory-laptop/configuration.nix b/host/Rory-laptop/configuration.nix
index 57df091..c4aca15 100644 --- a/host/Rory-laptop/configuration.nix +++ b/host/Rory-laptop/configuration.nix
@@ -150,6 +150,7 @@ args@{ # extra packages dmenu + hyprlock nemo file-roller @@ -307,14 +308,16 @@ args@{ sudo.wheelNeedsPassword = false; }; + services.pulseaudio.enable = false; hardware = { - pulseaudio.enable = false; bluetooth = { enable = true; powerOnBoot = true; }; }; + services.locate.package = pkgs.plocate; + services.locate.enable = true; programs.dconf.enable = true; #networking.wireguard.interfaces = { diff --git a/host/Rory-laptop/optional/gui/wayland.nix b/host/Rory-laptop/optional/gui/wayland.nix
index b850a0f..c105196 100644 --- a/host/Rory-laptop/optional/gui/wayland.nix +++ b/host/Rory-laptop/optional/gui/wayland.nix
@@ -1,5 +1,7 @@ { pkgs, + hyprland, + hy3, ... }: @@ -34,5 +36,21 @@ ]; }; + programs.hyprland = { + enable = true; + package = hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland; + }; + + programs.hyprlock.enable = true; + environment.systemPackages = with pkgs;[ + wmenu + ]; + + environment.etc."hyprPlugins" = { + text = '' + plugin = ${hy3.packages.${pkgs.stdenv.hostPlatform.system}.hy3}/lib/libhy3.so + ''; + }; + xdg.portal.wlr.enable = true; } diff --git a/host/Rory-laptop/optional/hardware-specific/intel.nix b/host/Rory-laptop/optional/hardware-specific/intel.nix
index d74c9e3..0cb03f0 100644 --- a/host/Rory-laptop/optional/hardware-specific/intel.nix +++ b/host/Rory-laptop/optional/hardware-specific/intel.nix
@@ -9,7 +9,7 @@ }; hardware = { - opengl = { + graphics = { enable = true; extraPackages = with pkgs; [ intel-media-driver # LIBVA_DRIVER_NAME=iHD