website/flake.nix
2025-12-14 13:55:51 -08:00

54 lines
1.4 KiB
Nix

{
description = "reidlab.pink";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
systems.url = "github:nix-systems/default-linux";
};
outputs = { self, nixpkgs, systems, ... }:
let
inherit (nixpkgs) lib;
eachSystem = lib.genAttrs (import systems);
pkgsFor = eachSystem (system: import nixpkgs { inherit system; });
package = builtins.fromJSON (builtins.readFile ./package.json);
in {
packages = eachSystem (system: let
pkgs = pkgsFor.${system};
in rec {
default = reidlab-pink;
reidlab-pink = pkgs.buildNpmPackage {
pname = package.name;
inherit (package) version;
# uncomment this and let the build fail, then get the current hash
# very scuffed but endorsed!
#npmDepsHash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
npmDepsHash = "sha256-XCGUKgLZxW7MonHswkp7mbvgeUlRCgBE3WnRjElf44Q=";
installPhase = ''
runHook preInstall
mkdir -p $out
mv ./dist/* $out/
runHook postInstall
'';
src = ./.;
};
});
devShells = eachSystem (system: let
pkgs = pkgsFor.${system};
in {
default = pkgs.mkShell {
packages = with pkgs; [
nodejs
nodePackages.npm
];
};
});
};
}