!NhAsaYbbgmzHtXTPQJ:funklause.de

Nix NodeJS

198 Members
57 Servers

Load older messages


SenderMessageTime
12 Jan 2024
@marie:marie.cologneMariei first tried https://github.com/jeslie0/npm-lockfile-fix, that didn't really work, so i deleted node_modules and package-lock.json and ran npm install12:10:23
@lily:lily.flowersLily Foster
In reply to @marie:marie.cologne
i first tried https://github.com/jeslie0/npm-lockfile-fix,
that didn't really work, so i deleted node_modules and package-lock.json and ran npm install
hmmmm alright i'll pull my laptop out in a minute and look closer
12:21:02
@lily:lily.flowersLily Foster
In reply to @marie:marie.cologne
i first tried https://github.com/jeslie0/npm-lockfile-fix,
that didn't really work, so i deleted node_modules and package-lock.json and ran npm install
it's still missing resolved/integrity fields for which here: https://github.com/NyCodeGHG/appium/blob/npm/package-lock.json#L22582 (and a few packages around it as well)
if i regenerate the lockfile with npm 10.2.4 locally then it's all fine again. what npm version and exact npm command were you using to regenerate the lockfile?
12:32:22
@lily:lily.flowersLily Foster (you also don't seem to need --ignore-scripts to get it to build fine, either. i confirmed i could run the appium workspace package's index.js as well after building) 12:36:47
@marie:marie.cologneMarie
In reply to @lily:lily.flowers
it's still missing resolved/integrity fields for which here: https://github.com/NyCodeGHG/appium/blob/npm/package-lock.json#L22582 (and a few packages around it as well)
if i regenerate the lockfile with npm 10.2.4 locally then it's all fine again. what npm version and exact npm command were you using to regenerate the lockfile?
oh, thats weird
i'll tell you the versions in a moment
12:37:18
@lily:lily.flowersLily Foster (it looks like specifying npmWorkspace = "packages/appium" doesn't work as intended because they specify their build scripts at the top-level because they use lerna and so trying to build it as a workspace with npm seems to do Bad Things. but you should be able to manually add the wrapping in postInstall i guess) 12:40:45
@lily:lily.flowersLily Foster * (it looks like specifying npmWorkspace = "packages/appium" doesn't work as intended because they specify their build scripts at the top-level because they use lerna and so trying to build it as a workspace with npm seems to do Bad Things (or rather just not do the build step). but you should be able to manually add the wrapping in postInstall i guess) 12:41:02
@marie:marie.cologneMariei used npm 9.8.112:42:57
@lily:lily.flowersLily Fosterhmm, let me retry with that one and see if i can replicate your lockfile12:44:34
@lily:lily.flowersLily Fosterwhat was the exact npm command you were using?12:45:24
@marie:marie.cologneMariejust npm install iirc12:45:39
@marie:marie.cologneMarie i just retried with npm install --package-lock-only --ignore-scripts and the entry without resolved/integrity is also there 12:47:51
@lily:lily.flowersLily Fosterokay i've got a few months old nixpkgs revision so i can try npm 9.8.1, but i still can't replicate what you're getting. idk if you need to clear both npm cache and node_modules (instead of just node_modules) or what :/13:01:39
@lily:lily.flowersLily Foster

fwiw btw, here's a derivation i'm using that makes a seemingly-usable appium bin (and package-lock.json is the version i generated myself):

{ fetchFromGitHub, buildNpmPackage, yq-go }:
let
  version = "2.4.1";
in buildNpmPackage {
  pname = "appium";
  inherit version;

  src = fetchFromGitHub {
    owner = "NyCodeGHG";
    repo = "appium";
    # rev = "appium@${version}";
    rev = "3531a7c72309b858a4b7a0b7180bfdb645c65cd1";
    hash = "sha256-8RJB5MKL+N1ZbX4TUcnWUyfIdZJiG2EFkdgiQ64yJb0=";
  };

  npmDepsHash = "sha256-ZMeiwUEd2R54v2x0JUGhjU2MHGCRrXDiTYwA3Bk1MxY=";

  nativeBuildInputs = [ yq-go ];

  postPatch = ''
    cp ${./package-lock.json} ./package-lock.json
    yq -iPo json '. +  {"bin": {"appium":"packages/appium/index.js"}}' ./package.json
  '';
}
13:02:48
@lily:lily.flowersLily Foster
In reply to @lily:lily.flowers
okay i've got a few months old nixpkgs revision so i can try npm 9.8.1, but i still can't replicate what you're getting. idk if you need to clear both npm cache and node_modules (instead of just node_modules) or what :/
yeah even deleting my ~/.npm and node_modules and package-lock.json locally and doing npm install --package-lock-only --ignore-scripts with 9.8.1 still gets a working lockfile for me...
13:05:45
@marie:marie.cologneMarieweird, i'll try this on another machine13:06:02
@lily:lily.flowersLily Foster *

fwiw btw, here's a derivation i'm using that makes a seemingly-usable appium bin (and package-lock.json is the version i generated myself):

{ fetchFromGitHub, buildNpmPackage, yq-go }:
let
  version = "2.4.1";
in buildNpmPackage {
  pname = "appium";
  inherit version;

  src = fetchFromGitHub {
    owner = "NyCodeGHG";
    repo = "appium";
    # rev = "appium@${version}";
    rev = "3531a7c72309b858a4b7a0b7180bfdb645c65cd1";
    hash = "sha256-8RJB5MKL+N1ZbX4TUcnWUyfIdZJiG2EFkdgiQ64yJb0=";
  };

  npmDepsHash = "sha256-ZMeiwUEd2R54v2x0JUGhjU2MHGCRrXDiTYwA3Bk1MxY=";

  nativeBuildInputs = [ yq-go ];

  postPatch = ''
    cp ${./package-lock.json} ./package-lock.json
  '';

  preConfigure = ''
    yq -iPo json '. +  {"bin": {"appium":"packages/appium/index.js"}}' ./package.json
  '';
}
13:06:14
@marie:marie.cologneMarieit works fine on another machine with latest nodejs from nixos-23.11 (also 9.8.1)13:28:43
@niko:conduit.rsnyanbinaryHow come pnpm doesnt have tooling yet?15:20:26
@niko:conduit.rsnyanbinaryBun tooling would be really nice too lol15:20:32
@lily:lily.flowersLily Fosterthere's no blockers besides someone actually doing it15:20:52
@c0ba1t:matrix.orgCobalt\* not just doing it once though, maintaining any new build tool(s) is also required to be done by someone (else).15:23:29
@c0ba1t:matrix.orgCobalt* \* not just doing it once though, maintaining any new build tool(s) is also required to be done by someone (else, possibly).15:23:46
@niko:conduit.rsnyanbinaryhttps://github.com/NixOS/nixpkgs/pull/26577115:46:37
@niko:conduit.rsnyanbinarynightmare blunt pr15:46:40
@niko:conduit.rsnyanbinaryit still doesnt build 😭so if anyone wants to help haha15:47:01
15 Jan 2024
@kstiehl:matrix.numericas.de@kstiehl:matrix.numericas.de joined the room.14:41:10
@kstiehl:matrix.numericas.de@kstiehl:matrix.numericas.de

Hi guys,
I am currently trying to update an existing package which includes a yarn build.
But i get the following error message


Error: Cannot find module @rollup/rollup-linux-x64-gnu. npm has a bug related to optional dependencies (https://github.com/npm/cli/issues/4828). Please try `npm i` again after removing both package-lock.json and node_modules directory.
    at requireWithFriendlyError (/nix/store/dh3qisz023vmmhqxdr4hdcva0syjmc4i-woodpecker-ci-modules-2.1.1/node_modules/rollup/dist/native.js:64:9)
    at Object.<anonymous> (/nix/store/dh3qisz023vmmhqxdr4hdcva0syjmc4i-woodpecker-ci-modules-2.1.1/node_modules/rollup/dist/native.js:73:48)
    ... 3 lines matching cause stack trace ...
    at Module._load (node:internal/modules/cjs/loader:960:12)
    at ModuleWrap.<anonymous> (node:internal/modules/esm/translators:169:29)
    at ModuleJob.run (node:internal/modules/esm/module_job:194:25) {
  [cause]: Error: Cannot find module '@rollup/rollup-linux-x64-gnu'
  Require stack:
  - /nix/store/dh3qisz023vmmhqxdr4hdcva0syjmc4i-woodpecker-ci-modules-2.1.1/node_modules/rollup/dist/native.js
      at Module._resolveFilename (node:internal/modules/cjs/loader:1077:15)
      at 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 requireWithFriendlyError (/nix/store/dh3qisz023vmmhqxdr4hdcva0syjmc4i-woodpecker-ci-modules-2.1.1/node_modules/rollup/dist/native.js:62:10)
      at Object.<anonymous> (/nix/store/dh3qisz023vmmhqxdr4hdcva0syjmc4i-woodpecker-ci-modules-2.1.1/node_modules/rollup/dist/native.js:73:48)
      at Module._compile (node:internal/modules/cjs/loader:1256:14)
      at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
      at Module.load (node:internal/modules/cjs/loader:1119:32)
      at Module._load (node:internal/modules/cjs/loader:960:12) {
    code: 'MODULE_NOT_FOUND',
    requireStack: [
      '/nix/store/dh3qisz023vmmhqxdr4hdcva0syjmc4i-woodpecker-ci-modules-2.1.1/node_modules/rollup/dist/native.js'
    ]
  }
}

I can see that the package was actually downloaded. But it does not seem to present in the build step.

14:51:06
@lily:lily.flowersLily Fostercan you share the derivation?14:52:23
@kstiehl:matrix.numericas.de@kstiehl:matrix.numericas.dehttps://github.com/NixOS/nixpkgs/blob/23.11/pkgs/development/tools/continuous-integration/woodpecker/frontend.nix I am trying to update the woodpecker package. And it fails in the frontend derivation. 14:57:46

Show newer messages


Back to Room ListRoom Version: 6