doorbell-matrix-bot/flake.nix

39 lines
991 B
Nix

{
description = "PVV doorbell matrix bot";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
};
outputs = { self, nixpkgs, flake-utils, ... }@inputs:
flake-utils.lib.eachDefaultSystem (system:
let
pkgs = nixpkgs.legacyPackages.${system};
node-modules = pkgs.mkYarnPackage {
name = "node-modules";
src = ./.;
};
frontend = pkgs.stdenv.mkDerivation {
name = "frontend";
src = ./.;
buildInputs = [pkgs.yarn node-modules];
buildPhase = ''
ln -s ${node-modules}/libexec/pvv-doorbell-bot/node_modules node_modules
${pkgs.yarn}/bin/yarn build
'';
installPhase = ''
mkdir $out
mv dist $out/lib
'';
};
in {
packages = {
node-modules = node-modules;
default = frontend;
};
}
);
}