Hi Jelle,

I tried to import jquery with the last version of your code

This is the resulting expression (they are a lot, this is just one)

(define-public node-jquery
  (package
    (name "node-jquery")
    (version "3.1.0")
    (source
      (origin
        (method url-fetch)
        (uri "https://github.com/jquery/jquery/archive/3.1.0/jquery-3.1.0.tar.gz")
        (sha256
          (base32
            "05jcaa0xg041hpq3xdswf45jbkm6shvinjm3scawwjqqlrc39xca"))))
    (build-system node-build-system)
    (propagated-inputs `())
    (native-inputs `())
    (synopsis
      "JavaScript library for DOM operations")
    (description
      "JavaScript library for DOM operations")
    (home-page "https://jquery.com")
    (license expat)))


As you can see, there are no native-inputs

I understand that dev-dependencies (as on line 467) is used by make-npm-sexp to populate native-inputs, so in the terminal I inspected dev-dependencies  expecting to find it empty and I was wrong, it was correctly populated

Like this

("node-native-promise-only"
 "node-insight"
 "node-strip-json-comments"
 "node-cross-spawn"
 "node-q"
 "node-grunt-git-authors"
 "node-grunt-contrib-watch"
 "node-eslint-config-jquery"
 "node-husky"
 "node-load-grunt-tasks"
 "node-qunitjs"
 "node-sinon"
 "node-commitplease"
 "node-grunt-eslint"
 "node-sizzle"
 "node-grunt-babel"
 "node-jsdom"
 "node-babel-preset-es2015"
 "node-grunt-npmcopy"
 "node-grunt-contrib-uglify"
 "node-gzip-js"
 "node-qunit-assert-step"
 "node-requirejs"
 "node-grunt"
 "node-promises-aplus-tests"
 "node-grunt-compare-size"
 "node-grunt-jsonlint"
 "node-testswarm"
 "node-core-js"
 "node-grunt-cli"
 "node-grunt-newer")

So now I can't explain why native-inputs is empty.

Maybe I should run this a few times to ensure that the result is always the same

But this could be worth your attention.