Files
net-deertopia/flake.nix
2026-01-31 04:15:49 -07:00

58 lines
1.2 KiB
Nix

{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
clj-nix.url = "github:jlesquembre/clj-nix";
};
outputs = { self, nixpkgs, clj-nix, ... }@inputs:
let
supportedSystems = [
"aarch64-darwin"
"aarch64-linux"
"x86_64-darwin"
"x86_64-linux"
];
each-system = f: nixpkgs.lib.genAttrs supportedSystems (system: f rec {
pkgs = import nixpkgs {
inherit system;
overlays = [
clj-nix.overlays.default
self.overlays.default
];
};
inherit (pkgs) lib;
inherit system;
});
in {
packages = each-system ({ pkgs, ... }: {
inherit (pkgs) server doerg;
default = pkgs.server;
});
overlays.default = final: prev:
let graal = x: final.mkGraalBin { cljDrv = x; };
in rec {
server = final.callPackage ./server/package.nix {};
doerg = final.callPackage ./doerg/package.nix {};
};
devShells = each-system ({ pkgs, system, ... }: {
default = pkgs.mkShell {
inputsFrom = [
self.packages.${system}.server
self.packages.${system}.doerg
];
packages = with pkgs; [
clojure-lsp
zprint
clojure
babashka
sqlite-web
];
};
});
};
}