lol
1{ version, src, stdenv, lib, fetchFromGitHub, fetchYarnDeps, fixup_yarn_lock, yarn, nodejs }:
2
3stdenv.mkDerivation rec {
4 inherit version src;
5
6 pname = "rmfakecloud-webui";
7
8 yarnOfflineCache = fetchYarnDeps {
9 yarnLock = "${src}/ui/yarn.lock";
10 sha256 = "sha256-37P+acjaeG7TCyLoIHIHsB+DCUOsQOJ1H9T5SgajtLc=";
11 };
12
13 nativeBuildInputs = [ fixup_yarn_lock yarn nodejs ];
14
15 buildPhase = ''
16 export HOME=$(mktemp -d)
17 cd ui
18 fixup_yarn_lock yarn.lock
19 yarn config --offline set yarn-offline-mirror ${yarnOfflineCache}
20 yarn install --offline --frozen-lockfile --ignore-engines --ignore-scripts --no-progress
21 patchShebangs node_modules
22 export PATH=$PWD/node_modules/.bin:$PATH
23 ./node_modules/.bin/react-scripts build
24 mkdir -p $out
25 cd ..
26 '';
27
28 installPhase = ''
29 cp -r ui/build/* $out
30 '';
31
32 meta = with lib; {
33 description = "Only the webui files for rmfakecloud";
34 homepage = "https://ddvk.github.io/rmfakecloud/";
35 license = licenses.agpl3Only;
36 };
37}