vuls: init at 0.27.0 (#348530)
[NixPkgs.git] / pkgs / by-name / ei / eintopf / frontend.nix
blobc87c850eeb06609a4186d8d6a7e048ffc5bc2619
1 { stdenv
2 , fetchYarnDeps
3 , fixup-yarn-lock
4 , yarn
5 , src
6 , version
7 , nodejs
8 , eintopf
9 }:
11 stdenv.mkDerivation (finalAttrs: {
12   pname = "eintopf";
13   inherit version src;
15   sourceRoot = "${finalAttrs.src.name}/backstage";
17   offlineCache = fetchYarnDeps {
18     yarnLock = "${finalAttrs.src}/backstage/yarn.lock";
19     hash = "sha256-7Br2FBhLZf7Cuul5n55EHfqyW8GbujB+yZ/RK6f7I4M=";
20   };
22   nativeBuildInputs = [
23     fixup-yarn-lock
24     nodejs
25     yarn
26   ];
28   configurePhase = ''
29     runHook preConfigure
31     export HOME=$(mktemp -d)
32     yarn config --offline set yarn-offline-mirror $offlineCache
33     fixup-yarn-lock yarn.lock
34     yarn --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive install
35     patchShebangs node_modules
37     runHook postConfigure
38   '';
40   buildPhase = ''
41     runHook preBuild
43     yarn --offline build
45     runHook postBuild
46   '';
48   installPhase = ''
49     runHook preInstall
51     yarn --offline --production install
53     mkdir -p "$out"
54     cp -r . $out/
56     runHook postInstall
57   '';
59   meta = {
60     inherit (eintopf.meta) homepage description license maintainers;
61   };