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.

    Storing variables to be ignored by git in a js file?

    Scheduled Pinned Locked Moved Solved Troubleshooting
    14 Posts 4 Posters 4.2k Views 5 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 @TimOgden
      last edited by sdetweil

      @timogden no straight forward way to do that.

      you can write a script to merge your two property files into THE config.js and then launch mm

      put the script in front of the npm start in installers/mm sh

      which is used by pm2 to launch mm

      as u noted, import doesn’t work. config.js is loaded into the browser which doesn’t support require or import

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      T 2 Replies Last reply Reply Quote 1
      • T Offline
        TimOgden @sdetweil
        last edited by

        @sdetweil Could I import a json file into the config.js file instead? Would that be more straightforward?

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

          @timogden no…

          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 @TimOgden
            last edited by sdetweil

            @timogden

            but u can write a quick bash script that can read the variables and replacements from a file and use sed (stream editor) to apply them

            https://unix.stackexchange.com/questions/268640/make-multiple-edits-with-a-single-call-to-sed

            use a config.model.js which is the one with the funky names to change,
            cp that to config.js
            loop thru the var list to make the command line, then run it

            and exit
            then launch mm

            Sam

            How to add modules

            learning how to use browser developers window for css changes

            T 1 Reply Last reply Reply Quote 1
            • T Offline
              TimOgden @sdetweil
              last edited by

              @sdetweil okay, thanks a lot for the reference material. I’ll work on that and post my solution when I finish. Thanks!

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

                @timogden u can look at some of my scripts which get a list from a command then loop

                see… restore which reads a file of module urls

                https://github.com/sdetweil/MagicMirror-backup-restore

                Sam

                How to add modules

                learning how to use browser developers window for css changes

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

                  @timogden

                  you could use envsubst < config/config.js.template > config/config.js.

                  The config.js.template is the config for both which contains variables for the different values. So you could write a script which sets the variables for user1 and then run envsubst for config1 and the same for user2/config2 afterwards.

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

                    @karsten13 same as I suggested different tool

                    but envsubst needs it’s values in the environment variables… so another hidden thing (to me)

                    Sam

                    How to add modules

                    learning how to use browser developers window for css changes

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

                      @sdetweil

                      only wanted to post this variant …

                      As background: This is a feature of my docker container where you can use a config.js.template and the variables are defined in the docker-compose.yml which starts the container and before starting mm I run envsubst to make the real config.js.

                      1 Reply Last reply Reply Quote 1
                      • CFennerC Offline
                        CFenner @TimOgden
                        last edited by

                        @timogden I’ve created a module to extract the config so you don’t need to maintain your own whole MM fork: https://forum.magicmirror.builders/topic/16224/mmm-personalconfig-persist-personal-config-to-github/1

                        A way to achieve what you want could be to create your own copy of personal config with your mirror config. Then make a clone of if for your friend where you do the specific changes. Changes to your repo then can be pulled to the other one via Pull requests.
                        In combination with MMM-UpdateNotification with can pull updates automatically, your friend won’t need to do anything.

                        1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 1 / 2
                        • 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