sr33 / ares

Social Media Nuker
GNU General Public License v3.0
98 stars 21 forks source link

Can't build with new Node.js: digital envelope routines::initialization error #34

Open YamiOdymel opened 1 year ago

YamiOdymel commented 1 year ago
yamiodymel@DESKTOP:/mnt/c/Users/yamiodymel/Downloads/ares-master$ npm run build

> ares@2.3.2 build
> webpack --openssl-legacy-provider

/mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/loader-runner/lib/LoaderRunner.js:133
                if(isError) throw e;
                            ^

Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:67:19)
    at Object.createHash (node:crypto:130:10)
    at module.exports (/mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/webpack/lib/util/createHash.js:90:53)
    at NormalModule._initBuildHash (/mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/webpack/lib/NormalModule.js:402:16)   
    at handleParseError (/mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/webpack/lib/NormalModule.js:450:10)
    at /mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/webpack/lib/NormalModule.js:482:5
    at /mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/webpack/lib/NormalModule.js:343:12
    at /mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/loader-runner/lib/LoaderRunner.js:373:3
    at iterateNormalLoaders (/mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/loader-runner/lib/LoaderRunner.js:214:10)    
    at iterateNormalLoaders (/mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/loader-runner/lib/LoaderRunner.js:221:10)    
    at /mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/loader-runner/lib/LoaderRunner.js:236:3
    at context.callback (/mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/loader-runner/lib/LoaderRunner.js:111:13)        
    at makeSourceMapAndFinish (/mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/ts-loader/dist/index.js:88:5)
    at successLoader (/mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/ts-loader/dist/index.js:68:9)
    at Object.loader (/mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/ts-loader/dist/index.js:22:12)
    at LOADER_EXECUTION (/mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/loader-runner/lib/LoaderRunner.js:119:14)        
    at runSyncOrAsync (/mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/loader-runner/lib/LoaderRunner.js:120:4)
    at iterateNormalLoaders (/mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/loader-runner/lib/LoaderRunner.js:232:2)     
    at Array.<anonymous> (/mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/loader-runner/lib/LoaderRunner.js:205:4)        
    at Storage.finished (/mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:43:16)
    at /mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:79:9
    at /mnt/c/Users/yamiodymel/Downloads/ares-master/node_modules/graceful-fs/graceful-fs.js:90:16
    at FSReqCallback.readFileAfterClose [as oncomplete] (node:internal/fs/read_file_context:68:3) {
  opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
  library: 'digital envelope routines',
  reason: 'unsupported',
  code: 'ERR_OSSL_EVP_UNSUPPORTED'
}

The webpack is using old SSL protocol or whatever it is, can be temporarily fixed with

export NODE_OPTIONS=--openssl-legacy-provider

and run npm run build again.

related: https://github.com/webpack/webpack/issues/14532

Aridez commented 1 year ago

Not working in my case. I'm trying to build on windows with Node.js v18.12.1. Instead of export NODE_OPTIONS=--openssl-legacy-provider using set NODE_OPTIONS=--openssl-legacy-provider. The same error shows in my console.

Maybe this repo could add the latest builds in the releases section just to have access to a working version until any issues are worked out.

alt-Ash commented 1 year ago

If are run into this issue and cannot resolve it you can install nvm and user version 12 of node to build the project.

CodeAbuser commented 1 year ago

@alt-Ash's fix worked for me.