aboutsummaryrefslogtreecommitdiff
path: root/flake.nix
diff options
context:
space:
mode:
Diffstat (limited to 'flake.nix')
-rw-r--r--flake.nix63
1 files changed, 45 insertions, 18 deletions
diff --git a/flake.nix b/flake.nix
index 325ed60..6cc8636 100644
--- a/flake.nix
+++ b/flake.nix
@@ -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
+ ];
+ };
+ }
+ );
}