MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    electron-rebuild problems with MagicMirror 2.22.0

    Scheduled Pinned Locked Moved Solved Troubleshooting
    53 Posts 5 Posters 18.0k Views 6 Watching
    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.
    • KristjanESPERANTOK Offline
      KristjanESPERANTO Module Developer @sdetweil
      last edited by KristjanESPERANTO

      @sdetweil As a soft step, the broken modules could switch to @electron/rebuild. This should also work for docker.

      wishmaster270W S 2 Replies Last reply Reply Quote 0
      • wishmaster270W Offline
        wishmaster270 Module Developer @KristjanESPERANTO
        last edited by wishmaster270

        @KristjanESPERANTO

        I have a docker installation running for development here on my notebook.
        Everytime a module needs “npm install” I exec to the container and run the command in the container cause there will be called the correct npm and node version in the container and not the ones I currently use on my notebook.
        In this case the directory structure is the same as with a locally installed MagicMirror and the postinstall script will work as excepted.

        karsten13K 1 Reply Last reply Reply Quote 1
        • karsten13K Offline
          karsten13 @wishmaster270
          last edited by karsten13

          @wishmaster270 said in electron-rebuild problems with MagicMirror 2.22.0:

          and the postinstall script will work as excepted.

          yes, will work, but all the changes in the node_modules folder of mm are gone with the next restart of the container …

          wishmaster270W 1 Reply Last reply Reply Quote 0
          • wishmaster270W Offline
            wishmaster270 Module Developer @karsten13
            last edited by

            @karsten13
            In case of electron-rebuild this is no problem as it is only required during compile but not at runtime.

            karsten13K 1 Reply Last reply Reply Quote 0
            • karsten13K Offline
              karsten13 @wishmaster270
              last edited by

              @wishmaster270

              o.k., but where are the compile results stored?

              wishmaster270W 1 Reply Last reply Reply Quote 0
              • wishmaster270W Offline
                wishmaster270 Module Developer @karsten13
                last edited by wishmaster270

                @karsten13
                They are stored in the node_modules folder of the module which should be persistent

                Edit: Do not misunderstand me. In my opinion the best way to solve the electron-rebuild problems of a lot of modules would be to put “@electron/rebuild” as a dependency to “package.json” of MagicMirror.

                karsten13K 2 Replies Last reply Reply Quote 0
                • karsten13K Offline
                  karsten13 @wishmaster270
                  last edited by

                  @wishmaster270 said in electron-rebuild problems with MagicMirror 2.22.0:

                  @karsten13
                  They are stored in the node_modules folder of the module which should be persistent

                  thats good, so the construction with installing electron-rebuild in mm folder has no side effects and works also in a docker setup.

                  1 Reply Last reply Reply Quote 0
                  • karsten13K Offline
                    karsten13 @wishmaster270
                    last edited by

                    @wishmaster270 said in electron-rebuild problems with MagicMirror 2.22.0:

                    Edit: Do not misunderstand me. In my opinion the best way to solve the electron-rebuild problems of a lot of modules would be to put “@electron/rebuild” as a dependency to “package.json” of MagicMirror.

                    I don’t have a final opinion on that yet, but if so, we should put it under optionalDependencies as electron

                    wishmaster270W S 2 Replies Last reply Reply Quote 1
                    • wishmaster270W Offline
                      wishmaster270 Module Developer @karsten13
                      last edited by

                      @karsten13

                      You are right. I think optionalDependencies would be a great solution. Module developers could then add a hint to run npm ci in the MagicMirror directory to their installations instructions.

                      As the container it self is untouched it should be no problem. It only causes @electron/rebuild to be installed the next time the script is called.

                      S 1 Reply Last reply Reply Quote 0
                      • S Offline
                        sdetweil @KristjanESPERANTO
                        last edited by

                        @KristjanESPERANTO but if u look at electron/rebuild after install u call electron-rebuild

                        still has to be installed in the base node_modules folder…

                        older unmaintained modules are broken either way. why I had to fork MMM-Buttons.

                        Sam

                        How to add modules

                        learning how to use browser developers window for css changes

                        1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 4
                        • 5
                        • 6
                        • 5 / 6
                        • First post
                          Last post
                        Enjoying MagicMirror? Please consider a donation!
                        MagicMirror created by Michael Teeuw.
                        Forum managed by Sam, technical setup by Karsten.
                        This forum is using NodeBB as its core | Contributors
                        Contact | Privacy Policy