httplz/flake.nix
2024-10-24 15:27:11 -04:00

47 lines
1.3 KiB
Nix

{
inputs.nixpkgs.url = "nixpkgs";
inputs.flake-utils.url = "github:numtide/flake-utils";
inputs.deno-flake = {
url = "git+file:///home/n/src/deno-flake";
inputs.nixpkgs.follows = "nixpkgs";
};
inputs.fenix = {
url = "github:nix-community/fenix";
inputs.nixpkgs.follows = "nixpkgs";
};
inputs.crane = {
url = "github:ipetkov/crane";
inputs.nixpkgs.follows = "nixpkgs";
};
outputs = i:
i.flake-utils.lib.eachDefaultSystem (system:
let
pkgs = i.nixpkgs.legacyPackages.${system};
pkgsDeno = i.deno-flake.packages.${system};
pkgsFenix = i.fenix.packages.${system};
minimal = pkgsFenix.minimal;
complete = pkgsFenix.complete;
stable = pkgsFenix.stable;
in {
devShells.default = pkgs.mkShell {
packages = [
pkgsDeno.deno-latest
(pkgs.sqlite.override { interactive = true; })
pkgs.unzip
pkgs.entr
pkgs.gnumake
pkgs.fd
(pkgsFenix.combine [
(complete.withComponents [ "rust-src" "rust-analyzer" "rustfmt" "clippy" ])
(minimal.withComponents [ "cargo" "rustc" "rust-std" ])
])
pkgs.cargo-watch
];
};
});
}