commit 128fe851c769ee5c0aa6cd88e3a71b8501656443
parent 90f805e4aa55c01f8f5d4ce10f84c9c95e6fb802
Author: Martin Ashby <martin@ashbysoft.com>
Date:   Sat, 25 Nov 2023 22:32:39 +0000
Add flake.nix/lock
Diffstat:
2 files changed, 59 insertions(+), 0 deletions(-)
diff --git a/flake.lock b/flake.lock
@@ -0,0 +1,25 @@
+{
+  "nodes": {
+    "nixpkgs": {
+      "locked": {
+        "lastModified": 1700856099,
+        "narHash": "sha256-RnEA7iJ36Ay9jI0WwP+/y4zjEhmeN6Cjs9VOFBH7eVQ=",
+        "owner": "NixOS",
+        "repo": "nixpkgs",
+        "rev": "0bd59c54ef06bc34eca01e37d689f5e46b3fe2f1",
+        "type": "github"
+      },
+      "original": {
+        "id": "nixpkgs",
+        "type": "indirect"
+      }
+    },
+    "root": {
+      "inputs": {
+        "nixpkgs": "nixpkgs"
+      }
+    }
+  },
+  "root": "root",
+  "version": 7
+}
diff --git a/flake.nix b/flake.nix
@@ -0,0 +1,34 @@
+{
+  description = "Example Go development environment for Zero to Nix";
+
+  inputs = {
+    #nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/0.2305.491812.tar.gz";
+  };
+
+  # Flake outputs
+  outputs = { self, nixpkgs }:
+    let
+      allSystems = [
+        "x86_64-linux"    # 64-bit Intel/AMD Linux
+        "aarch64-linux"   # 64-bit ARM Linux
+        "x86_64-darwin"   # 64-bit Intel macOS
+        "aarch64-darwin"  # 64-bit ARM macOS
+      ];
+
+      forAllSystems = f: nixpkgs.lib.genAttrs allSystems (system: f {
+        pkgs = import nixpkgs { inherit system; };
+      });
+    in
+    {
+      devShells = forAllSystems ({ pkgs }: {
+        default = pkgs.mkShell {
+          packages = with pkgs; [
+            zig
+            hugo
+            rsync
+            postgresql
+          ];
+        };
+      });
+    };
+}