Read the statement by Michael Teeuw here.
Use npm for module installs
-
By the way, when MM2 is stable, it will be available for installation using
npm install magic mirror
. -
@MichMich the forum also installs it’s modules into node_modules but it still somehow manages to find them and let the user activate them :/
-
@paviro Yes, but that doesn’t mean they are in a specific folder. That would mean all modules will be installed in
~/MagicMirror/modules/node_modules/.
- I don’t think that is what we want. -
That’s correct but would that be a real problem?
-
@paviro Yes,it has to big of an impact on the file structure. This would require a lot of rewriting. (And besides that, it’s extremely ugly :))
-
I agree on the ugly part :D your are right I guess, would just be easier for the users :) but probably not enough to be worth it.
-
It’s not that it’s not worth it. It’s just not cleanest solution.
-
if it could be possible to build a Management Interface like iobroker (www.iobroker.org), it would be much more comfortable to use. Good node update und plugin design.
-
I’d really like to see some kind of ‘package manager’ for all the mirror modules. A more or less centralized solution for this would be great.
But I agree with @MichMich that npm is not really the solution for that.
-
@Beh Maybe a setup page for the MM config file,
basically just a script that runs just like the MM page (maybe could be started with npm start config?)
where you could access a list of modules (retrieved from an “official” module list that has the right format),And when the module is selected and “install” is clicked the page does the git clone process, npm install and adds the configuration fields to the config.js file according to the instructions gotten from the module list. (all default settings except for location which the user should select before he is able to install the module).
Since the format of the config for all modules are more or less the same it shouldn’t be that difficult to have the page retrieve the different config variables from the modules and display it in a more userfriendly way (ie input fields on a html page instead of sorting out the “code”).
Because let’s face it, most of the “troubleshooting” for new users are config file related errors (a comma missing or using wrong quotation marks, placing the module code outside the module list etc etc)
Shouch a solution would probably not require a rewrite of any MM base code, it would just be a standalone addition.
But it would require a compatible modules list with a strict format.