Show HN: Safe-install – safer NPM installs with trusted build dependencies(npmjs.com)
npmjs.com
Show HN: Safe-install – safer NPM installs with trusted build dependencies
https://www.npmjs.com/package/@gkiely/safe-install
5 コメント
The solution already exists.
Nexus, Artifactory, and many others.
Security minded organisations don't allow cowboy installs into projects, the systems are configured to use internal repos and only IT validated packages got uploaded into them.
Still it might be of value to single devs.
Nexus, Artifactory, and many others.
Security minded organisations don't allow cowboy installs into projects, the systems are configured to use internal repos and only IT validated packages got uploaded into them.
Still it might be of value to single devs.
Yeah, this is just for anyone using node on their local machine.
Enabling `ignore-scripts=true` protects you from almost all of the recent compromises `min-release-age=3` protects you from the rest. But you still typically need trusted dependency builds, which this script solves.
I hope that npm enables this by default in the future.
Enabling `ignore-scripts=true` protects you from almost all of the recent compromises `min-release-age=3` protects you from the rest. But you still typically need trusted dependency builds, which this script solves.
I hope that npm enables this by default in the future.
but... why not just use pnpm? It's generally a straightforward migration.
It has dependency cooldowns, build scripts disabled by default, and the setting you mentioned.
It has dependency cooldowns, build scripts disabled by default, and the setting you mentioned.
The simplest reason might be that it's not the default so people use npm out of habit.
Personally, I use volta and switch between node versions in different projects, so I prefer to just use npm.
Personally, I use volta and switch between node versions in different projects, so I prefer to just use npm.
Yet again I'm asking folk to look at this artifact mirror that was Show HN a few months ago.
https://github.com/artifact-keeper
It's currently my favourite package gate keeper - after a few years of self-built jank
https://github.com/artifact-keeper
It's currently my favourite package gate keeper - after a few years of self-built jank
https://www.npmjs.com/package/@gkiely/safe-install
It brings a couple of protections I wanted from npm but are not built in.
Similar to Bun’s trusted dependencies, it lets you disable install scripts by default and define a list of dependencies that are allowed to run build/install scripts:
https://bun.com/docs/guides/install/trusted
It also supports blocking exotic sub-dependencies, similar to pnpm’s `blockExoticSubdeps` setting:
https://gajus.com/blog/3-pnpm-settings-to-protect-yourself-f...
I was hoping npm would eventually add something like this, but it does not seem to be happening soon, so I made a small package for it.