43 lines
1,000 B
Nix
43 lines
1,000 B
Nix
{
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
systems.url = "github:nix-systems/default-linux";
|
|
};
|
|
|
|
outputs = {
|
|
self,
|
|
nixpkgs,
|
|
systems,
|
|
...
|
|
}: let
|
|
inherit (nixpkgs) lib;
|
|
forSystems = f:
|
|
lib.genAttrs (import systems) (system: f nixpkgs.legacyPackages.${system});
|
|
in {
|
|
overlays = {
|
|
default = _: prev: {
|
|
sync-music = prev.callPackage ./nix/sync-music.nix {};
|
|
};
|
|
};
|
|
|
|
packages = forSystems (self.overlays.default null);
|
|
|
|
devShells = forSystems (
|
|
pkgs: {
|
|
default = pkgs.mkShell rec {
|
|
nativeBuildInputs =
|
|
[
|
|
(pkgs.sbcl.withPackages (lib.const
|
|
(lib.concatMap (p: p.lispLibs) inputsFrom)))
|
|
]
|
|
++ lib.concatMap (p: p.runtimeInputs or []) inputsFrom;
|
|
|
|
inputsFrom = builtins.attrValues self.packages.${pkgs.stdenv.system};
|
|
};
|
|
}
|
|
);
|
|
|
|
formatter = forSystems (pkgs: pkgs.alejandra);
|
|
};
|
|
}
|