close
Unix, Linux & Tips

Les tribulations d'un admin sys

Lors des précédents articles, nous avons détaillé plusieurs phases d’installation et de configuration du Raspberry Pi pour préparer la mise en place du Magic Mirror. Nous allons maintenant voir comment réaliser l’installation du logiciel à proprement parler, ainsi que quelques optimisations qui seront les bienvenues à l’utilisation.

Rappel : Cet article fait partie d’une série en plusieurs parties, dont vous trouverez les éléments ci-dessous :

  • Réflexion autour d’un appareil connecté (Allons-y!)
  • Installation du Magic Mirror – Partie 1 (Allons-y!)
  • Installation du Magic Mirror – Partie 2 (Allons-y!)
  • Installation du Magic Mirror – Partie 3 (vous y êtes!)
  • Installation du Magic Mirror – Partie 4 (Allons-y!)
  • Installation du Magic Mirror – Partie 5 (Allons-y!)

Installer Magic Mirror²

Etape 1

Cliquer sur l’icône Terminal qui ouvrira un terminal unix loggé par défaut avec l’utilisateur pi.
Dans la fenêtre de terminal taper la commande suivante, et appuyer sur Entrée :

Ceci va lancer le processus d’installation automatisé du logiciel.

Etape 2

Malgré cette installation complète du logiciel, certaines opérations doivent encore être réalisées. Nous allons donc voir, comment orienter l’écran de manière verticale pour un affichage portrait.

Remarque : Pour ceux qui désirent garder un affichage en mode paysage, cette étape n’est pas nécessaire et vous pouvez directement aller à l’étape suivante.

Dans la fenêtre de terminal taper la commande suivante, et appuyer sur Entrée pour modifier le fichier de configuration :

Ajouter dans ce fichier les lignes suivantes, toutefois, sachez que la position dans le fichier importe peu. Sauvegardez les modifications :wq!

Etape 3

Nous allons maintenant désactiver l’écran de veille et l’occultation automatique de l’écran. Cela doit être effectué en renseignant deux fichiers différents. Dans un premier temps, nous allons le configurer dans le fichier autostart.

Ajouter les lignes suivantes à la fin du fichier ;

Sauvegardez les modifications en saisissant la commande suivante :wq!. Une fois ces modifications effectuées, éditer ensuite le fichier suivant :

Se positionner dans la section [SeatDefaults] et modifier la ligne suivante xserver-command= :

Sauvegardez les modifications en saisissant la commande suivante :wq!.

Etape 4

Information intéressante à connaître, il faut savoir que le Raspberry Pi arrête automatiquement certains éléments matériels qui ne sont pas utilisés (cela inclut notamment les drivers wifi). Cela entraînera notamment, des effets de bord sur les modules météo, news , et météo… Nous allons voir comment désactiver la mise en veille de ces éléments dans le fichier de configuration suivant :

Se positionner sur la section Wlan0 et saisir l’instruction suivante wireless-power off.

Sauvegardez les modifications en saisissant la commande suivante :wq!. Redémarrez le Raspberry Pi pour vérifier que les modifications ont bien été prises en compte, ceci peut être vérifié en saisissant la commande iwconfig dans un terminal. Vous verrez alors que l’option est maintenant désactivée.

A ce stade de la configuration, votre Magic Mirror est quasiment prêt à être lancé. La prochaine étape consistant à créer un fichier de configuration valide pour tester le fonctionnement; cette opération peut être réalisée en copiant le fichier d’exemple à l’aide des commandes suivantes :

Vous pouvez maintenant procéder au démarrage du programme :

Si tout s’est déroulé sans erreurs jusqu’ici, vous devriez voir apparaître l’écran suivant. Toutefois, le module météo vous indiquera qu’il manque une clé valide, mais une ce problème réglé, votre écran devrait ressembler à ceci :

Félicitations! Votre miroir magique est maintenant fonctionnel! Il ne vous reste plus qu’à le personnaliser selon vos goûts.

Un autre article verra le jour, sur les différents modules qui composent mon miroir personnel, ainsi que ceux que j’ai ajouté ou supprimé.


Traduit et inspiré de l’article d’origine suivant : Setup Tutorial.

Review overview

Mise en oeuvre 5
Connaissances nécessaires 6
Optimisation 4.5

