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.

    How to upgrade a Linux "server" with minimal modules?

    Scheduled Pinned Locked Moved General Discussion
    12 Posts 2 Posters 14 Views 2 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.
    • S Do not disturb
      sdetweil @ember1205
      last edited by sdetweil

      @ember1205 by default, install puts down all the code, with three different start options

      // server only - probably what you have now
      npm run server

      // npm start, npm run start , npm run start:x11, npm run start:wayland (last two in latest releases)
      // launch UI, thru embedded electron browser or browser on system thru my browser over server setup
      npm run start

      // or client
      npm run client

      the latest releases will need a new OS, and new JS, and a new …

      one thing you can use to move between environments, is my backup/restore scripts.
      https://github.com/sdetweil/MagicMirror-backup-restore

      which backup the config.js, custom.css (and any other files related)
      and the list of modules installed… NOT the BINARY

      this backup can be placed on github, so you don’t have to store it on the local machine
      storing with git, also allows you to keep track of changes/versions of your setup

      because it is NOT a binary, you can use it to transition to new SD cards, or new systems (pi->minipc…etc)
      backup here, restore there
      restore assumes MM is installed and runnable…

      as an example
      backup now, save to github (still free today)
      make new sd card,
      boot
      install MM
      then run restore to put saved config and modules on the new system

      you can run the backup/restore by copy/pasting the links and adding parms if need be (like push to repo, not default)

      in the meantime, you can just change the start command from run server to run start to start the MM ui on the same machine (needs a head of course)

      ps. you cannot upgrade ONE feature and not others… its all or nothing

      we ALWAYS start the server, and sometimes start the UI depending on the command used
      but the files are all one instance at the same version

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      E 1 Reply Last reply Reply Quote 0
      • S Do not disturb
        sdetweil @ember1205
        last edited by

        @ember1205 I recommend

        make a backup, store to github
        make a new SD card, latest OS
        install MM, verify it starts (full service, UI etc)
        run restore from github to restore your configuration and modules…
        restart and verify

        old system is untouched

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        1 Reply Last reply Reply Quote 0
        • E Offline
          ember1205 @sdetweil
          last edited by

          @sdetweil Thanks for the response.

          I’m familiar with the different options that come with a new install and would be ok with having to DO a new install if that’s the only way to get upgrades completed. I guess I’m wondering if there’s a simpler way to upgrade the one or two modules that I have and get the core MM upgraded as well without having to start from scratch with the configuration and such. This instance is server only (there’s nothing attached to any sort of output here, and I don’t even run MM as the client any more - it’s a linux shell with its own GUI, auto-starts firefox in kiosk mode, and the page is set to always launch the mirror address).

          I’m not even concerned with how to back everything up because my installation is actually fairly simple. And I’m not actually looking to change environments - I’ve already done that from a short while back. This is all entirely for the server side which is a linux guest running on a XCP-NG virtualization host.

          S 3 Replies Last reply Reply Quote 0
          • S Do not disturb
            sdetweil @ember1205
            last edited by sdetweil

            @ember1205 the difficulty is that the core has been kept up to date, and it requires new system parts that require new system parts…

            you MUST upgrade nodejs if not on node 22
            upgrading on older systems fails, the next node upgrade, 24 or above, drops support for 32bit systems completely… we are holding off as long as we can… but the clock is ticking…

            my install and upgrade scripts enforce the systems path… if they fail now, there is no manual way to get there from where you are… (without rebuild)

            and if you use my installer script, its a copy/paste… not a lot of work

            make the backup regardless

            Sam

            How to add modules

            learning how to use browser developers window for css changes

            1 Reply Last reply Reply Quote 0
            • S Do not disturb
              sdetweil @ember1205
              last edited by

              @ember1205 you can attempt to upgrade modules…

              each is separate

              cd module_folder
              git pull
              if successful, npm install

              restart mm… to load the new modules…

              only a few have latest as dependencies… which would force all the above work

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              1 Reply Last reply Reply Quote 0
              • S Do not disturb
                sdetweil @ember1205
                last edited by sdetweil

                @ember1205 upgrade of the core code is

                cd  MagicMirror_folder
                git pull
                npm install
                

                if it will run… needs at least node 22.22.1

                let me know how I can help

                you can fall back to a prior version by switching to one of the earlier releases, thru the git tag we created.
                if you try the upgrade (manual) and it fails and want to try this, let me know i’ll provide the commands needed

                Sam

                How to add modules

                learning how to use browser developers window for css changes

                E 1 Reply Last reply Reply Quote 0
                • E Offline
                  ember1205 @sdetweil
                  last edited by

                  @sdetweil I am running (currently) on opensuse Leap 15.6. I will be updating in the not-too-distant future to Leap 16.0.

                  In looking at the installed packages, Node.js lists “22.22.0” as the package but “22.15.1” as the installed version. So…

                  zypper ref ; zypper up
                  

                  Let it install all of the pertinent updates… Reboot (new kernel was part of the updates)… Everything is back online. Checking the installed software list now shows Node.js as “22.22.0”.

                  Leap 16.0 will allow me to go to Node.js 24, but that would be an undertaking for later today or later this week (depending on what time I might have elsewhere).

                  Updating the modules went fine (overall). This is what a git pull in the main MM directory shows me:

                  From https://github.com/MichMich/MagicMirror
                     3dbe8bfbb..fb41d24ef  master     -> origin/master
                     ec80b2508..e747db16d  develop    -> origin/develop
                   * [new tag]             v2.1.3     -> v2.1.3
                   * [new tag]             v2.14.0    -> v2.14.0
                   * [new tag]             v2.15.0    -> v2.15.0
                   * [new tag]             v2.16.0    -> v2.16.0
                   * [new tag]             v2.17.0    -> v2.17.0
                   * [new tag]             v2.17.1    -> v2.17.1
                   * [new tag]             v2.18.0    -> v2.18.0
                   * [new tag]             v2.19.0    -> v2.19.0
                   * [new tag]             v2.2.1     -> v2.2.1
                   * [new tag]             v2.20.0    -> v2.20.0
                   * [new tag]             v2.21.0    -> v2.21.0
                   * [new tag]             v2.22.0    -> v2.22.0
                   * [new tag]             v2.23.0    -> v2.23.0
                   * [new tag]             v2.24.0    -> v2.24.0
                   * [new tag]             v2.25.0    -> v2.25.0
                   * [new tag]             v2.26.0    -> v2.26.0
                   * [new tag]             v2.27.0    -> v2.27.0
                   * [new tag]             v2.28.0    -> v2.28.0
                   * [new tag]             v2.29.0    -> v2.29.0
                   * [new tag]             v2.30.0    -> v2.30.0
                   * [new tag]             v2.31.0    -> v2.31.0
                   * [new tag]             v2.32.0    -> v2.32.0
                   * [new tag]             v2.33.0    -> v2.33.0
                   * [new tag]             v2.34.0    -> v2.34.0
                   * [new tag]             v2.35.0    -> v2.35.0
                   * [new tag]             v2.36.0    -> v2.36.0
                  Updating 3dbe8bfbb..fb41d24ef
                  error: Your local changes to the following files would be overwritten by merge:
                          package-lock.json
                          package.json
                  Please commit your changes or stash them before you merge.
                  Aborting
                  
                  
                  E S 2 Replies Last reply Reply Quote 0
                  • E Offline
                    ember1205 @ember1205
                    last edited by

                    Update…

                    Updating the modules crashes the server. So, I’m going to have to get the main server updated… I had to revert to a prior snapshot to get the MM server running again.

                    1 Reply Last reply Reply Quote 0
                    • S Do not disturb
                      sdetweil @ember1205
                      last edited by

                      @ember1205 said:

                      package-lock.json
                      package.json

                      erase those and git pull again

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      E 1 Reply Last reply Reply Quote 0
                      • E Offline
                        ember1205 @sdetweil
                        last edited by

                        @sdetweil I’ll have to try again a little later today maybe… I had to revert the snapshot (removing the module updates) to get it running again.

                        S 1 Reply Last reply Reply Quote 0
                        • S Do not disturb
                          sdetweil @ember1205
                          last edited by

                          @ember1205 understand… please advise your results when you can

                          Sam

                          How to add modules

                          learning how to use browser developers window for css changes

                          1 Reply Last reply Reply Quote 0

                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                          With your input, this post could be even better 💗

                          Register Login
                          • 1 / 1
                          • 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