diff --git a/flake-template.nix b/flake-template.nix
new file mode 100644
index 0000000..8c7ed5b
--- /dev/null
+++ b/flake-template.nix
@@ -0,0 +1,14 @@
+{
+  description = "";
+
+  inputs.flake-utils.url = "github:numtide/flake-utils";
+
+  outputs = { self, nixpkgs, flake-utils }:
+    flake-utils.lib.eachDefaultSystem
+      (system:
+        let pkgs = nixpkgs.legacyPackages.${system}; in
+        {
+          devShell = import ./shell.nix { inherit pkgs; };
+        }
+      );
+}
diff --git a/nix-ld.nix b/nix-ld.nix
new file mode 100644
index 0000000..ce9314e
--- /dev/null
+++ b/nix-ld.nix
@@ -0,0 +1,8 @@
+{ pkgs ? import <nixpkgs> { } }:
+
+with pkgs;
+
+mkShell {
+  NIX_LD_LIBRARY_PATH = lib.makeLibraryPath [ stdenv.cc.cc openssl ];
+  NIX_LD = lib.fileContents "${stdenv.cc}/nix-support/dynamic-linker";
+}
diff --git a/shell.nix b/shell.nix
new file mode 100644
index 0000000..81c823e
--- /dev/null
+++ b/shell.nix
@@ -0,0 +1,9 @@
+{ pkgs ? import <nixpkgs> {} }:
+
+with pkgs;
+
+mkShell {
+  buildInputs = [
+
+  ];
+}