| 15 Nov 2023 |
| NixOS Moderation Botchanged room power levels. | 18:12:40 |
Cobalt | 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 joined the room. | 05:13:13 |
@keiichi:matrix.org | 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 | 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 | It certainly seems to be working alright, even for some larger stuff | 09:14:37 |
Cobalt | Hmm, you'd need to alter the source, right? Or do you plan to replace the package lock with a linked version? | 09:53:57 |
@adis:blad.is | In reply to @c0ba1t:matrix.org Hmm, you'd need to alter the source, right? Or do you plan to replace the package lock with a linked version? I replace it with one where all the URLs are substituted with Nix store paths | 09:55:03 |
Cobalt | Okay, that sounds nice. That might also be a neat way to work around the occasional npm cache re-download issues. | 09:58:34 |
Wanja Hentze | adisbladis: we have a weird cursed JS codebase at work I could try this on | 10:27:22 |
Wanja Hentze | it has several package.json files in the repo but is not a workspace | 10:27:35 |
@adis:blad.is | In reply to @whentze:matrix.org adisbladis: we have a weird cursed JS codebase at work I could try this on Cool :) | 11:31:16 |
| ian.bridgy joined the room. | 14:43:37 |
| Miguel Suarez joined the room. | 18:22:25 |
Miguel Suarez | Hello Nix Community! | 18:22:56 |
Miguel Suarez | Is there a way to have a development environment created from a single file?, for example, entering an angular project and running a nix related command would give me a specific docker postgresql database and specific nodejs and npm versions that would go with the Angular project | 18:23:42 |