mmelodies/flake.nix

47 lines
1.3 KiB
Nix

{
description = "andisco";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
phyzzy.url = "git+https://fem.mint.lgbt/mmelodies/phyzzy.git";
phyzzy.inputs.nixpkgs.follows = "nixpkgs";
napalm.url = "github:nix-community/napalm";
napalm.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = inputs@{ self, nixpkgs, flake-utils, ... }:
flake-utils.lib.eachDefaultSystem
(system:
let
pkgs = import nixpkgs {
inherit system;
overlays = [
self.overlay
];
};
in
{
devShells = rec {
frontend = import ./shell.nix { inherit pkgs; };
backend = import ./backend/shell.nix { inherit pkgs; };
default = frontend;
};
packages = pkgs.mmelodies;
}
) // {
nixosModules.default = (import ./nixos self);
overlay =
(final: super: {
napalm = import inputs.napalm { pkgs = super; };
mmelodies = {
frontend = final.callPackage ./default.nix {};
backend = final.callPackage ./backend {};
synth = final.callPackage (import inputs.phyzzy) {};
};
});
};
}