46 lines
1.2 KiB
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;
|
|
};
|
|
}
|