2 , varDir ? "/var/lib/aten_${environment}"
3 , mylibs, composerEnv, fetchgit, runCommand, nodejs, jq, libsass, python, fetchurl }:
5 packagesource = mylibs.fetchedGitPrivate ./aten.json;
6 packagejson = runCommand "package.json" { buildInputs = [ jq ]; } ''
7 cat ${packagesource.src}/package.json | jq -r '.version = "v1.0.0"|.name="aten"' > $out
9 yarnModules = mylibs.yarn2nixPackage.mkYarnModules rec {
13 packageJSON = packagejson;
14 yarnLock = "${packagesource.src}/yarn.lock";
17 buildInputs = [ mylibs.yarn2nixPackage.src ];
20 buildInputs = [ libsass python ];
22 nodeHeaders = fetchurl {
23 url = "https://nodejs.org/download/release/v${nodejs.version}/node-v${nodejs.version}-headers.tar.gz";
24 sha256 = "16f20ya3ys6w5w6y6l4536f7jrgk4gz46bf71w1r1xxb26a54m32";
28 node scripts/build.js --tarball=${nodeHeaders}
33 app = composerEnv.buildPackage (
34 import ./php-packages.nix { inherit composerEnv fetchurl fetchgit; } //
37 noDev = (environment == "prod");
39 export SYMFONY_ENV="${environment}"
40 export APP_ENV="${environment}"
43 ln -sf ${yarnModules}/node_modules .
44 yarn run --offline encore production
45 rm -rf var/{log,cache}
46 ln -sf ${varDir}/{log,cache} var/
48 buildInputs = [ yarnModules mylibs.yarn2nixPackage.yarn ];
52 webRoot = "${app}/public";