The nodejs and npm in EL7 is too old, so I borrowed the to latest nodejs spec from rawhide. Long story short, the result is at:
Please read the disclaimer and do follow the installation instruction if you choose to proceed. I don’t usually put the disclaimer like that but you need to know that:
- The build dependency of nodejs include openssl-1.0.2, but EL7 only shipped with 1.0.1, yet nodejs can run with openssl-1.0.1.
- openssl-libs is an important package, without it, yum, curl and rpm URL install won’t work, so restore it is a bit tricky. The instruction is, however, written in the copr page.
To build this copr, following dependencies need to go in as well:
libuv is piece of cake. But crypto-policies and openssl bring the worst packager nightmare: circular dependency. After F23, crypto-policies require openssl-devel to build, yet openssl require crypto-policies to run.
I eventually dug out crypto-policies from F21 and built it, thus broke the circular dependency and finished the build.