| 21 Dec 2023 |
peter-lustig | My build script (left the hash out for abbreviation):
packages.${system}.default = pkgs.buildNpmPackage {
name = "project-build";
src = ./.;
installPhase = ''
mkdir $out
cp -r build/* $out
cp package.json $out
cp -r node_modules $out
'';
};
};
| 15:42:05 |
peter-lustig | More explicitly getting is not exported by "^@virtual:$env/static/private", imported by, but I do not get this error when I only run npm run build without doing anything nix. | 15:45:05 |
Lily Foster | In reply to @peter-lustig:matrix.org
> at VariableDeclarator.bind (file:///build/2rdr2hwic3kd9pwpgp32s206yh5kqwhs-source/node_modules/rollup/dist/es/shared/node-entry.js:4639:23)
>
> ERROR: `npm build` failed
Is this some nix issue again?
I can build the project fine with npm run build
hmmm it's unclear. can you send full build output? the error is before that | 15:53:43 |
peter-lustig | In reply to @lily:lily.flowers hmmm it's unclear. can you send full build output? the error is before that yep wait | 15:56:33 |
peter-lustig | https://pastebin.com/dfAjZx0K | 15:58:10 |
Lily Foster | uhhh why is it needing github api env vars | 15:58:51 |
Lily Foster | during build | 15:58:54 |
peter-lustig | idk | 15:59:33 |
peter-lustig | as mentioned | 15:59:36 |
Lily Foster | give me a sec so i can get out my laptop | 15:59:41 |
peter-lustig | it does not happen when I do npm run build without nix stuff | 15:59:43 |
Lily Foster | In reply to @peter-lustig:matrix.org it does not happen when I do npm run build without nix stuff yeah but do you have github env vars set? | 15:59:57 |
peter-lustig | In reply to @lily:lily.flowers yeah but do you have github env vars set? yeah in .env and then I import them with $env/static/.. | 16:00:19 |
Lily Foster | ah, but is it possible to make them not required during build? | 16:00:37 |
Lily Foster | you can mock up fake ones in the nix build too | 16:00:47 |
peter-lustig | I guess it is | 16:01:00 |
Lily Foster | by writing a .env there or something | 16:01:03 |
peter-lustig | not sure | 16:01:05 |
peter-lustig | In reply to @lily:lily.flowers you can mock up fake ones in the nix build too could you show me how I would do that in my current flake | 16:01:27 |
Lily Foster | yeah, one sec. getting personal laptop out | 16:01:44 |
Lily Foster | In reply to @peter-lustig:matrix.org could you show me how I would do that in my current flake the values don't matter during build right? so they could be empty strings for all your package cares? | 16:03:49 |
peter-lustig | yeah i think so | 16:04:21 |
peter-lustig | worth a try | 16:04:28 |
Lily Foster | (dynamically grabbing them from the env when they are needed rather than importing from a virtual module would probably be more robust, and would also handle things like the env vars changing during the lifetime of the program better) | 16:04:51 |
Lily Foster | you can do something like this though:
env = {
GITHUB_CLIENT_ID = "";
GITHUB_CLIENT_SECRET = "";
...
}
| 16:05:19 |
Lily Foster | on the derivation | 16:05:23 |
peter-lustig | In reply to @lily:lily.flowers (dynamically grabbing them from the env when they are needed rather than importing from a virtual module would probably be more robust, and would also handle things like the env vars changing during the lifetime of the program better) yeah i had it dynamic before and everything worked, but look at this:
https://kit.svelte.dev/docs/migrating-to-sveltekit-2#dynamic-environment-variables-cannot-be-used-during-prerendering
| 16:05:33 |
peter-lustig | that does not work for the new version | 16:05:47 |
Lily Foster | shouldn't you be using dynamic instead of static then? | 16:06:41 |
Lily Foster | since you want runtime vars, not build-time vars? | 16:06:46 |