!NhAsaYbbgmzHtXTPQJ:funklause.de

Nix NodeJS

196 Members
56 Servers

You have reached the beginning of time (for this room).


SenderMessageTime
14 Nov 2023
@joepie91:pixie.town@joepie91:pixie.town *

perhaps there are circular plugin architecures, but usually it's more something like

const thing = require("thing");
const thingPluginA = require("thing-plugin-a");
const thingPluginB = require("thing-plugin-b");

let instance = thing({ plugins: thingPluginA, thingPluginB });

and so both the "core" package and the plugin packages are loaded from the application code, the plugins don't load the core and the core doesn't load the plugins, the peer dependency constraint just serves to give people a warning if they have an incompatible core and plugins in the same project

14:02:28
@keiichi:matrix.orgteto

I wonder if it's possible to just install a list of dependencies https://github.com/svanderburg/node2nix#adding-unspecified-dependencies , like having a package.json

 [
  "floomatic"
]

npm update doesn't work so I think not. My original issue is that right now I need to use export NODE_PATH="${pulumiSdks}/lib/node_modules/PKG_NAME/lib/modules" while my package has 0 source code, it's just a compilation of dependencies (same package.json as my original)

14:09:55
15 Nov 2023
@kranzes:matrix.org@kranzes:matrix.org joined the room.12:41:52
@grahamc:nixos.org@grahamc:nixos.orgchanged room power levels.16:10:49
@grahamc:nixos.org@grahamc:nixos.org left the room.16:10:49
@qyliss:fairydust.space@qyliss:fairydust.space joined the room.17:38:27
@keiichi:matrix.orgtetoIt's funny how no one seems to be using typescript https://www.reddit.com/r/Nix/comments/x7tdxd/building_typescript_node_apps_with_nix/ https://www.reddit.com/r/NixOS/comments/16xlbk2/looking_for_help_to_use_nixos_in_a_typescript/17:41:43
@qyliss:fairydust.space@qyliss:fairydust.space left the room.17:48:57
@mjolnir:nixos.orgNixOS Moderation Botchanged room power levels.18:12:40
@mjolnir:nixos.orgNixOS Moderation Botchanged room power levels.18:12:40
@c0ba1t:matrix.orgCobalt
In reply to @keiichi:matrix.org
It's funny how no one seems to be using typescript https://www.reddit.com/r/Nix/comments/x7tdxd/building_typescript_node_apps_with_nix/ https://www.reddit.com/r/NixOS/comments/16xlbk2/looking_for_help_to_use_nixos_in_a_typescript/
We do use typescript, it's just compiled to JS in the build step. Otherwise, ts-node from nuxpkgs works too
19:11:41
16 Nov 2023
@adis:blad.is@adis:blad.is joined the room.05:13:13
@keiichi:matrix.orgteto

think I kinda managed to package my typescript program with buildNpmPackage but on run I get

$ jkops --help
Error: Cannot find module '/nix/store/z4dmxdr8v12cy6fzk723f0p9gyr7rxi4-jkops-1.0.0/lib/node_modules/jkops/node_modules/@aws-sdk/util-utf8-browser/dist-cjs/index.js'. Please verify that the package.json has a valid "main" entry
   at tryPackage (node:internal/modules/cjs/loader:438:19)
   at Function.Module._findPath (node:internal/modules/cjs/loader:680:18)
   at Function.Module._resolveFilename (node:internal/modules/cjs/loader:1063:27)
   at Function.Module._load (node:internal/modules/cjs/loader:922:27)
   at Module.require (node:internal/modules/cjs/loader:1143:19)
   at require (node:internal/modules/cjs/helpers:119:18)
   at Object.<anonymous> (/nix/store/z4dmxdr8v12cy6fzk723f0p9gyr7rxi4-jkops-1.0.0/lib/node_modules/jkops/node_modules/@aws-crypto/util/src/convertToBuffer.ts:5:1)
   at Module._compile (node:internal/modules/cjs/loader:1256:14)
   at Object.Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
   at Module.load (node:internal/modules/cjs/loader:1119:32)

usually I can manage this kind of issues with a bit of NODE_PATH shenaningan but the files dont seem to even exist in fd -uL dist-cjs/index.js /nix/store/z4dmxdr8v12cy6fzk723f0p9gyr7rxi4-jkops-1.0.0/. I can share the package{-lock}.json if it helps.

09:51:55
17 Nov 2023
@adis:blad.is@adis:blad.is

I had this idea today for a radically simple ingestion method for package-lock.json.
The idea is:

  • Map over package-lock.json packages, invoke correct fetcher
  • Update package.json & package-lock.lock to point to store paths
  • npm install

I have a PoC here: https://github.com/adisbladis/fetch-package-lock/blob/master/flake.nix#L78-L82

I'm wondering if there is anything obvious I've missed? It seems to easy/simple.

08:45:12
@adis:blad.is@adis:blad.isIt certainly seems to be working alright, even for some larger stuff09:14:37

Show newer messages


Back to Room ListRoom Version: 6