{ inputs.nixpkgs.url = github:nixOS/nixpkgs/nixos-unstable; inputs.flake-utils.url = github:numtide/flake-utils; outputs = { self, nixpkgs, flake-utils, ... }: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; }; lib = pkgs.lib; in rec { packages.default = pkgs.buildNpmPackage { pname = "dtth-phanpy"; version = "0.1.0"; nativeBuildInputs = with pkgs; [ git ]; ESBUILD_BINARY_PATH = lib.getExe pkgs.esbuild; src = lib.cleanSource ./.; npmFlags = [ "--legacy-peer-deps" ]; npmDepsHash = "sha256-98FVCq5T3hkcEJ2uUMsUHVlNjm4X6IHrAtDp4OhMtoI="; # npmDepsHash = lib.fakeHash; # DTTH-specific env variables PHANPY_CLIENT_NAME = "DTTH Phanpy"; PHANPY_CLIENT_ID = "ch.dtth.phanpy"; PHANPY_WEBSITE = "https://social.dtth.ch"; installPhase = '' runHook preInstall mkdir -p $out/lib cp -r dist $out/lib/phanpy runHook postInstall ''; }; devShells.default = pkgs.mkShell { inputsFrom = [ packages.default ]; buildInputs = with pkgs; [ nodejs ]; }; }); }