Files
net-deertopia/flake.nix
Madeleine Sydney Ślaga 31052a65c8
All checks were successful
build / build (push) Successful in 5s
2026-04-03 13:29:20 -06:00

76 lines
2.0 KiB
Nix

{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
clj-nix.url = "github:jlesquembre/clj-nix";
sydpkgs.url = "github:msyds/sydpkgs";
};
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 = [
inputs.sydpkgs.overlays.default
clj-nix.overlays.default
self.overlays.default
];
};
inherit (pkgs) lib;
inherit system;
});
in {
# Exposed as a REPL convenience.
_pkgs = each-system ({ pkgs, ... }: pkgs);
packages = each-system ({ pkgs, ... }: {
inherit (pkgs) doerg doerg-parser doerg-temml-worker;
default = pkgs.doerg;
});
overlays.default = final: prev:
let graal = x: final.mkGraalBin { cljDrv = x; };
in {
ibm-plex-web = final.callPackage ./ibm-plex-web.nix {};
doerg = final.callPackage ./. {};
doerg-parser = final.callPackage ./doerg-parser {};
doerg-temml-worker = final.callPackage ./doerg-temml-worker {};
our-tex = final.callPackage ./our-tex.nix {};
};
checks = each-system ({ pkgs, system, ... }: {
build-all =
pkgs.linkFarmFromDrvs
"all"
(pkgs.lib.attrValues self.packages.${system});
});
devShells = each-system ({ pkgs, system, ... }: {
default = pkgs.mkShell {
inputsFrom = [
pkgs.doerg
pkgs.doerg-parser
pkgs.doerg-temml-worker
];
packages = with pkgs; [
clojure-lsp
doerg-parser
doerg-temml-worker
zprint
clojure
babashka
sqlite-web
pkgs.doerg.test-emacs
];
};
});
};
}