summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--flake.lock96
-rw-r--r--flake.nix80
2 files changed, 69 insertions, 107 deletions
diff --git a/flake.lock b/flake.lock
index 11414ad..2800fa9 100644
--- a/flake.lock
+++ b/flake.lock
@@ -1,74 +1,48 @@
 {
   "nodes": {
-    "flake-utils": {
-      "locked": {
-        "lastModified": 1631561581,
-        "narHash": "sha256-3VQMV5zvxaVLvqqUrNz3iJelLw30mIVSfZmAaauM3dA=",
-        "owner": "numtide",
-        "repo": "flake-utils",
-        "rev": "7e5bf3925f6fbdfaf50a2a7ca0be2879c4261d19",
-        "type": "github"
+    "fenix": {
+      "inputs": {
+        "nixpkgs": [
+          "nixpkgs"
+        ],
+        "rust-analyzer-src": "rust-analyzer-src"
       },
-      "original": {
-        "owner": "numtide",
-        "repo": "flake-utils",
-        "type": "github"
-      }
-    },
-    "mozilla": {
-      "flake": false,
       "locked": {
-        "lastModified": 1629225446,
-        "narHash": "sha256-HJX4Pc5ZUAg4apxB/XHuJ+6ukzvRQqeZMjscOBst2bA=",
-        "owner": "mozilla",
-        "repo": "nixpkgs-mozilla",
-        "rev": "0510159186dd2ef46e5464484fbdf119393afa58",
+        "lastModified": 1646115921,
+        "narHash": "sha256-qWsIHQ8Lb0Fk5HcMGD1aVyO1DL+GV1ulf9NuHLcU0V4=",
+        "owner": "nix-community",
+        "repo": "fenix",
+        "rev": "637a0fde617a93d01e5275946402cca15d50ef46",
         "type": "github"
       },
       "original": {
-        "owner": "mozilla",
-        "repo": "nixpkgs-mozilla",
+        "owner": "nix-community",
+        "repo": "fenix",
         "type": "github"
       }
     },
-    "naersk": {
-      "inputs": {
-        "nixpkgs": "nixpkgs"
-      },
+    "flake-utils": {
       "locked": {
-        "lastModified": 1632266297,
-        "narHash": "sha256-J1yeJk6Gud9ef2pEf6aKQemrfg1pVngYDSh+SAY94xk=",
-        "owner": "nmattia",
-        "repo": "naersk",
-        "rev": "ee7edec50b49ab6d69b06d62f1de554efccb1ccd",
+        "lastModified": 1644229661,
+        "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
+        "owner": "numtide",
+        "repo": "flake-utils",
+        "rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
         "type": "github"
       },
       "original": {
-        "owner": "nmattia",
-        "repo": "naersk",
+        "owner": "numtide",
+        "repo": "flake-utils",
         "type": "github"
       }
     },
     "nixpkgs": {
       "locked": {
-        "lastModified": 1631118067,
-        "narHash": "sha256-tEcFvm3a6ToeBGwHdjfB2mVQwa4LZCZTQYE2LnY3ycA=",
-        "path": "/nix/store/6dcqil119qr3sad2lp9ykkkc852ppmqm-source",
-        "rev": "09cd65b33c5653d7d2954fef4b9f0e718c899743",
-        "type": "path"
-      },
-      "original": {
-        "id": "nixpkgs",
-        "type": "indirect"
-      }
-    },
-    "nixpkgs_2": {
-      "locked": {
-        "lastModified": 1634436779,
-        "narHash": "sha256-D/nrXTWpe1bPIjFy85sgiLHYqu+AeaC6v5/+KlA9PRg=",
+        "lastModified": 1645433236,
+        "narHash": "sha256-4va4MvJ076XyPp5h8sm5eMQvCrJ6yZAbBmyw95dGyw4=",
         "owner": "NixOS",
         "repo": "nixpkgs",
-        "rev": "9aeeb7574fb784eaf6395f4400705b5f619e6cc3",
+        "rev": "7f9b6e2babf232412682c09e57ed666d8f84ac2d",
         "type": "github"
       },
       "original": {
@@ -80,10 +54,26 @@
     },
     "root": {
       "inputs": {
+        "fenix": "fenix",
         "flake-utils": "flake-utils",
-        "mozilla": "mozilla",
-        "naersk": "naersk",
-        "nixpkgs": "nixpkgs_2"
+        "nixpkgs": "nixpkgs"
+      }
+    },
+    "rust-analyzer-src": {
+      "flake": false,
+      "locked": {
+        "lastModified": 1646043344,
+        "narHash": "sha256-eRjC16pYTv6EqyyuE/EN3MwIx+sckiVKJVVP0LgXlPs=",
+        "owner": "rust-analyzer",
+        "repo": "rust-analyzer",
+        "rev": "342c3c42bb282cae05e9d8740c2f724ea8014150",
+        "type": "github"
+      },
+      "original": {
+        "owner": "rust-analyzer",
+        "ref": "nightly",
+        "repo": "rust-analyzer",
+        "type": "github"
       }
     }
   },
diff --git a/flake.nix b/flake.nix
index 4b7dbad..a94eb7d 100644
--- a/flake.nix
+++ b/flake.nix
@@ -1,62 +1,34 @@
 {
   inputs = {
     flake-utils.url = "github:numtide/flake-utils";
-    mozilla = {
-      url = "github:mozilla/nixpkgs-mozilla";
-      flake = false;
-    };
-    naersk.url = "github:nmattia/naersk";
     nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
+    fenix = {
+      url = "github:nix-community/fenix";
+      inputs.nixpkgs.follows = "nixpkgs";
+    };
   };
-  outputs = { self, flake-utils, mozilla, naersk, nixpkgs }: flake-utils.lib.eachDefaultSystem (
+  outputs = { self, flake-utils, nixpkgs, fenix }: flake-utils.lib.eachDefaultSystem (
     system:
-      let
-        overlay = final: prev:
-          let
-            # rustChannel = final.rustChannelOf {
-            #   channel = "stable";
-            #   date = "2021-09-09";
-            #   sha256 = "sha256-HNIlEerJvk6sBfd8zugzwSgSiHcQH8ZbqWQn9BGfmpo=";
-            # };
-            rustChannel = final.rustChannelOf {
-              channel = "nightly";
-              date = "2021-10-25";
-              sha256 = "sha256-/zS2GztCeH6kc3ZjhBRvT7Pbnea5JvGBuWdZmagh788=";
-            };
-            rust = rustChannel.rust.override {
-              extensions = [ "rust-src" ];
-            };
-          in
-            {
-              rustc = rust;
-              cargo = rust;
-            };
-        pkgs = import nixpkgs {
-          inherit system;
-          overlays = [
-            (import "${mozilla}/rust-overlay.nix")
-            overlay
-          ];
-        };
-        naerskLib = pkgs.callPackage "${naersk}/default.nix" {};
-        persea = naerskLib.buildPackage {
-          pname = "persea";
-          src = ./.;
-        };
-      in
-        {
-          defaultPackage = persea;
-          devShell = pkgs.mkShell {
-            buildInputs = with pkgs; [
-              cargo
-              cargo-edit
-              rust-analyzer
-              rustfmt
-
-              pkg-config
-              openssl
-            ];
-          };
-        }
+    let
+      pkgs = import nixpkgs {
+        inherit system;
+        overlays = [ fenix.overlay ];
+      };
+    in
+    {
+      devShell = pkgs.mkShell {
+        buildInputs = with pkgs; [
+          (fenix.packages.${system}.complete.withComponents [
+            "cargo"
+            "clippy"
+            "rust-src"
+            "rustc"
+            "rustfmt"
+          ])
+          rust-analyzer-nightly
+          cargo-edit
+        ];
+      };
+    }
   );
 }