Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Replace npm2nix generated package set by a node2nix generated package… #18151

Closed
wants to merge 3 commits into from

Conversation

svanderburg
Copy link
Member

Motivation for this change

Another attempt: now a node2nix generated package set that tracks the master branch (future 16.09).

This PR is a preview -- when it is considered acceptable I will create a new node2nix release (version 1.0.1), regenerate and apply that change set upstream.

Things done
  • Tested using sandboxing
    (nix.useChroot on NixOS,
    or option build-use-chroot in nix.conf
    on non-NixOS)
  • Built on platform(s)
    • NixOS
    • OS X
    • Linux
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

… set

@svanderburg
Copy link
Member Author

I discovered that there are still a bunch of NPM packages that are manually constructed, such as:

  • azure-cli
  • wring
  • airfield
  • statsd
  • nixui
  • groovebasin
  • pump.io
  • shout

And one package having dependencies on NPM packages:

  • zed

I'm currently trying to migrate them.... IMO some of them can be automatically deployed by node2nix with some additional overrides.

Alternatively, I can leave the pkgs/top-level/node-packages* so that they don't break, and migrate these above listed packages to node2nix later...

@svanderburg
Copy link
Member Author

As a reminder: if you want to test the regeneration of the packages, you should install the development version of node2nix as it has not yet been officially released:

https://github.com/svanderburg/node2nix/tree/fetchgit_fix

deploy it as follows:

$ nix-env -f release.nix -iA package.x86_64-linux

@manveru
Copy link
Contributor

manveru commented Aug 31, 2016

Can confirm that the fetchgit_fix version of node2nix works for my git dependencies now. The rest seems good as usual.

@Ralith
Copy link
Contributor

Ralith commented Aug 31, 2016

@svanderburg Continuing previous discussion, my concern is for things like #17213 which are not development projects, but applications which it is desirable to have available in nixpkgs, as users may not be developers at all. This goes double for services, where packages need to be referenced from a NixOS module. As it stands, it looks like even with the new infrastructure that PR will continue to languish because nobody wants to grow nixpkgs that much just for one package...

@svanderburg
Copy link
Member Author

Closing because this has been integrated into master with a newly generated package set.

@svanderburg svanderburg closed this Sep 1, 2016
@abbradar
Copy link
Member

abbradar commented Sep 1, 2016

I failed to add package parsoid, needed for services.parsoid on NixOS. Specifically, I've succeeded at adding the package to set but it won't build for me:

npm ERR! git clone --template=/tmp/nix-build-node-parsoid-0.5.2.drv-0/.npm/_git-remotes/_templates --mirror https://github.com/tstarling/pegjs.git /tmp/nix-build-node-parsoid-0.5.2.drv-0/.npm/_git-remotes/https-github-com-tstarling-pegjs-git-d153f2a9: undefined
npm ERR! git clone --template=/tmp/nix-build-node-parsoid-0.5.2.drv-0/.npm/_git-remotes/_templates --mirror https://github.com/tstarling/pegjs.git /tmp/nix-build-node-parsoid-0.5.2.drv-0/.npm/_git-remotes/https-github-com-tstarling-pegjs-git-d153f2a9: undefined
npm ERR! fetch failed https://registry.npmjs.org/finalhandler/-/finalhandler-0.4.0.tgz
npm WARN retry will retry, error on last attempt: Error: getaddrinfo ENOTFOUND registry.npmjs.org registry.npmjs.org:443
npm ERR! fetch failed https://registry.npmjs.org/gelf-stream/-/gelf-stream-0.2.4.tg
...
npm ERR! fetch failed https://registry.npmjs.org/diff/-/diff-1.0.7.tgz
npm ERR! fetch failed https://registry.npmjs.org/domino/-/domino-1.0.21.tgz
npm ERR! Linux 4.7.2
npm ERR! argv "/nix/store/j9ikir69s9ilwbspwvbxvr63153wjdin-nodejs-4.4.6/bin/node" "/nix/store/j9ikir69s9ilwbspwvbxvr63153wjdin-nodejs-4.4.6/bin/npm" "--registry" "http://www.example.com" "--nodedir=/nix/store/hg59fk58v19n1wdbldmwf4akmcfpmr5p-node-sources" "--production" "install"
npm ERR! node v4.4.6
npm ERR! npm  v2.15.5
npm ERR! code ENOGIT

npm ERR! not found: git
npm ERR! 
npm ERR! Failed using git.
npm ERR! This is most likely not a problem with npm itself.
npm ERR! Please check if you have git installed and in your PATH.

npm ERR! Please include the following file with any support request:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants