{"id":9783,"date":"2024-07-22T22:10:38","date_gmt":"2024-07-22T20:10:38","guid":{"rendered":"https:\/\/michlstechblog.info\/blog\/?p=9783"},"modified":"2024-07-29T11:24:37","modified_gmt":"2024-07-29T09:24:37","slug":"magicmirror-installing-on-windows","status":"publish","type":"post","link":"https:\/\/michlstechblog.info\/blog\/magicmirror-installing-on-windows\/","title":{"rendered":"MagicMirror: Installing on windows"},"content":{"rendered":"<div class=\"twoclick_social_bookmarks_post_9783 social_share_privacy clearfix 1.6.4 locale-en_US sprite-en_US\"><\/div><div class=\"twoclick-js\"><script type=\"text\/javascript\">\/* <![CDATA[ *\/\njQuery(document).ready(function($){if($('.twoclick_social_bookmarks_post_9783')){$('.twoclick_social_bookmarks_post_9783').socialSharePrivacy({\"services\":{\"flattr\":{\"uid\":\"Michl\",\"status\":\"on\",\"the_title\":\"MagicMirror%3A%20Installing%20on%20windows\",\"the_excerpt\":\"Hi%2C%20%0D%0A%0D%0Ashort%20post%20about%20installing%20MagicMirror%20on%20Windows.%0D%0A%0D%0A%20%28more%26hellip%3B%29\",\"txt_info\":\"2 clicks for more data protection:\\r\\n\\r\\nOnly when you click here, the button will be come active and you can send your recommendation to Flattr. When activating, data are transmitted to third parties. \",\"perma_option\":\"off\"}},\"txt_help\":\"When you activate these fields by clicking, information to Flattr may be transferred abroad, and probably may also stored there.\",\"settings_perma\":\"Enable permanently and accept data transmission. \",\"info_link\":\"http:\\\/\\\/www.heise.de\\\/ct\\\/artikel\\\/2-Klicks-fuer-mehr-Datenschutz-1333879.html\",\"uri\":\"https:\\\/\\\/michlstechblog.info\\\/blog\\\/magicmirror-installing-on-windows\\\/\",\"post_id\":9783,\"post_title_referrer_track\":\"MagicMirror%3A+Installing+on+windows\",\"display_infobox\":\"on\"});}});\n\/* ]]> *\/<\/script><\/div><p>Hi, <\/p>\n<p>short post about installing MagicMirror on Windows.<\/p>\n<p><!--more--><\/p>\n<p>First of all install <a href=\"https:\/\/git-scm.com\/download\/win\" rel=\"noopener\" target=\"_blank\">git<\/a> and <a href=\"http:\/\/git clone https:\/\/github.com\/MagicMirrorOrg\/MagicMirror\" rel=\"noopener\" target=\"_blank\">node.js<\/a>.<\/p>\n<p>Clone the repository and start basic installions<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\nPS D:\\&gt; npm install node-fetch@2\r\nPS D:\\&gt; git clone https:\/\/github.com\/MagicMirrorOrg\/MagicMirror\r\nPS D:\\&gt; cd MagicMirror\r\nPS D:\\MagicMirror&gt; npm run install-mm\r\nPS D:\\MagicMirror&gt; cd fonts\r\nPS D:\\MagicMirror\\fonts&gt; npm install\r\nPS D:\\MagicMirror\\fonts&gt; cd ..\\vendor\r\nPS D:\\MagicMirror\\vendor&gt; npm install \r\nPS D:\\MagicMirror\\vendor&gt; cd D:\\MagicMirror\\\r\nPS D:\\MagicMirror&gt; \r\n<\/pre>\n<p>Edit D:\\MagicMirror\\package.json and replace <\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\n&quot;start&quot;: &quot;DISPLAY=\\&quot;${DISPLAY:=:0}\\&quot; .\/node_modules\/.bin\/electron js\/electron.js&quot;,\r\n&quot;start:dev&quot;: &quot;DISPLAY=\\&quot;${DISPLAY:=:0}\\&quot; .\/node_modules\/.bin\/electron js\/electron.js dev&quot;,\r\n<\/pre>\n<p>with <\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\n&quot;start&quot;: &quot;.\\\\node_modules\\\\.bin\\\\electron js\\\\electron.js&quot;,\r\n&quot;start:dev&quot;: &quot;.\\\\node_modules\\\\.bin\\\\electron js\\\\electron.js dev&quot;,\r\n<\/pre>\n<p>Copy initial config file<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\nPS D:\\MagicMirror&gt; copy config\\config.js.sample config\\config.js\r\n<\/pre>\n<p>And change your locale<br \/>\n[json]<br \/>\n\tlanguage: &#8220;de&#8221;,<br \/>\n\tlocale: &#8220;de-DE&#8221;,<br \/>\n[\/json]<br \/>\nThen try start MagicMirror for the first time<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\nPS D:\\MagicMirror&gt; npm start\r\n<\/pre>\n<p>The server can also started without UI<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\nPS D:\\MagicMirror&gt; npm run server\r\n<\/pre>\n<p>You can connect by any browser with<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\nhttp:\/\/localhost:8080\r\n<\/pre>\n<p>Press Ctrl-M (minimize) to switch from MagicMirror to the Windows Desktop.<br \/>\nTo <a href=\"https:\/\/forum.magicmirror.builders\/topic\/9707\/save-performance-when-rotating-screen-e-g-on-raspberry-pi\" rel=\"noopener\" target=\"_blank\">rotate the screen<\/a> create a file<strong> css\\custom.css<\/strong><\/p>\n<pre class=\"brush: css; title: ; notranslate\" title=\"\">\r\n body {\r\n        margin: 0;\r\n        position: absolute;\r\n        transform: rotate(90deg);\r\n        transform-origin: bottom left;\r\n        width: 100vh;\r\n        height: 100vw;\r\n        object-fit: cover;\r\n        top: -100vw;\r\n        visibility: visible;\r\n }\r\n<\/pre>\n<p>Installing additional (3rd party) modules. Navigate to the <a href=\"https:\/\/github.com\/MagicMirrorOrg\/MagicMirror\/wiki\/3rd-Party-Modules\" rel=\"noopener\" target=\"_blank\">modules side <\/a>. Find a module which fits our needs. For example the <a href=\"https:\/\/github.com\/LukeSkywalker92\/MMM-DWD-WarnWeather\" rel=\"noopener\" target=\"_blank\">&#8220;Deutsche Wetter Dienst&#8221;<\/a> module. Clone the module into the modules folder.<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\nPS D:\\MagicMirror&gt; cd modules\r\nPS D:\\MagicMirror\\modules&gt; git clone https:\/\/github.com\/LukeSkywalker92\/MMM-DWD-WarnWeather\r\n<\/pre>\n<p>Adjust the config file <strong>config\\config.js<\/strong><\/p>\n<pre class=\"brush: css; title: ; notranslate\" title=\"\">\r\n{\r\n\tmodule: 'MMM-DWD-WarnWeather',\r\n\tposition: 'top_left',\r\n\theader: 'Wetterwarnungen',\r\n\tconfig: {\r\n\t\tregion: 'Hetzles',\r\n\t\tchangeColor: true,\r\n\t\tminutes: false,\r\n\t\tdisplayRegionName: true,\r\n\t\tdisplayInnerHeader: true,\r\n\t\tinterval: 10 * 60 * 1000, \/\/ every 10 minutes\r\n\t\tloadingText: 'Warnungen werden geladen...',\r\n\t\tnoWarningText: 'Keine Warnungen',\r\n\t\tseverityThreshold: 2\r\n\t}\r\n},\r\n<\/pre>\n<p>Some config examples for the builtin modules<br \/>\nSchulferien Bayern<\/p>\n<pre class=\"brush: css; title: ; notranslate\" title=\"\">\r\n{\r\n\tmodule: &quot;calendar&quot;,\r\n\theader: &quot;Schulferien Bayern&quot;,\r\n\tposition: &quot;top_left&quot;,\r\n\tconfig: {\r\n\t\tcalendars: &#x5B;\r\n\t\t\t{\r\n\t\t\t\tfetchInterval: 7 * 24 * 60 * 60 * 1000,\r\n\t\t\t\tsymbol: &quot;calendar-check&quot;,\r\n\t\t\t\turl: &quot;https:\/\/www.schulferien-online.de\/wp-content\/uploads\/2023\/10\/schulferien_by-24.ics&quot;\r\n\t\t\t}\r\n\t\t]\r\n\t}\r\n\r\n<\/pre>\n<p>Weather and forecast for Hetzles \ud83d\ude42<\/p>\n<pre class=\"brush: css; title: ; notranslate\" title=\"\">\r\n{\r\n\tmodule: &quot;weather&quot;,\r\n\tposition: &quot;top_right&quot;,\r\n\tconfig: {\r\n\t\tweatherProvider: &quot;openmeteo&quot;,\r\n\t\ttype: &quot;current&quot;,\r\n\t\tlat: 49.632973589587586,\r\n\t\tlon: 11.127440815280186\r\n\t}\r\n},\r\n{\r\n\tmodule: &quot;weather&quot;,\r\n\tposition: &quot;top_right&quot;,\r\n\theader: &quot;Weather Forecast&quot;,\r\n\tconfig: {\r\n\t\tweatherProvider: &quot;openmeteo&quot;,\r\n\t\ttype: &quot;forecast&quot;,\r\n\t\tlat: 49.632973589587586,\r\n\t\tlon: 11.127440815280186\r\n\t}\r\n},\r\n<\/pre>\n<p>Tagesschau<\/p>\n<pre class=\"brush: css; title: ; notranslate\" title=\"\">\r\n{\r\n\tmodule: &quot;newsfeed&quot;,\r\n\tposition: &quot;bottom_bar&quot;,\r\n\tconfig: {\r\n\t\tfeeds: &#x5B;\r\n\t\t\t{\r\n\t\t\t\ttitle: &quot;Tagesschau&quot;,\r\n\t\t\t\turl: &quot;https:\/\/www.tagesschau.de\/infoservices\/alle-meldungen-100~rss2.xml&quot;\r\n\t\t\t}\r\n\t\t],\r\n\t\tshowSourceTitle: true,\r\n\t\tshowPublishDate: true,\r\n\t\tbroadcastNewsFeeds: true,\r\n\t\tbroadcastNewsUpdates: true\r\n\t}\r\n},\r\n\r\n<\/pre>\n<p>Warnwetter Deutscher Wetterdienst DWD<\/p>\n<pre class=\"brush: css; title: ; notranslate\" title=\"\">\r\n{\r\n\tmodule: 'MMM-DWD-WarnWeather',\r\n\tposition: 'top_left',\r\n\theader: 'Wetterwarnungen',\r\n\tconfig: {\r\n\t\tregion: 'Hetzles',\r\n\t\tchangeColor: true,\r\n\t\tminutes: false,\r\n\t\tdisplayRegionName: true,\r\n\t\tdisplayInnerHeader: true,\r\n\t\tinterval: 10 * 60 * 1000, \/\/ every 10 minutes\r\n\t\tloadingText: 'Warnungen werden geladen...',\r\n\t\tnoWarningText: 'Keine Warnungen',\r\n\t\tseverityThreshold: 2\r\n\t}\r\n},\t\t\r\n\r\n<\/pre>\n<p>Using the calender module with netxcloud. Get the URL: Open the WebGUI, open the Users properties, copy the internal link and append <strong>?export<\/strong> to get an ICS file.<\/p>\n<pre class=\"brush: css; title: ; notranslate\" title=\"\">\r\n{\r\n\tmodule: &quot;calendar&quot;,\r\n\theader: &quot;Familie&quot;,\r\n\tposition: &quot;top_left&quot;,\r\n\tdebug: true,\r\n\tconfig: {\r\n\t\tcalendars: &#x5B;\r\n\t\t\t{\r\n\t\t\t\tfetchInterval: 7 * 24 * 60 * 60 * 1000,\r\n\t\t\t\tsymbol: &quot;calendar-check&quot;,\r\n\t\t\t\t\r\n\t\t\t\turl:&quot;https:\/\/myNextCloud.host\/nc\/remote.php\/dav\/calendars\/family\/personal\/?export&quot;,\r\n\t\t\t\tauth: {\r\n\t\t\t\t\tuser: 'family',\r\n\t\t\t\t\tpass: 'MySecretPW',\r\n\t\t\t\t\tmethod: 'basic'\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t]\r\n\t}\r\n},\t\t\r\n\r\n<\/pre>\n<p>Usefull modules<\/p>\n<p><a href=\"https:\/\/github.com\/pinsdorf\/MMM-WeeklySchedule\" rel=\"noopener\" target=\"_blank\">Stundenplan <\/a><br \/>\n<a href=\"https:\/\/github.com\/ryan-d-williams\/MMM-GoogleSheets\" rel=\"noopener\" target=\"_blank\">Display Google Sheets<\/a><br \/>\n<a href=\"https:\/\/github.com\/barnabycolby\/MMM-Carousel\" rel=\"noopener\" target=\"_blank\">Display Carousel<\/a><br \/>\nExtended Calender with different views\/modules: <a href=\"https:\/\/github.com\/MMRIZE\/MMM-CalendarExt3\" rel=\"noopener\" target=\"_blank\">MMM-CalendarExt3<\/a>, <a href=\"https:\/\/github.com\/MMRIZE\/MMM-CalendarExt3Agenda\" rel=\"noopener\" target=\"_blank\">CalendarExt3Agenda<\/a><br \/>\n<a href=\"https:\/\/github.com\/MMRIZE\/MMM-Scenes2\" rel=\"noopener\" target=\"_blank\">Scenes for Multiple Pages<\/a><br \/>\nMichael<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hi, short post about installing MagicMirror on Windows.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,2],"tags":[24,2052,20],"class_list":["post-9783","post","type-post","status-publish","format-standard","hentry","category-miscellaneous","category-windows","tag-installation","tag-magicmirror","tag-windows-2"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/michlstechblog.info\/blog\/wp-json\/wp\/v2\/posts\/9783","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/michlstechblog.info\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/michlstechblog.info\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/michlstechblog.info\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/michlstechblog.info\/blog\/wp-json\/wp\/v2\/comments?post=9783"}],"version-history":[{"count":26,"href":"https:\/\/michlstechblog.info\/blog\/wp-json\/wp\/v2\/posts\/9783\/revisions"}],"predecessor-version":[{"id":9852,"href":"https:\/\/michlstechblog.info\/blog\/wp-json\/wp\/v2\/posts\/9783\/revisions\/9852"}],"wp:attachment":[{"href":"https:\/\/michlstechblog.info\/blog\/wp-json\/wp\/v2\/media?parent=9783"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/michlstechblog.info\/blog\/wp-json\/wp\/v2\/categories?post=9783"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/michlstechblog.info\/blog\/wp-json\/wp\/v2\/tags?post=9783"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}