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.

    Modifying the Config File

    Scheduled Pinned Locked Moved Unsolved Troubleshooting
    101 Posts 7 Posters 140.7k Views 7 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.
    • J Offline
      jimb
      last edited by

      Sam, sorry to be so dense. You mention the ‘git clone’ command. Is that how ‘all’ your files are moved into the MagicMirror/Moddules directory? I’ll hunt around for the proper usage. It’s a little confusing using commands from the computer though. Please keep im mind this is all new to me, thanks

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

        @jimb please read this
        https://forum.magicmirror.builders/topic/4528/how-to-create-a-working-config-for-absolute-beginners

        I didn’t write it

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        1 Reply Last reply Reply Quote 0
        • J Offline
          jimb
          last edited by sdetweil

          Sam, I read your comments, thanks! I have git-cloned the files into the modules sub-directory. I modified the config.js to include the lines of code you listed. Somehow I’ve blown up the file. Running in dev mode it says “unexpected (:)” is in line 58. I’ve gone over the code and don’t see the issue. Here is my config file-

          /*
          * MagicMirror² Config Sample
           *
           * By Michael Teeuw https://michaelteeuw.nl
           * MIT Licensed.
           *
           * For more information on how you can configure this file
           * see https://docs.magicmirror.builders/configuration/introduction.html
           * and https://docs.magicmirror.builders/modules/configuration.html
           *
           * You can use environment variables using a `config.js.template` file instead of `config.js`
           * which will be converted to `config.js` while starting. For more information
           * see https://docs.magicmirror.builders/configuration/introduction.html#enviromnent-variables
           */
          let config = {
          	address: "localhost",	// Address to listen on, can be:
          							// - "localhost", "127.0.0.1", "::1" to listen on loopback interface
          							// - another specific IPv4/6 to listen on a specific interface
          							// - "0.0.0.0", "::" to listen on any interface
          							// Default, when address config is left out or empty, is "localhost"
          	port: 8080,
          	basePath: "/",			// The URL path where MagicMirror² is hosted. If you are using a Reverse proxy
          					  		// you must set the sub path here. basePath must end with a /
          	ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1"],	// Set [] to allow all IP addresses
          							// or add a specific IPv4 of 192.168.1.5 :
          							// ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.1.5"],
          							// or IPv4 range of 192.168.3.0 --> 192.168.3.15 use CIDR format :
          							// ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.3.0/28"],
          
          	useHttps: false, 	// Support HTTPS or not, default "false" will use HTTP
          	httpsPrivateKey: "", 	// HTTPS private key path, only require when useHttps is true
          	httpsCertificate: "", 	// HTTPS Certificate path, only require when useHttps is true
          
          	language: "en",
          	locale: "en-US",
          	logLevel: ["INFO", "LOG", "WARN", "ERROR"], // Add "DEBUG" for even more logging
          	timeFormat: 12,
          	units: "imperial",
          
          	modules: [
          		{
          			module: "alert",
          		},
          		{
          			module: "updatenotification",
          			position: "top_bar"
          		},
          		{
          			module: "MMM-Config",
          			position: "top_right",		//the QR code (if requested) will appear here
          			config:{
          		},
          			module: "clock",
          			timezone: "America/Chicago",
          			showPeriodUpper: "true",
          			showDate: "true",
          			position: "top_left",
          		},
          			module: "calendar",
          			header: "US Holidays",
          			position: "top_left",
          			config: {
          				calendars: [
          					{
          						fetchInterval: 7 * 24 * 60 * 60 * 1000,
          						symbol: "calendar-check",
          						url: "https://ics.calendarlabs.com/76/mm3137/US_Holidays.ics"
          					}
          				]
          			}
          		},
          		{
          			module: "compliments",
          			position: "lower_third"
          		},
          		{			
          			module: "weather",
          			units: "imperial",
          			windUnits: "imperial",
          			tempUnits: "imperial",
          			appendLocationNameToHeader: "true",
          			showPeriodUpper: "true",
          			colored: "true",
          			position: "top_right",
          			header: "Current Weather",
          			config: {
          				weatherProvider: "openweathermap",
          				lat: "29.763281",
          				lon: "-95.363274",
          				type: "current",
          				location: "Houston",
          				locationID: "4699066", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city
          				apiKey: "8eca2aec0c123ce212",
          			}
          		},
          		{
          			module: "weather",
          			units: "imperial",
          			winUnits: "imperial",
          			tempUnits: "imperial",
          			appendLocationNameToHeader: "true",
          			showPeriodUpper: "true",
          			colored: "true",
          			position: "top_right",
          			header: "Weather Forecast",
          			config: {
           				weatherProvider: "openweathermap",
          				lat: "29.763281",
           				lon:"-95.363274",	
           				type: "forecast",
               				location: "Houston",
          				locationID: "4699066", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city
          				apiKey: "8eca2aecb123ce212",
          			}
          		},
          		{
          			module: "newsfeed",
          			position: "bottom_bar",
          			config: {
          				feeds: [
          					{
          				title: "New York Times",
          					url: "https://rss.nytimes.com/services/xml/rss/nyt/HomePage.xml"
          					}
          				],
          				showSourceTitle: true,
          				showPublishDate: true,
          				broadcastNewsFeeds: true,
          				broadcastNewsUpdates: true
          			}
          		},
          	]
          };
          
          /*************** DO NOT EDIT THE LINE BELOW ***************/
          if (typeof module !== "undefined") {module.exports = config;}
          
          S 2 Replies Last reply Reply Quote 0
          • S Offline
            sdetweil @jimb
            last edited by

            @jimb you are still not using the code block , which makes this hard to read…

            Sam

            How to add modules

            learning how to use browser developers window for css changes

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

              @jimb said in Modifying the Config File:

                {
                	module: "MMM-Config",
                	position: "top_right",		//the QR code (if requested) will appear here
                	config:{
                },
              

              you obviously didn’t copy everything

              the syntax requires every { to have a matching }
              and every [ and matching ]
              and every " a matching "

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              1 Reply Last reply Reply Quote 0
              • J Offline
                jimb
                last edited by

                Sam, Guess who? I got the Config.js straightened out and MM was starting fine. This was with the MMM-Config text added to the file.

                The I attempted to follow the steps to add the module code to the module sub-folder.

                1. Clicked on the green button in your instructions and pasted the link into the terminal prefaced by ‘git clone’. It ‘cloned’ into the modules directory without errors.
                2. I ran ‘MPM install’ and it executed without errors
                3. From the terminal I started MM, by executing NPM Start.
                4. It started loading, but had errors then stopped.
                5. I was unable to copy text of the loading (w/errors) because the terminal times out.
                S 1 Reply Last reply Reply Quote 0
                • S Offline
                  sdetweil @jimb
                  last edited by sdetweil

                  @jimb

                  1. npm install, all lower case
                  2. in the mm folder?, all lower case
                  3. maybe a picture?
                  4. don’t understand this, what terminal window

                  mm will always start, even to put up a dumb message. ctrl-c to stop it

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  1 Reply Last reply Reply Quote 0
                  • J Offline
                    jimb
                    last edited by

                    Sam, I was able to grab the text from the terminal running on my computer- this was after starting MM

                    /home/rutspi/MagicMirror$ npm start

                    magicmirror@2.25.0 start
                    DISPLAY=“${DISPLAY:=:0}” ./node_modules/.bin/electron js/electron.js

                    [11.12.2023 19:08.13.289] [LOG] Starting MagicMirror: v2.25.0
                    [11.12.2023 19:08.13.298] [LOG] Loading config …
                    [11.12.2023 19:08.13.303] [DEBUG] config template file not exists, no envsubst
                    [11.12.2023 19:08.13.308] [LOG] Loading module helpers …
                    [11.12.2023 19:08.13.311] [LOG] No helper found for module: alert.
                    [11.12.2023 19:08.13.338] [LOG] Initializing new module helper …
                    [11.12.2023 19:08.13.339] [LOG] Module helper loaded: updatenotification
                    [11.12.2023 19:08.13.352] [ERROR] (node:1623) UnhandledPromiseRejectionWarning: Error: Cannot find module ‘deep-object-diff’
                    Require stack:

                    • /home/rutspi/MagicMirror/modules/MMM-Config/node_helper.js
                    • /home/rutspi/MagicMirror/js/app.js
                    • /home/rutspi/MagicMirror/js/electron.js
                    • /home/rutspi/MagicMirror/node_modules/electron/dist/resources/default_app.asar/main.js
                    • at node:internal/modules/cjs/loader:1084:15
                      at Function. (node:electron/js2c/browser_init:2:117576)
                      at Module._resolveFilename (/home/rutspi/MagicMirror/node_modules/module-alias/index.js:49:29)
                      at node:internal/modules/cjs/loader:929:27
                      at Function._load (node:electron/js2c/asar_bundle:2:13327)
                      at Module.require (node:internal/modules/cjs/loader:1150:19)
                      at require (node:internal/modules/cjs/helpers:110:18)
                      at Object. (/home/rutspi/MagicMirror/modules/MMM-Config/node_helper.js:10:14)
                      at Module._compile (node:internal/modules/cjs/loader:1271:14)
                      at Object…js (node:internal/modules/cjs/loader:1326:10)
                      at Module.load (node:internal/modules/cjs/loader:1126:32)
                      at node:internal/modules/cjs/loader:967:12
                      at Function._load (node:electron/js2c/asar_bundle:2:13327)
                      at Module.require (node:internal/modules/cjs/loader:1150:19)
                      at require (node:internal/modules/cjs/helpers:110:18)
                      at loadModule (/home/rutspi/MagicMirror/js/app.js:180:19)
                      (Use electron --trace-warnings ... to show where the warning was created)
                      [11.12.2023 19:08.13.353] [ERROR] (node:1623) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
                    [1623:1211/190814.008170:ERROR:object_proxy.cc(590)] Failed to call
                    ``` method: org.freedesktop.portal.Settings.Read: object_path= /org/freedesktop/portal/desktop: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.portal.Desktop was not provided by any .service files
                    MESA-LOADER: failed to retrieve device information
                    MESA-LOADER: failed to retrieve device information
                    MESA-LOADER: failed to retrieve device information
                    MESA-LOADER: failed to open kms_swrast: /usr/lib/dri/kms_swrast_dri.so: cannot open shared object file: Permission denied (search paths /usr/lib/aarch64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
                    failed to load driver: kms_swrast
                    MESA-LOADER: failed to open swrast: /usr/lib/dri/swrast_dri.so: cannot open shared object file: Permission denied (search paths /usr/lib/aarch64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
                    failed to load swrast driver
                    S 1 Reply Last reply Reply Quote 0
                    • S Offline
                      sdetweil @jimb
                      last edited by sdetweil

                      @jimb said in Modifying the Config File:

                      Cannot find module ‘deep-object-diff’

                      yeh, you missed a step

                      Clone this repo into ~/MagicMirror/modules directory.
                      
                      cd MMM-Config    <---- this one
                      
                      npm install
                      

                      I’ve updated the install steps

                      1. cd ~/MagicMirror/modules
                      
                      2. git clone https://github.com/sdetweil/MMM-Config
                      
                      3. cd MMM-Config
                      
                      4. npm install
                      

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      1 Reply Last reply Reply Quote 0
                      • J Offline
                        jimb
                        last edited by

                        Sam, all is working OK again. Thanks! FYI, my capitalizations were for emphasis only, not copied or used.

                        Now, real dumb question "How is “MMM-Config” invoked?

                        S 1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 7
                        • 8
                        • 9
                        • 10
                        • 11
                        • 10 / 11
                        • 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