Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    npm run serve error:0308010C

    Scheduled Pinned Locked Moved Solved
    Plugins for DWC and DSF
    2
    4
    1.4k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • MintyTreborundefined
      MintyTrebor
      last edited by MintyTrebor

      @chrishamm - I'm setting up a new DWC dev environment on Fedora 36, but I cannot get npm serve to run. I have tried multiple node.js versions, and clean installs (including re-installing OS), but every time I get:

      > duetwebcontrol@3.4.0 serve
      > vue-cli-service serve
      
       INFO  Starting development server...
      10% building 2/5 modules 3 active ...3.4.0/node_modules/eslint-loader/index.js??ref--14-0!/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/src/main.jsError: 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 (/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/webpack/lib/util/createHash.js:135:53)
          at NormalModule._initBuildHash (/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/webpack/lib/NormalModule.js:417:16)
          at handleParseError (/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/webpack/lib/NormalModule.js:471:10)
          at /home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/webpack/lib/NormalModule.js:503:5
          at /home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/webpack/lib/NormalModule.js:358:12
          at /home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/loader-runner/lib/LoaderRunner.js:373:3
          at iterateNormalLoaders (/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/loader-runner/lib/LoaderRunner.js:214:10)
          at iterateNormalLoaders (/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/loader-runner/lib/LoaderRunner.js:221:10)
          at /home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/loader-runner/lib/LoaderRunner.js:236:3
          at runSyncOrAsync (/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/loader-runner/lib/LoaderRunner.js:130:11)
          at iterateNormalLoaders (/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/loader-runner/lib/LoaderRunner.js:232:2)
          at Array.<anonymous> (/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/loader-runner/lib/LoaderRunner.js:205:4)
          at Storage.finished (/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:55:16)
          at /home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:91:9
      node:internal/crypto/hash:67
        this[kHandle] = new _Hash(algorithm, xofLen);
                        ^
      
      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 (/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/webpack/lib/util/createHash.js:135:53)
          at NormalModule._initBuildHash (/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/webpack/lib/NormalModule.js:417:16)
          at handleParseError (/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/webpack/lib/NormalModule.js:471:10)
          at /home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/webpack/lib/NormalModule.js:503:5
          at /home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/webpack/lib/NormalModule.js:358:12
          at /home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/loader-runner/lib/LoaderRunner.js:373:3
          at iterateNormalLoaders (/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/loader-runner/lib/LoaderRunner.js:214:10)
          at Array.<anonymous> (/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/loader-runner/lib/LoaderRunner.js:205:4)
          at Storage.finished (/home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:55:16)
          at /home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:91:9
          at /home/minty/Development/Duet/BtnCmd/DuetWebControl-3.4.0/node_modules/graceful-fs/graceful-fs.js:123: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'
      }
      
      

      I'm fairly sure this is environment related, and after some cursory research I can only find vauge references to key length / openSSL 3.0 being the culprit.

      Any Ideas?

      NodeDSF - Native Node-Red integration with Duet boards.
      BtnCmd - Customise DWC with user defined buttons/layouts/panels (DWC Plugin)
      ReleaseMgr - Duet update info inside DWC.
      Repo

      jay_s_ukundefined 1 Reply Last reply Reply Quote 0
      • jay_s_ukundefined
        jay_s_uk @MintyTrebor
        last edited by

        @mintytrebor i take it you've ran npm install first?

        Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

        MintyTreborundefined 1 Reply Last reply Reply Quote 0
        • MintyTreborundefined
          MintyTrebor @jay_s_uk
          last edited by

          @jay_s_uk Yes

          NodeDSF - Native Node-Red integration with Duet boards.
          BtnCmd - Customise DWC with user defined buttons/layouts/panels (DWC Plugin)
          ReleaseMgr - Duet update info inside DWC.
          Repo

          1 Reply Last reply Reply Quote 1
          • MintyTreborundefined
            MintyTrebor
            last edited by MintyTrebor

            OK. Figured it out... It is indeed down to OpenSSL 3.0 - Posting resolution in case anyone else comes accross this issue:

            Edit the openssl.cnf file and enable the legacy provider options. eg:

            # Uncomment the sections that start with ## below to enable the legacy provider.
            # Loading the legacy provider enables support for the following algorithms:
            # Hashing Algorithms / Message Digests: MD2, MD4, MDC2, WHIRLPOOL, RIPEMD160
            # Symmetric Ciphers: Blowfish, CAST, DES, IDEA, RC2, RC4,RC5, SEED
            # Key Derivation Function (KDF): PBKDF1
            # In general it is not recommended to use the above mentioned algorithms for
            # security critical operations, as they are cryptographically weak or vulnerable
            # to side-channel attacks and as such have been deprecated.
            
            [provider_sect]
            default = default_sect
            legacy = legacy_sect
            
            [default_sect]
            activate = 1
            
            [legacy_sect]
            activate = 1
            

            Save and reboot.
            npm run serve should now work

            Note: On Fedora 36 openssl.cnf file is located in /etc/pki/tls - it may vary per distro.

            NodeDSF - Native Node-Red integration with Duet boards.
            BtnCmd - Customise DWC with user defined buttons/layouts/panels (DWC Plugin)
            ReleaseMgr - Duet update info inside DWC.
            Repo

            1 Reply Last reply Reply Quote 2
            • MintyTreborundefined MintyTrebor marked this topic as a question
            • MintyTreborundefined MintyTrebor has marked this topic as solved
            • First post
              Last post
            Unless otherwise noted, all forum content is licensed under CC-BY-SA