doorbell-matrix-bot/flake.nix

46 lines
1.2 KiB
Nix

{
description = "PVV doorbell matrix bot";
inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
outputs = { self, nixpkgs, ... }@inputs: let
forAllSystems = nixpkgs.lib.genAttrs nixpkgs.lib.systems.flakeExposed;
in {
inherit inputs;
packages = forAllSystems (system: let
inherit (pkgs) lib;
pkgs = nixpkgs.legacyPackages.${system};
package-json = lib.importJSON ./package.json;
in {
default = pkgs.buildNpmPackage {
pname = package-json.name;
version = package-json.version;
meta.homepage = package-json.repository.url;
meta.license = lib.getLicenseFromSpdxId package-json.license;
src = lib.fileset.toSource {
root = ./.;
fileset = lib.fileset.difference ./. (lib.fileset.unions [
./module.nix
./flake.lock
./flake.nix
]);
};
npmDepsHash = "sha256-518ln/eAlgnKcubOTquBP8gj9Q/lT5bhpJGWOeuUKmY=";
dontNpmBuild = true;
};
});
overlays = forAllSystems (system: {
default = prevPackages: finalPackages: {
pvv-doorbell-bot = self.packages.${system}.default;
};
});
nixosModules.default = import ./module.nix;
};
}