From a5164282fad952d828d5642d3955e8713f55ed84 Mon Sep 17 00:00:00 2001
From: Rouven Seifert <rouven@rfive.de>
Date: Sun, 5 Mar 2023 10:48:43 +0100
Subject: [PATCH] flake cleanups

---
 flake.lock |  50 +++++++---------
 flake.nix  | 164 ++++++++++++++++++++++++++++++++++-------------------
 2 files changed, 127 insertions(+), 87 deletions(-)

diff --git a/flake.lock b/flake.lock
index 6a87ef9..67c86a9 100644
--- a/flake.lock
+++ b/flake.lock
@@ -23,7 +23,7 @@
           "nixpkgs"
         ],
         "poetry2nix": "poetry2nix",
-        "utils": "utils_2"
+        "utils": "utils"
       },
       "locked": {
         "lastModified": 1669854260,
@@ -59,14 +59,16 @@
         "nixpkgs": [
           "nixpkgs"
         ],
-        "utils": "utils"
+        "utils": [
+          "flake-utils"
+        ]
       },
       "locked": {
-        "lastModified": 1677783711,
-        "narHash": "sha256-eq5mOVk3gv5HITtLhPjKwi8bFnOaQplA3X0WFgHnmxE=",
+        "lastModified": 1678006026,
+        "narHash": "sha256-cGOfrU7JsKHAWXbPVDTOu2yyMb7GeWdUtJQNQSqht+w=",
         "owner": "nix-community",
         "repo": "home-manager",
-        "rev": "b9e3a29864798d55ec1d6579ab97876bb1ee9664",
+        "rev": "68ba59578352815ac372b17fb3df9db39afb1407",
         "type": "github"
       },
       "original": {
@@ -178,11 +180,11 @@
     },
     "nixpkgs": {
       "locked": {
-        "lastModified": 1677676435,
-        "narHash": "sha256-6FxdcmQr5JeZqsQvfinIMr0XcTyTuR7EXX0H3ANShpQ=",
+        "lastModified": 1677932085,
+        "narHash": "sha256-+AB4dYllWig8iO6vAiGGYl0NEgmMgGHpy9gzWJ3322g=",
         "owner": "nixos",
         "repo": "nixpkgs",
-        "rev": "a08d6979dd7c82c4cef0dcc6ac45ab16051c1169",
+        "rev": "3c5319ad3aa51551182ac82ea17ab1c6b0f0df89",
         "type": "github"
       },
       "original": {
@@ -209,11 +211,11 @@
     },
     "nixpkgs-stable": {
       "locked": {
-        "lastModified": 1677560965,
-        "narHash": "sha256-Tqwt5alTtMnbYUPKCYRYZqlfbjprLgDWqjMhXpFMQ6k=",
+        "lastModified": 1677948530,
+        "narHash": "sha256-BkQjq8AGHD55RJe4PUnrWRZZ8jS64p/k0bGDck5wKwY=",
         "owner": "NixOS",
         "repo": "nixpkgs",
-        "rev": "40968a3aa489191cf4b7ba85cf2a54d8a75c8daa",
+        "rev": "d51554151a91cd4543a7620843cc378e3cbc767e",
         "type": "github"
       },
       "original": {
@@ -226,7 +228,9 @@
     "nixvim": {
       "inputs": {
         "beautysh": "beautysh",
-        "flake-utils": "flake-utils",
+        "flake-utils": [
+          "flake-utils"
+        ],
         "nixpkgs": [
           "nixpkgs"
         ]
@@ -274,6 +278,7 @@
     },
     "root": {
       "inputs": {
+        "flake-utils": "flake-utils",
         "home-manager": "home-manager",
         "hyprland": "hyprland",
         "hyprland-protocols": "hyprland-protocols",
@@ -294,11 +299,11 @@
         "nixpkgs-stable": "nixpkgs-stable"
       },
       "locked": {
-        "lastModified": 1677833841,
-        "narHash": "sha256-yHZFGe7dhBE43FFWKiWc29NuveH+nfyTT6oKyFDEMys=",
+        "lastModified": 1677987270,
+        "narHash": "sha256-NRqhY8jbrmP1C6oiVqv1T0T1r560eo4ZpmEdHoQmKj4=",
         "owner": "Mic92",
         "repo": "sops-nix",
-        "rev": "128e9b29ddd88ceb634a28f7dbbfee7b895f005f",
+        "rev": "7cff56b43952edc5a2c212076d5fc922f764240f",
         "type": "github"
       },
       "original": {
@@ -322,21 +327,6 @@
         "type": "github"
       }
     },
-    "utils_2": {
-      "locked": {
-        "lastModified": 1667395993,
-        "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
-        "owner": "numtide",
-        "repo": "flake-utils",
-        "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
-        "type": "github"
-      },
-      "original": {
-        "owner": "numtide",
-        "repo": "flake-utils",
-        "type": "github"
-      }
-    },
     "wlroots": {
       "flake": false,
       "locked": {
diff --git a/flake.nix b/flake.nix
index d9982ed..2516ae5 100644
--- a/flake.nix
+++ b/flake.nix
@@ -1,66 +1,116 @@
 {
   description = "My nix setup";
   inputs = {
-    nixpkgs.url = github:nixos/nixpkgs/nixos-unstable;
-    home-manager.url = github:nix-community/home-manager;
-    hyprland.url = github:hyprwm/Hyprland;
-    sops-nix.url = github:Mic92/sops-nix;
-    nix-colors.url = github:Misterio77/nix-colors;
-    hyprpaper.url = github:hyprwm/hyprpaper;
-    hyprland-protocols.url = github:hyprwm/hyprland-protocols;
-    xdph.url = github:hyprwm/xdg-desktop-portal-hyprland;
-    nixos-hardware.url = github:nixos/nixos-hardware;
-    nixvim.url = github:pta2002/nixvim;
+    nixpkgs = {
+      url = github:nixos/nixpkgs/nixos-unstable;
+    };
+    flake-utils = {
+      url = github:numtide/flake-utils;
+    };
+    nixos-hardware = {
+      url = github:nixos/nixos-hardware;
+    };
 
-    home-manager.inputs.nixpkgs.follows = "nixpkgs";
-    hyprland.inputs.nixpkgs.follows = "nixpkgs";
-    hyprland.inputs.hyprland-protocols.follows = "hyprland-protocols";
-    hyprland.inputs.xdph.follows = "xdph";
-    hyprpaper.inputs.nixpkgs.follows = "nixpkgs";
-    hyprland-protocols.inputs.nixpkgs.follows = "nixpkgs";
-    xdph.inputs.nixpkgs.follows = "nixpkgs";
-    xdph.inputs.hyprland-protocols.follows = "hyprland-protocols";
-    sops-nix.inputs.nixpkgs.follows = "nixpkgs";
-    nixvim.inputs.nixpkgs.follows = "nixpkgs";
-  };
-
-  outputs = { self, nixpkgs, home-manager, hyprland, hyprpaper, xdph, sops-nix, nix-colors, nixos-hardware, nixvim, ... }@attrs: {
-    formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixpkgs-fmt;
-    nixosConfigurations = {
-      thinkpad = nixpkgs.lib.nixosSystem {
-        system = "x86_64-linux";
-        specialArgs.inputs = attrs;
-        modules = [
-          ./hosts/thinkpad
-          ./users/rouven
-          nixos-hardware.nixosModules.common-pc-laptop-ssd
-          home-manager.nixosModules.home-manager
-          sops-nix.nixosModules.sops
-          {
-            home-manager.extraSpecialArgs = attrs;
-            home-manager.users.rouven = {
-              imports = [
-                nix-colors.homeManagerModules.default
-                hyprland.homeManagerModules.default
-                nixvim.homeManagerModules.nixvim
-                sops-nix.homeManagerModules.sops
-              ];
-              config = {
-                colorScheme = nix-colors.colorSchemes.dracula;
-              };
-            };
-          }
-        ];
+    home-manager = {
+      url = github:nix-community/home-manager;
+      inputs = {
+        nixpkgs.follows = "nixpkgs";
+        utils.follows = "flake-utils";
       };
-      nuc = nixpkgs.lib.nixosSystem {
-        system = "x86_64-linux";
-        specialArgs.inputs = attrs;
-        modules = [
-          nixos-hardware.nixosModules.intel-nuc-8i7beh
-          ./hosts/nuc
-          sops-nix.nixosModules.sops
-        ];
+    };
+
+    nix-colors = {
+      url = github:Misterio77/nix-colors;
+    };
+
+    sops-nix = {
+      url = github:Mic92/sops-nix;
+      inputs.nixpkgs.follows = "nixpkgs";
+    };
+
+    hyprland-protocols = {
+      url = github:hyprwm/hyprland-protocols;
+      inputs.nixpkgs.follows = "nixpkgs";
+    };
+
+    xdph = {
+      url = github:hyprwm/xdg-desktop-portal-hyprland;
+      inputs = {
+        nixpkgs.follows = "nixpkgs";
+        hyprland-protocols.follows = "hyprland-protocols";
+      };
+    };
+
+    hyprland = {
+      url = github:hyprwm/Hyprland;
+      inputs = {
+        nixpkgs.follows = "nixpkgs";
+        hyprland-protocols.follows = "hyprland-protocols";
+        xdph.follows = "xdph";
+      };
+    };
+
+    hyprpaper = {
+      url = github:hyprwm/hyprpaper;
+      inputs.nixpkgs.follows = "nixpkgs";
+    };
+
+    nixvim = {
+      url = github:pta2002/nixvim;
+      inputs = {
+        nixpkgs.follows = "nixpkgs";
+        flake-utils.follows = "flake-utils";
       };
     };
   };
+
+  outputs =
+    { self
+    , nixpkgs
+    , home-manager
+    , hyprland
+    , sops-nix
+    , nix-colors
+    , nixos-hardware
+    , nixvim
+    , ...
+    }@attrs: {
+      formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixpkgs-fmt;
+      nixosConfigurations = {
+        thinkpad = nixpkgs.lib.nixosSystem {
+          system = "x86_64-linux";
+          specialArgs.inputs = attrs;
+          modules = [
+            ./hosts/thinkpad
+            ./users/rouven
+            nixos-hardware.nixosModules.common-pc-laptop-ssd
+            home-manager.nixosModules.home-manager
+            sops-nix.nixosModules.sops
+            {
+              home-manager.extraSpecialArgs = attrs;
+              home-manager.users.rouven = {
+                imports = [
+                  nix-colors.homeManagerModules.default
+                  hyprland.homeManagerModules.default
+                  nixvim.homeManagerModules.nixvim
+                  sops-nix.homeManagerModules.sops
+                ];
+                config = {
+                  colorScheme = nix-colors.colorSchemes.dracula;
+                };
+              };
+            }
+          ];
+        };
+        nuc = nixpkgs.lib.nixosSystem {
+          system = "x86_64-linux";
+          specialArgs.inputs = attrs;
+          modules = [
+            nixos-hardware.nixosModules.intel-nuc-8i7beh
+            ./hosts/nuc
+            sops-nix.nixosModules.sops
+          ];
+        };
+      };
+    };
 }