ExpressLRS / ExpressLRS-Configurator

Cross platform configuration & build tool for the ExpressLRS radio link
GNU General Public License v3.0
589 stars 129 forks source link

Yarn run failure: `error:0308010C:digital envelope routines::unsupported` #505

Closed benjinne closed 1 year ago

benjinne commented 1 year ago

This is my first attempt to run the configurator from source since I'd like to add a target and test the configurator before opening a MR.

Expected Behavior

Attempts to run yarn start:renderer keep failing with the error: error:0308010C:digital envelope routines::unsupported

Current Behavior

Output ``` yarn start:renderer yarn run v1.22.19 $ cross-env NODE_ENV=development webpack serve --config ./.erb/configs/webpack.config.renderer.dev.babel.js Starting Main Process... (node:180295) [DEP_WEBPACK_DEV_SERVER_ON_BEFORE_SETUP_MIDDLEWARE] DeprecationWarning: 'onBeforeSetupMiddleware' option is deprecated. Please use the 'setupMiddlewares' option. (Use `node --trace-deprecation ...` to show where the warning was created) [webpack-dev-server] Project is running at: [webpack-dev-server] Loopback: http://localhost:1212/ [webpack-dev-server] On Your Network (IPv4): http://172.16.18.238:1212/ [webpack-dev-server] Content not from webpack is served from '/home/ben/projects/ExpressLRS-Configurator/.erb/configs/dist' directory [webpack-dev-server] 404s will fallback to '/index.html' > start:main > cross-env NODE_ENV=development electron -r ./.erb/scripts/BabelRegister ./src/main.dev.ts { context: { PATH: '/home/ben/projects/ExpressLRS-Configurator/node_modules/.bin:/home/ben/projects/node_modules/.bin:/home/ben/node_modules/.bin:/home/node_modules/.bin:/node_modules/.bin:/usr/lib/node_modules/npm/node_modules/@npmcli/run-script/lib/node-gyp-bin:/tmp/yarn--1684344074657-0.2527571679789733:/home/ben/projects/ExpressLRS-Configurator/node_modules/.bin:/home/ben/.config/yarn/link/node_modules/.bin:/home/ben/.yarn/bin:/usr/libexec/lib/node_modules/npm/bin/node-gyp-bin:/usr/lib/node_modules/npm/bin/node-gyp-bin:/usr/bin/node_modules/npm/bin/node-gyp-bin:~/.local/xPacks/@xpack-dev-tools/openocd/0.11.0-1.1/.content/bin:/opt/gcc-arm-none-eabi-10.3-2021.10/bin:/home/ben/.local/bin:/home/ben/.sdkman/candidates/gradle/current/bin:/opt/ros/humble/bin:~/.local/xPacks/@xpack-dev-tools/openocd/0.11.0-1.1/.content/bin:/opt/gcc-arm-none-eabi-10.3-2021.10/bin:/home/ben/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/ben/.dotnet/tools:/home/ben/.dotnet/tools' }, level: 'info', message: 'path' } (node:180336) ExtensionLoadWarning: Warnings loading extension at /home/ben/.config/Electron/extensions/fmkadmapgofadopljbjfkapdkoienihi: Permission 'scripting' is unknown or URL pattern is malformed. (Use `electron --trace-warnings ...` to show where the warning was created) { context: undefined, level: 'info', message: 'trying to get port' } { context: { port: 3500 }, level: 'info', message: 'received unused port' } { context: undefined, level: 'info', message: 'starting server...' } { context: { PATH: '/home/ben/projects/ExpressLRS-Configurator/node_modules/.bin:/home/ben/projects/node_modules/.bin:/home/ben/node_modules/.bin:/home/node_modules/.bin:/node_modules/.bin:/usr/lib/node_modules/npm/node_modules/@npmcli/run-script/lib/node-gyp-bin:/tmp/yarn--1684344074657-0.2527571679789733:/home/ben/projects/ExpressLRS-Configurator/node_modules/.bin:/home/ben/.config/yarn/link/node_modules/.bin:/home/ben/.yarn/bin:/usr/libexec/lib/node_modules/npm/bin/node-gyp-bin:/usr/lib/node_modules/npm/bin/node-gyp-bin:/usr/bin/node_modules/npm/bin/node-gyp-bin:~/.local/xPacks/@xpack-dev-tools/openocd/0.11.0-1.1/.content/bin:/opt/gcc-arm-none-eabi-10.3-2021.10/bin:/home/ben/.local/bin:/home/ben/.sdkman/candidates/gradle/current/bin:/opt/ros/humble/bin:~/.local/xPacks/@xpack-dev-tools/openocd/0.11.0-1.1/.content/bin:/opt/gcc-arm-none-eabi-10.3-2021.10/bin:/home/ben/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/ben/.dotnet/tools:/home/ben/.dotnet/tools' }, level: 'info', message: 'local api server PATH' } { context: undefined, level: 'info', message: 'server started' } [180336:0517/132117.033053:ERROR:extensions_browser_client.cc(61)] Extension Error: OTR: false Level: 2 Source: chrome-extension://eahdijgejjhbdpglmanbbamhkeejoakf/build/background.js Message: Uncaught TypeError: chrome.tabs.query is not a function ID: eahdijgejjhbdpglmanbbamhkeejoakf Type: RuntimeError Context: chrome-extension://eahdijgejjhbdpglmanbbamhkeejoakf/build/background.js Stack Trace: { Line: 256 Column: 1 URL: chrome-extension://eahdijgejjhbdpglmanbbamhkeejoakf/build/background.js Function: (anonymous function) } [180336:0517/132117.033441:ERROR:extensions_browser_client.cc(61)] Extension Error: OTR: false Level: 1 Source: manifest.json Message: Service worker registration failed ID: eahdijgejjhbdpglmanbbamhkeejoakf Type: ManifestError [180336:0517/132117.034102:ERROR:extensions_browser_client.cc(61)] Extension Error: OTR: false Level: 2 Source: chrome-extension://eahdijgejjhbdpglmanbbamhkeejoakf/build/background.js Message: Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'ExecutionWorld') ID: eahdijgejjhbdpglmanbbamhkeejoakf Type: RuntimeError Context: chrome-extension://eahdijgejjhbdpglmanbbamhkeejoakf/build/background.js Stack Trace: { Line: 107 Column: 1 URL: chrome-extension://eahdijgejjhbdpglmanbbamhkeejoakf/build/background.js Function: (anonymous function) } [webpack-dev-middleware] wait until bundle finished: /dist/renderer.dev.js ERROR in ./assets/logotype.svg Module build failed (from ./node_modules/url-loader/dist/cjs.js): Error: error:0308010C:digital envelope routines::unsupported at new Hash (node:internal/crypto/hash:69:19) at Object.createHash (node:crypto:138:10) at getHashDigest (/home/ben/projects/ExpressLRS-Configurator/node_modules/loader-utils/lib/getHashDigest.js:46:34) at /home/ben/projects/ExpressLRS-Configurator/node_modules/loader-utils/lib/interpolateName.js:113:11 at String.replace () at interpolateName (/home/ben/projects/ExpressLRS-Configurator/node_modules/loader-utils/lib/interpolateName.js:110:8) at Object.loader (/home/ben/projects/ExpressLRS-Configurator/node_modules/file-loader/dist/index.js:29:48) at Object.loader (/home/ben/projects/ExpressLRS-Configurator/node_modules/url-loader/dist/index.js:127:19) @ ./src/ui/components/Header/index.tsx 13:0-59 96:9-21 @ ./src/ui/layouts/MainLayout/index.tsx 8:0-45 51:38-44 @ ./src/ui/views/SettingsView/index.tsx 10:0-50 13:42-52 @ ./src/ui/App.tsx 18:0-48 195:46-58 @ ./src/index.tsx 6:0-27 16:36-39 ERROR in ./node_modules/@fontsource/roboto/files/roboto-all-400-normal.woff Module build failed (from ./node_modules/url-loader/dist/cjs.js): Error: error:0308010C:digital envelope routines::unsupported at new Hash (node:internal/crypto/hash:69:19) at Object.createHash (node:crypto:138:10) at getHashDigest (/home/ben/projects/ExpressLRS-Configurator/node_modules/loader-utils/lib/getHashDigest.js:46:34) at /home/ben/projects/ExpressLRS-Configurator/node_modules/loader-utils/lib/interpolateName.js:113:11 at String.replace () at interpolateName (/home/ben/projects/ExpressLRS-Configurator/node_modules/loader-utils/lib/interpolateName.js:110:8) at Object.loader (/home/ben/projects/ExpressLRS-Configurator/node_modules/file-loader/dist/index.js:29:48) at Object.loader (/home/ben/projects/ExpressLRS-Configurator/node_modules/url-loader/dist/index.js:127:19) @ ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!./node_modules/@fontsource/roboto/index.css 6:36-98 @ ./node_modules/@fontsource/roboto/index.css 8:6-117 22:17-24 26:7-21 58:25-39 59:36-47 59:50-64 63:6-73:7 64:54-65 64:68-82 70:42-53 70:56-70 72:21-28 83:0-87 83:0-87 84:22-29 84:33-47 84:50-64 61:4-74:5 @ ./src/ui/App.tsx 12:0-28 @ ./src/index.tsx 6:0-27 16:36-39 ERROR in ./node_modules/@fontsource/roboto/files/roboto-cyrillic-ext-400-normal.woff2 Module build failed (from ./node_modules/url-loader/dist/cjs.js): Error: error:0308010C:digital envelope routines::unsupported at new Hash (node:internal/crypto/hash:69:19) at Object.createHash (node:crypto:138:10) at getHashDigest (/home/ben/projects/ExpressLRS-Configurator/node_modules/loader-utils/lib/getHashDigest.js:46:34) at /home/ben/projects/ExpressLRS-Configurator/node_modules/loader-utils/lib/interpolateName.js:113:11 at String.replace () at interpolateName (/home/ben/projects/ExpressLRS-Configurator/node_modules/loader-utils/lib/interpolateName.js:110:8) at Object.loader (/home/ben/projects/ExpressLRS-Configurator/node_modules/file-loader/dist/index.js:29:48) at Object.loader (/home/ben/projects/ExpressLRS-Configurator/node_modules/url-loader/dist/index.js:127:19) @ ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!./node_modules/@fontsource/roboto/index.css 5:36-108 @ ./node_modules/@fontsource/roboto/index.css 8:6-117 22:17-24 26:7-21 58:25-39 59:36-47 59:50-64 63:6-73:7 64:54-65 64:68-82 70:42-53 70:56-70 72:21-28 83:0-87 83:0-87 84:22-29 84:33-47 84:50-64 61:4-74:5 @ ./src/ui/App.tsx 12:0-28 @ ./src/index.tsx 6:0-27 16:36-39 ERROR in ./node_modules/@fontsource/roboto/files/roboto-latin-ext-400-normal.woff2 Module build failed (from ./node_modules/url-loader/dist/cjs.js): Error: error:0308010C:digital envelope routines::unsupported at new Hash (node:internal/crypto/hash:69:19) at Object.createHash (node:crypto:138:10) at getHashDigest (/home/ben/projects/ExpressLRS-Configurator/node_modules/loader-utils/lib/getHashDigest.js:46:34) at /home/ben/projects/ExpressLRS-Configurator/node_modules/loader-utils/lib/interpolateName.js:113:11 at String.replace () at interpolateName (/home/ben/projects/ExpressLRS-Configurator/node_modules/loader-utils/lib/interpolateName.js:110:8) at Object.loader (/home/ben/projects/ExpressLRS-Configurator/node_modules/file-loader/dist/index.js:29:48) at Object.loader (/home/ben/projects/ExpressLRS-Configurator/node_modules/url-loader/dist/index.js:127:19) @ ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!./node_modules/@fontsource/roboto/index.css 11:36-105 @ ./node_modules/@fontsource/roboto/index.css 8:6-117 22:17-24 26:7-21 58:25-39 59:36-47 59:50-64 63:6-73:7 64:54-65 64:68-82 70:42-53 70:56-70 72:21-28 83:0-87 83:0-87 84:22-29 84:33-47 84:50-64 61:4-74:5 @ ./src/ui/App.tsx 12:0-28 @ ./src/index.tsx 6:0-27 16:36-39 ERROR in ./node_modules/@fontsource/roboto/files/roboto-latin-400-normal.woff2 Module build failed (from ./node_modules/url-loader/dist/cjs.js): Error: error:0308010C:digital envelope routines::unsupported at new Hash (node:internal/crypto/hash:69:19) at Object.createHash (node:crypto:138:10) at getHashDigest (/home/ben/projects/ExpressLRS-Configurator/node_modules/loader-utils/lib/getHashDigest.js:46:34) at /home/ben/projects/ExpressLRS-Configurator/node_modules/loader-utils/lib/interpolateName.js:113:11 at String.replace () at interpolateName (/home/ben/projects/ExpressLRS-Configurator/node_modules/loader-utils/lib/interpolateName.js:110:8) at Object.loader (/home/ben/projects/ExpressLRS-Configurator/node_modules/file-loader/dist/index.js:29:48) at Object.loader (/home/ben/projects/ExpressLRS-Configurator/node_modules/url-loader/dist/index.js:127:19) @ ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!./node_modules/@fontsource/roboto/index.css 12:36-101 @ ./node_modules/@fontsource/roboto/index.css 8:6-117 22:17-24 26:7-21 58:25-39 59:36-47 59:50-64 63:6-73:7 64:54-65 64:68-82 70:42-53 70:56-70 72:21-28 83:0-87 83:0-87 84:22-29 84:33-47 84:50-64 61:4-74:5 @ ./src/ui/App.tsx 12:0-28 @ ./src/index.tsx 6:0-27 16:36-39 webpack compiled with 5 errors Not rewriting GET /dist/renderer.dev.js because the path includes a dot (.) character. ^C [webpack-dev-server] Gracefully shutting down. To force exit, press ^C again. Please wait... ```

Steps to Reproduce

Running ubuntu 22.04 install nodejs then yarn and I can't get the gui to display using yarn

Possible Solution (Not obligatory)

Seems like a common issue for other projects: https://stackoverflow.com/questions/69692842/error-message-error0308010cdigital-envelope-routinesunsupported

I tried the solutions in that stackoverflow but can't manage to fix the issue

Your Environment

  • Operating System and version: ubuntu 22.04, main and v1.5.9
benjinne commented 1 year ago

Downgrading node from 17 to 16 seems to help: https://stackoverflow.com/a/70253732/8233744

sudo npm install -g n
sudo n 16
node -v
jurgelenas commented 1 year ago

Downgrading node from 17 to 16 seems to help: https://stackoverflow.com/a/70253732/8233744

sudo npm install -g n
sudo n 16
node -v

Yes, Node.js 17 is not supported yet. Also we are planning to upgrade to the next LTS version.