diff options
Diffstat (limited to 'flake.nix')
-rw-r--r-- | flake.nix | 63 |
1 files changed, 45 insertions, 18 deletions
@@ -1,21 +1,48 @@ { - inputs = { - nixpkgs.url = "github:nixos/nixpkgs"; - flake-utils.url = "github:numtide/flake-utils"; - }; + inputs = { + nixpkgs.url = "github:nixos/nixpkgs"; + flake-utils.url = "github:numtide/flake-utils"; + zig = { + url = "github:mitchellh/zig-overlay"; + inputs.nixpkgs.follows = "nixpkgs"; + inputs.flake-utils.follows = "flake-utils"; + }; + }; - outputs = { self, nixpkgs, flake-utils }: - flake-utils.lib.eachDefaultSystem - (system: - let pkgs = nixpkgs.legacyPackages.${system}; - in { devShell = pkgs.mkShell { - buildInputs = with pkgs; [ - nodePackages.typescript - python3 - psmisc # fuser - esbuild - watchexec - ]; - }; } - ); + outputs = { self, nixpkgs, flake-utils, zig, ... }: + flake-utils.lib.eachDefaultSystem (system: + let + overlays = [ + (final: prev: { + zigpkgs = zig.packages.${prev.system}; + }) + ]; + pkgs = import nixpkgs { + inherit system overlays; + }; + in + with pkgs; + { + devShell = mkShell { + buildInputs = [ + # Common + watchexec + + # Frontend + esbuild + nodePackages.typescript + dart-sass + + # Backend + psmisc # fuser + sqlite + zigpkgs.master + + # Tooling + tmux + tmuxinator + ]; + }; + } + ); } |