2026-04-18 08:25:39 -07:00
|
|
|
# nix/web.nix — Hermes Web Dashboard (Vite/React) frontend build
|
2026-04-20 16:12:28 -04:00
|
|
|
{ pkgs, hermesNpmLib, ... }:
|
2026-04-18 08:25:39 -07:00
|
|
|
let
|
|
|
|
|
src = ../web;
|
|
|
|
|
npmDeps = pkgs.fetchNpmDeps {
|
|
|
|
|
inherit src;
|
2026-04-20 16:12:28 -04:00
|
|
|
hash = "sha256-TS/vrCHbdvXkPcAPxImKzAd2pdDCrKlgYZkXBMQ+TEg=";
|
2026-04-18 08:25:39 -07:00
|
|
|
};
|
2026-04-20 13:58:02 -04:00
|
|
|
|
2026-04-20 16:12:28 -04:00
|
|
|
npm = hermesNpmLib.mkNpmPassthru { folder = "web"; attr = "web"; pname = "hermes-web"; };
|
2026-04-18 08:25:39 -07:00
|
|
|
in
|
2026-04-20 16:12:28 -04:00
|
|
|
pkgs.buildNpmPackage (npm // {
|
2026-04-18 08:25:39 -07:00
|
|
|
pname = "hermes-web";
|
|
|
|
|
version = "0.0.0";
|
|
|
|
|
inherit src npmDeps;
|
|
|
|
|
|
|
|
|
|
doCheck = false;
|
|
|
|
|
|
|
|
|
|
buildPhase = ''
|
|
|
|
|
npx tsc -b
|
|
|
|
|
npx vite build --outDir dist
|
|
|
|
|
'';
|
|
|
|
|
|
|
|
|
|
installPhase = ''
|
|
|
|
|
runHook preInstall
|
|
|
|
|
cp -r dist $out
|
|
|
|
|
runHook postInstall
|
|
|
|
|
'';
|
2026-04-20 16:12:28 -04:00
|
|
|
})
|