Summary

5.2 Compliqué Les étapes détaillées ici ne sont pas les plus compliquées de tout le processus d'installation, mais elles sont totalement indispensables et nécessaires pour la suite. L'installation du logiciel se déroulant de manière autonome, il s'agit surtout d'être vigilant lors des opérations d'optimisation.

Tags : magicmagic mirrormagiquemiroirmiroir magiquemirrorRaspberry pi
Emmanuel V.

The author Emmanuel V.

78 commentaires

  1. Excellent tuto!
    Je voudrais installer MagicMirror sur ma vielle Eeebox B202 tournant sous Manjaro malheureusement je reçois ce message d’erreur:
    Sorry, your Raspberry Pi is not supported. Please run MagicMirror on a Raspberry Pi 2 or 3. If this is a Pi Zero, you are in the same boat as the original Raspberry Pi. You must run in server only mode.
    Bon, je ne me faisais pas trop d’illusions. Vivement qu’il soit porté sous Arch puisqu’il y a une version pour le RPI. Sinon, j’attendrai mon prochain RPI.

    1. Bonjour,

      Je manque un peu de temps dernièrement, mais je suis en train de rédiger la 4e partie! Je détaillerais la construction du mirroir et la configuration des différents modules.

      Merci pour ce retour!

  2. Bonjour,
    Merci pour ce super Tuto qui m’a permis d’installer ce Magic Mirror sans problèmes. Il faute juste pensée à tout mettre à jour avant l’installation.
    Aujourd’hui je recherche comment mettre mon calendrier Google perso à la place du calendrier « US holiday »
    Merci de votre aide

    1. Bonsoir,

      Pour se faire, il faut éditer le fichier de configuration, et positionner l’URL ical fournie par Google dans le partage de calendrier. Je retrouverais l’url, ainsi que les options qu’il faut lorsque j’aurais accès à celui-ci prochainenement.
      Cette partie sera également partagée dans l’article 4 qui doit paraître.

      Merci pour votre commentaire.

      Emmanuel

  3. Bonjour,

    Je débute ce projet ce soir, merci pour le tuto.
    Cependant je n’arrive pas à télécharger le programme magic mirror. Est-il toujours disponible? si oui je n’arrive pas à l’obtenir via la ligne de commande indiquée dans l’étape 1.

    Merci d’avance pour votre aide

  4. merci!
    j’ai réussi. Par contre impossible d’enregistrer la rotation par un ctrl x. Comment dois-je faire? désolé mais je débute!

    Merci par avance

    1. J’utilise plutôt vi dans l’article plutôt qu’un autre éditeur (emacs par exemple).

      Pour sauvegarder et quitter, il te faut taper la série de commandes suivantes : échap (pour sortir du mode insertion) puis :wq!

      Et le tour est joué!

      1. Merci pour l’explication, j’ai tout réussi, sauf cette étape ci:
        A ce stade de la configuration, votre Magic Mirror est quasiment prêt à être lancé. La prochaine étape consistant à créer un fichier de configuration valide pour tester le fonctionnement; cette opération peut être réalisée en copiant le fichier d’exemple à l’aide des commandes suivantes :

        pi@MagicMirror:~$ cd MagicMirror/config
        pi@MagicMirror:~$ cp config.js.sample config.js
        Vous pouvez maintenant procéder au démarrage du programme :

        pi@MagicMirror:~$ cd $HOME/MagicMirror
        pi@MagicMirror:~$ npm start

        J’ai un message d’erreur qui me dit qu’il n’y a aucun fichier.
        Une idée pour résoudre le problème? Est-ce dù au fait que je fais l’installation en plusieurs fois?
        Merci d’avance!

  5. Bonjour,

    J’ai refais une installation complète, tout fonctionne bien sauf à partir de l’étape:
    pi@MagicMirror:~$ cd MagicMirror/config

    Je ne sais pas comment faire la commande que tu cites plus haut avec les droits root.
    Peux tu me dire comment faire stp?
    Un grand merci

    1. Bonjour,

      En tant qu’ex-administrateur Unix, je ne peux que te dire de ne jamais naviguer ou exéctuer des commandes en root ! Le risque d’erreur est grandement accru. De plus, l’installation que tu as du dérouler, en tant qu’utilisateur pi, te positionne normalement dans le répertoire /home de celui-ci.

      Donc, dans ton cas, si tu lances le changement de répertoire avec l’utilisateur root, tu dois exécuter ceci :

      cd /home/pi/MagicMirror/config

      Si tu ne sais pas où se situe le répertoire, tu peux toujours le chercher en lancant la commande suivante :

      find -type d / -name MagicMirror

      Bon courage pour la suite.

  6. Hello. Tres bon tuto. Je vais regarder cela de plus pres.
    Effectivement une partie 4 sera necessaire afin d’aider a personnaliser son magicmirror.

    Et pour ma part un petit tuto sur le mode serveur ne serai pas de refus :}

  7. Bonjour et merci pour le tuto,
    pour moi impossible de modifier /etc/xdg/lxsession/LXDE-pi/autostart
    Le répertoire lxssession n’existe pas.

    Help please

    1. Bonjour,

      Plusieurs possibilités à ce problème :
      1) L’installation s’est mal déroulée et votre raspberri n’est pas bien installé …
      2) Le chemin a changé depuis un certains temps (car le software évolu) et vous devriez plutôt utiliser le chemin suivant : ~/.config/lxsession/LXDE-pi/autostart
      3) Cherchez le fichier autostart à l’aide de la commande suivante : sudo find / -type f -name autostart

      En espérant que cela a pu aider.

  8. Salut et bravo pour ton tuto très clair, et qui pour ma part à fonctionné du premier coup.
    J’ai commencé le projet avec un écran de 15 pouces, mais c’était au final pour le mettre sur un écran de 7 pouces.
    Bref, donc aujourd’hui sur mon écran de 7 pouces ça fonctionne bien sauf que les infos se chevauchent.
    Est ce que il faut tout recommencer avec l’écran plus petit ? Ou il y a une modification à faire dans un fichier de configuration ?

    1. Bonjour,

      Merci pour votre commentaire.
      Pour votre problème d’espace, il faudrait modifier le fichier custom.css et changer la taille de la police qui doit être celle utilisée par défaut, pour que l’affichage puisse être correct.
      Un article expliquant comment configurer ce fichier est en cours d’écriture, je regarderais à l’occasion comment faire pour à la fois, changer la police et sa taille.

  9. Bonjour

    tuto génial
    je l’ai suivi à la lettre mais quand je lance la commande npm start, j’ai le retour erreur suivant :

    npm ERR Linux 4.4.50-v7+
    npm ERR argv "/usr/bin/node" "/usr/bin/npm" "start"
    npm ERR node v6.12.3
    npm ERR npm v3.10.10
    npm ERR code ELIFECYCLE
    npm ERR magicmirror@2.2.2 start:
    sh run-start.sh
    npm ERR Exit status 1

    et toute une liste…

    Pouvez-vous m’aider ?

    Cordialement

    Manu

    1. Bonjour,

      Etes-vous positionnés dans le bon répertoire pour lancer la commande ? Car cette erreur, me fait penser à une erreur de PATH.

      Avez-vous bien exécuté cette séquence ?

      pi@MagicMirror:~$ cd $HOME/MagicMirror
      pi@MagicMirror:~$ npm start

  10. Bonsoir Emmanuel. Tout d’abord merci beaucoup pour ce tuto très bien expliqué. Cependant, je rencontre un léger problème. Arrivé à la fin de la partie 3 étape 1, le téléchargement se termine et ça m’affiche directement à l’écran l’affichage final (les écritures se chevauchent). Ainsi, je n’ai plus accès au bureau… N’y connaissant pas grand chose, je bidouille un peu toutes les touches et miracle, Ctrl Echap m’affiche le déroulé « programmation, bureautique… » J’ouvre donc le cmd et passe à la seconde étape de votre tuto, cependant, quasi impossible d’ajouter des lignes (touches inversées, la molette fait apparaître des A et B à chaque ligne, la touche retour en arrière ne supprime plus, il faut utiliser suppr etc etc), et lorsque je parviens enfin à rentrer les 3 fameuses lignes, je tape wq! puis j’appuie sur « Enter » mais rien ne se passe mis à part un retour à la ligne. Il en est de même pour la troisième étape.
    Auriez vous la solution à mon problème ?

    1. Bonjour Jérémie,
      Je bloque a ce niveau, j’ai le même soucis, je ne parviens pas a éditer les 3 lignes de mon fichier « autostart ». n’étant pas un érudit de linux je ne comprend vraiment ce qu’il m’arrive.

      Comment as tu solutionné ton problème?

      1. J’ai finalement solutionné mon problème en utilisant « nano » au lieu de « vi » comme éditeur.
        J’ai donc remplacé vi par nano dans la ligne de commande puis ensuite ctrl O pour sauvegarder et ctrl X pour sortir.

        Merci

  11. bonjour
    j’ai ce message d’erreur quand je veux ouvrir le fichier config.txt
    je ne peut donc rien rajouter au fichier si quelqu’un a une piste
    (je suis novice sous linux)
    merci

    E325: ATTENTION
    Found a swap file by the name « /boot/.config.txt.swp
    owned by: root dated: Sat fri mar 9 17:05:40 2018
    file name: /boot/config.txt
    modified: YES
    user name: root host name: MagicMirror
    process ID: 2987
    While opening file « /boot/config.txt »
    dated: wed now 29 04:23:20 2017
    NEWER than swap file!

    (1) Another program may be editing the same file.
    If this is the case, be careful not to end up with two
    different instances of the same file when making changes.
    Quit, or continue with caution.

    (2) An edit session for this file crashed.
    If this is the case, use « :recover » or « vim -r /boot/config.txt »
    to recover the changes (see « :help recovery »).
    If you did this already, delete the swap file « /boot/config.txt.swp »
    to avoid this message.
    « /boot/config.txt » 58lines, 1812 characters
    Press ENTER or type command to continue

    1. Bonjour,

      Ce n’est rien 🙂 Cela veut dire que le fichier que tu tentes d’ouvrir est déjà ouvert dans un autre processus (soit une connexion persistante d’une ancienne session, soit un autre terminal ouvert).
      Quand un fichier est ouvert sous Unix, c’est ce qu’il se passe pour éviter justement les éditions multiples.

      Donc, assure toi bien que le fichier n’est pas ouvert ailleurs, supprime le fichier .swp et ouvre ton fichier, tu n’auras alors plus de problèmes.

      Emmanuel.

  12. Bonsoir,

    Après quelques mois d’abandon du projet, j’ai refais une installation.
    Tout se passe très bien, à une exception près:
    je n’arrive pas à désactiver la mise en veille du wifi…
    J’ajoute bien la ligne spécifiée dans le tuto, mais lorsque je vérifie avec iwconfig, power management est indiqué « on ».
    comment puis-je y remédier?

    Pour info j’ai déjà refais l’installation complète plusieurs fois mais c’est toujours la même problématique…
    Je vous remercie par avance!

  13. Hello,

    Merci pour ce tuto, nikel chez moi hormis la mise en veille qui s’active…une idée ?

    J’ai bien vérifié manuellement en ouvrant les fichiers édités, les lignes y sont bien écrites..

    Merci d’avance.

    1. Bonjour,

      As-tu bien suivi l’étape 2?

      Dans la fenêtre de terminal taper la commande suivante, et appuyer sur Entrée pour modifier le fichier de configuration :

      pi@MagicMirror:~$ sudo vi /boot/config.txt

      Ajouter dans ce fichier les lignes suivantes, toutefois, sachez que la position dans le fichier importe peu. Sauvegardez les modifications :wq!

      # Rotate display vertically
      display_rotate=1

      Avec ces commandes, tu ne devrais pas avoir trop de problèmes pour effectuer ces modifications. N’oublie pas de relancer ton système après ça pour que cela soit pris en compte.

  14. bonjour j’ai un gros problème quand je met la derniere commande ça me donne ça :

    pi@raspberrypi:~$ cd ~/MagicMirror/config
    pi@raspberrypi:~/MagicMirror/config $ cp config.js.sample config.js
    pi@raspberrypi:~/MagicMirror/config $ cd $HOME/MagicMirror
    pi@raspberrypi:~/MagicMirror/config $ npm start
    npm ERR! file /home/pi/MagicMirror/package.json
    npm ERR! code EJSONPARSE
    npm ERR! failed to parse json
    npm ERR! unexpected end of JSON input while parsing near  »
    npm ERR! file: /home/pi/MagicMirror/package.json
    npm ERR! failed to parse package.json data.
    npm ERR! package.json must be actual JSON, not just JavaScript.
    npm ERR!
    npm ERR! Tell the package author to fix their package.json file. JSON.parse

    npm ERR! A complete log of this run can be found in :
    npm ERR! /home/pi/.npm/_logs/2018-08-05T14_15_06_431Z-debug.log

    1. Bonjour,

      Ce n’est pas si grave, rassurez-vous ! Votre fichier Json est tout simplement mal configuré, dans le sens où, vous devez avoir un guillemet en trop ou en moins (comme il le dit dans son log).
      Si l’erreur n’est pas grave, trouver d’où elle vient, va être un peu plus compliqué, j’en ai peur!

      Au pire, rendez-vous sur un site comme celui-là, pour vérifier la validité de votre code (https://jsonlint.com/) mais cela ne pourrait pas fonctionner vu qu’il s’agit d’un format particulier.
      Pensez à bien indenter votre code également!

      Bon courage!

        1. Bonsoir,

          Cela me paraît bizarre que ce fichier soit vide… Avez-vous bien suivi les étapes d’installation? Car normalement, la moindre déconnexion peut entraîner la perte de données, mais vous n’auriez pas du finir toutes les installations sans ça.

          Retentez l’installation en entier en recommençant tout. Ne voyant pas la cause de l’erreur, un simple re-upload du fichier pourrait ne pas être suffisant.

  15. Bonjour et merci pour ce tutoriel en français.
    Alors j’ai un petit soucis, je ne suis certainement pas doué mais lors de l’installation de maggic mirror, il me dit :
    Bash : ligne 112: nom : commande introuvable
    unable To install dependencies
    Et j’ai testé un apt-get install nom et la j’ai toute une série d’erreur
    Pouvez vous m’aider svp

    1. Bonjour,

      Je pense que vous n’avez pas saisi la bonne commande ^^
      Car nom n’existe pas, il s’agit plutôt de npm (ok, elles sont à côté sur le clavier!).

      Réessayez avec npm et je pense que vos problèmes seront résolus.

      Bon courage pour la suite.

  16. Bonjour
    Merci pour ce magnifique tuto;)
    Un petit problème pour ma part:pas de démarrage automatique je suis obligé de passer en ligne de commande,un petit coup demain ne serait pas de refus

  17. Bonjour
    Merci pour la transmission de votre travail mais j’ai un soucis à l’étape 3 car, je n’arrive pas a modifier mon fichier pour y insérer les 3 lignes.
    D’ailleur sur votre capture d’écran, vous avez 3 lignes moi j’ai ça:

    @lxpanel --profile LXDE-pi
    @pcmanfm --desktop --profile LXDE-pi
    @xscreensaver -no-splash
    @point-rpi

    Et à la suite je n’arrive à rien ajouter…

    Merci de votre aide

    1. Bonjour,

      Utilisez-vous bien l’éditeur « vi » ? Etes-vous bien positionné en super utilisateur pour éditer le fichier ?
      Pour rappel, la navigation sous l’éditeur « vi » n’est pas intuitive…

      1. merci pour votre aide
        je ne sais pas comment être positionné en super utilisateur, cela dit l’étape pour tourner l’affichage a très bien fonctionner.

        1. Bonjour,

          Quand vous écrivez sudo vi nom_fichier cela vous donne le droit d’utiliser le super utilisateur pour modifier ce fichier sensible. Si vous ne faites pas cette commande et utilisez simplement vi nom_fichier, alors le fichier reste bloqué en lecture seule. Il s’agit d’une sécurité du système pour éviter les erreurs de manipulation.

  18. Bonjour, à l’étape 3 quand je tape « sudo vi /etc/xdg/lxsession/LXDE-pi/autostart » et sur entrer ça m’affiche point-rpi et des vague bleu je ne peux plus rien écrire.

    1. Bonjour,

      Pour utiliser vim ensuite, je te conseille de lire la cheatsheet suivante : ici. Cela te permettra de naviguer dans le fichier et d’éditer celui-ci, car j’ai l’impression que tu bloques sur la navigation et la modification de celui-ci.

      Bonne journée.

  19. bonjour,
    dans un premier temps merci pour ce tuto.
    Je rencontre un souci a la fin de l’étape 3.
    lorsque je lance la commande npm start
    tout se lance sans message d’erreur mais reste bloqué avec le message suivant:
    ready to go ! Please point your browser to : http://localhost:8080

    Avez vous une idée où j’aurais pu faire une erreur ?

      1. Bonjour,
        Ne trouvant pas de solution, j ai préféré tout réinstaller pour repartir d une base claire.
        J ai suivi méticuleusement votre tuto et là miracle. Mon miroir a fonctionnè.
        Je vais donc m atteler rapidement à la personnalisation des modules
        Merci

      1. Bonjour,

        Merci pour vos commentaires ! Alors effectivement, il semblerait que la méthode d’installation ait évolué depuis la rédaction de mes articles. A priori, plus d’informations sont disponibles à cette adresse : ici.

        Il semblerait que cela soit devenu encore plus simple, avec une simple mis à niveau de Node.js puis un clone de repository github.

        Bon courage pour la suite.

  20. Bonjour,
    Question à un spécialiste car je cale
    J’ai ceci :
    {
    module: « MMM-pages »,
    config: {
    modules:
    [
    [ « MMM-iFrameReload », »MMM-YrMeteogram », »currentweather », « weatherforecast »],
    [ « MMM-CalendarExt2 », « MMM-CalendarExtTimeline », »currentweather », « weatherforecast »],
    [ « MMM-MotionEye »]
    ],
    fixed: [« clock », « newsfeed », « MMM-page-indicator », »MMM-Ring »],
    rotationTime:5000,
    }
    },

    {
    //https://github.com/CatoAntonsen/MMM-MotionEye
    module: « MMM-MotionEye »,
    position: « middle_center »,
    config: {
    url: « http://192.168.1.xxx:80×1 »,
    forcedRefreshInterval:60000,
    width: « 400px »,
    debug: true
    }
    },
    {
    module: « MMM-MotionEye »,
    position: « middle_center »,
    config: {
    url: « http://192.168.1.xxx:80×2 »,
    forcedRefreshInterval:60000,
    width: « 400px »,
    debug: true
    }
    },

    j’ai deux caméra la 80×1 et la 80×2
    Les deux caméras s’affichent sur la MMM-pages 3

    Je voudrais que la 80×1 s’affiche sur toute les pages et les deux caméra sur la page-3
    J’ai donc fait un copie de module MMM-MotionEye dans le dossier Modules et je l’ai appelé MMM-MotionEye-1
    J’ai modifier le config.js de la façon suivante :
    {
    module: « MMM-pages »,
    config: {
    modules:
    [
    [ « MMM-iFrameReload », »MMM-YrMeteogram », »currentweather », « weatherforecast »,MMM-MotionEye],
    [ « MMM-CalendarExt2 », « MMM-CalendarExtTimeline », »currentweather », « weatherforecast »,MMM-MotionEye],
    [ « MMM-MotionEye »,MMM-MotionEye-1]
    ],
    fixed: [« clock », « newsfeed », « MMM-page-indicator », »MMM-Ring »],
    rotationTime:5000,
    }
    },

    {
    //https://github.com/CatoAntonsen/MMM-MotionEye
    module: « MMM-MotionEye »,
    position: « middle_center »,
    config: {
    url: « http://192.168.1.xxx:80×1 »,
    forcedRefreshInterval:60000,
    width: « 400px »,
    debug: true
    }
    },
    {
    module: « MMM-MotionEye-1 »,
    position: « middle_center »,
    config: {
    url: « http://192.168.1.xxx:80×2 »,
    forcedRefreshInterval:60000,
    width: « 400px »,
    debug: true
    }
    },

    Je fais un pm2 restart mm
    Mais l’affichage de la caméra 80×2 (MMM-MotionEye-1) ne se fait pas
    Pas de message d’erreur
    Une idée ?
    Merci

  21. Bonjour et merci pour votre tuto,
    1er problème : j’ai mon Raspberry qui ce met en veille, le code est bien installé.
    2eme problème :: j ‘ai rebranché mon Raspberry aujourd’hui et là tous les modules on grossis sur l’écran !
    Comment puis je réduire tous les modules pour les remettre à leur place initialement ?
    merci

Leave a Response

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.