I agree with all of mjo's points below. Nodejs is so bad that I don't think its worth investing your effort into it. There is really very little hope of fixing their crap. This is a case of its not you, its them.
But if you do manage to get some sanity into this craziness I might just try nodejs someday <3 Best of luck, Aisha On 1/31/21 7:20 PM, Michael Orlitzky wrote: > On Sun, 2021-01-31 at 18:42 -0500, Andrew Udvare wrote: >> >> Our best option is to treat Nodejs stuff the way we treat Rust and Go >> packages. Pretend Nodejs 'binaries' are 'built' statically and >> therefore, grab all the dependencies in the main package ebuild. > > The only thing a package manager does for you is that it allows one > person (the Gentoo developer, in this case) to invest a little bit of > time to save everyone else (the Gentoo users) a lot of time. When > software has been packaged correctly, it integrates well with the rest > of the system, gets constant maintenance and security updates, and can > be managed from a central location in a consistent manner. > > "Packaging" software like you describe isn't packaging it in this > sense. When you bundle everything together, > > 1. Nothing is shared between packages so build time and disk > usage skyrockets. > > 2. The number of updates and thus the amount of work required > > also skyrockets, for the same reason: when nothing is shared, you > > have to update each package whenever a dependency of a dependency > > of a dependency... changes. > > 3. There are no security updates, ever. If you use anything written > in Rust or Go on Gentoo, or if you use anything that uses > anything written in Rust or Go, or..... it will NEVER get a > security update. No one even bothers looking for security > issues in these languages because the "find a bug then fix it" > algorithm is infeasible. > > 4. You do get to do updates with e.g. "emerge -puDN @world", but not > really, because no one is actually updating Gentoo packages every > time a dependency of a dependency changes. > > So ultimately, there's little benefit and it introduces security > vulnerabilities to our users who might be better off just using NPM or > whatever (or using software written in a sane language). > > >

