diff --git a/.envrc b/.envrc new file mode 100644 index 000000000..533548463 --- /dev/null +++ b/.envrc @@ -0,0 +1,4 @@ +# Check if nix command is available before trying to use flake +if command -v nix >/dev/null 2>&1; then + use flake +fi \ No newline at end of file diff --git a/flake.nix b/flake.nix index fdcc499a0..f1e24bed5 100644 --- a/flake.nix +++ b/flake.nix @@ -19,15 +19,26 @@ in { devShells = forEachSystem (pkgs: { - default = pkgs.mkShell { - packages = with pkgs; [ - bun - nodejs_20 - pkg-config - openssl - git - ]; - }; + default = + let + kilo = pkgs.writeShellScriptBin "kilo" '' + cd "$KILO_ROOT" + exec ${pkgs.bun}/bin/bun dev "$@" + ''; + in + pkgs.mkShell { + packages = with pkgs; [ + bun + nodejs_20 + pkg-config + openssl + git + kilo + ]; + shellHook = '' + export KILO_ROOT="$PWD" + ''; + }; }); packages = forEachSystem (