diff --git a/default.nix b/default.nix index 685c866c30..9a61398dc7 100644 --- a/default.nix +++ b/default.nix @@ -14,6 +14,7 @@ rec { # Agents in varous languages agent-js-monorepo = pkgs.agent-js-monorepo; + agent-js = import ./nix/agent-js/agent-js.nix { inherit system pkgs; }; # Bootstrap frontend. bootstrap-js = import ./nix/agent-js/bootstrap-js.nix { inherit system pkgs; }; diff --git a/nix/agent-js/agent-js.nix b/nix/agent-js/agent-js.nix new file mode 100644 index 0000000000..7f7e844163 --- /dev/null +++ b/nix/agent-js/agent-js.nix @@ -0,0 +1,37 @@ +{ pkgs ? import ../. { inherit system; }, system ? builtins.currentSystem }: +pkgs.stdenv.mkDerivation { + name = "agent-js-monorepo-package-agent"; + src = "${pkgs.agent-js-monorepo}"; + outputs = [ + "out" + "lib" + ]; + buildInputs = [ + pkgs.nodejs + pkgs.agent-js-monorepo + ]; + configurePhase = '' + export HOME=$(mktemp -d) + ''; + buildPhase = '' + cd packages/agent + echo "calling npm pack" + npm pack + cd - + ''; + installPhase = '' + # $out: everything + mkdir -p $out + cp -R ${pkgs.agent-js-monorepo.agent}/* $out/ + cp -R packages/agent/dfinity-agent*.tgz $out/ + + # $lib/node_modules: node_modules dir that must be resolvable by npm + # for future build steps to work (e.g. at ../../node_modules) + mkdir -p $lib + agent_node_modules="${pkgs.agent-js-monorepo}/packages/agent/node_modules" + if test -d "$agent_node_modules"; then + cp -R "$agent_node_modules" $lib; + fi + + ''; +} diff --git a/nix/sources.json b/nix/sources.json index d00dd378d9..5611da96af 100644 --- a/nix/sources.json +++ b/nix/sources.json @@ -15,7 +15,7 @@ "agent-js-monorepo": { "ref": "next", "repo": "ssh://git@github.com/dfinity-lab/agent-js", - "rev": "ccea79546e273892041b3863cf7a5e4ad51c2f07", + "rev": "6caaa829bd7a98e3ed182351f5e1fa744718a3fa", "type": "git" }, "bats-support": { @@ -44,9 +44,9 @@ "type": "git" }, "ic-ref": { + "branch": "release-0.10", "repo": "ssh://git@github.com/dfinity-lab/ic-ref", "rev": "7d453c4b09f78b3fa1f06df6a3ff00e51b11ca3e", - "branch": "release-0.10", "type": "git" }, "motoko": {