build(flake): split into flake modules

This commit is contained in:
2026-09-06 16:39:29 +02:00
parent 46e977acf5
commit 5ea156c181
9 changed files with 216 additions and 189 deletions
+45 -33
View File
@@ -1,37 +1,49 @@
{
stdenv,
fetchYarnDeps,
yarnConfigHook,
yarnBuildHook,
nodejs,
wordle-solver-wasm-pkg,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "wordle-solver-web";
version = "0.1.0";
perSystem = {
pkgs,
self',
...
}: let
drv = {
stdenv,
fetchYarnDeps,
yarnConfigHook,
yarnBuildHook,
nodejs,
wordle-solver-wasm-pkg,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "wordle-solver-web";
version = "0.1.0";
src = ../web;
src = ../web;
yarnOfflineCache = fetchYarnDeps {
yarnLock = finalAttrs.src + "/yarn.lock";
hash = "sha256-MTyHX2+/U7jRB1SJWbK9Td43zq+nclQwx7oDZbX0DqA=";
yarnOfflineCache = fetchYarnDeps {
yarnLock = finalAttrs.src + "/yarn.lock";
hash = "sha256-MTyHX2+/U7jRB1SJWbK9Td43zq+nclQwx7oDZbX0DqA=";
};
yarnBuildScript = "build-no-wasm";
postPatch = ''
ln -s ${wordle-solver-wasm-pkg} pkg
'';
installPhase = ''
mkdir $out
mv dist/* $out/
'';
nativeBuildInputs = [
yarnConfigHook
yarnBuildHook
# Needed for executing package.json scripts
nodejs
];
});
in {
packages.wordle-solver-web = pkgs.callPackage drv {
inherit (self'.packages) wordle-solver-wasm-pkg;
};
};
yarnBuildScript = "build-no-wasm";
postPatch = ''
ln -s ${wordle-solver-wasm-pkg} pkg
'';
installPhase = ''
mkdir $out
mv dist/* $out/
'';
nativeBuildInputs = [
yarnConfigHook
yarnBuildHook
# Needed for executing package.json scripts
nodejs
];
})
}