blob: d696189f04a2cea37ad3920ac4a36a2a1fab1892 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
{
src,
version,
stdenv,
yarn-berry_4,
nodejs,
gzip,
}:
let
yarn = yarn-berry_4;
in
stdenv.mkDerivation (finalAttrs: {
pname = "koito-frontend";
inherit src version;
sourceRoot = "${finalAttrs.src.name}/client";
missingHashes = ./missing-hashes.json;
offlineCache = yarn.fetchYarnBerryDeps {
inherit (finalAttrs) src sourceRoot missingHashes;
hash = "sha256-VIlWld21GScJ/2UUkKQISM9jyU9wCVwwDNKkge+K044=";
};
nativeBuildInputs = [
nodejs
yarn.yarnBerryConfigHook
yarn
gzip
];
buildPhase = ''
runHook preBuild
export VITE_KOITO_VERSION=${version}
yarn run build
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir -p $out/client
cp -r build $out/client
find $out/client/build -type f \( -name "*.js" -o -name "*.css" -o -name "*.html" -o -name "*.svg" \) -exec gzip -k -9 {} \;
runHook postInstall
'';
})
|