GSH cassé depuis la MAJ 4.3.2, problème de NPM & NodeJS

Bonjour,

depuis la MAJ en 4.3.2, je rencontre ce problème:

+ echo '*******************Begin of package installation******************'
*******************Begin of package installation******************
+ touch /tmp/jeedom_install_in_progress_gsh
+ echo 1
+ echo 2
+ cd /var/www/html/core/class/../../plugins/gsh/resources/gshd
+ rm -rf node_modules
+ sudo npm install
ERROR: npm is known not to run on Node.js v10.24.0
You'll need to upgrade to a newer Node.js version in order to use this
version of npm. You can find the latest version at https://nodejs.org/
+ chown -R www-data:www-data gshd.js package.json
+ echo 3
+ php /var/www/html/core/class/../php/jeecli.php plugin dependancy_end gsh
+ rm /tmp/jeedom_install_in_progress_gsh
+ echo '*******************End of package installation******************'
*******************End of package installation******************

Du coup, plus de dépendances et plus de Google Smart Home… Une idée ? Sachant que je suis bien en Debian 10.

Une idée

Salut,

En attendant une correction, tu dois pouvoir t’en sortir en exécutant ça depuis l’administration système :

sudo /var/www/html/resources/install_nodejs.sh
1 « J'aime »

Merci… PAr contre ça ne marche pas :

root@jeedom:/home/llaumgui# /var/www/html/resources/install_nodejs.sh
Atteint :1 http://security.debian.org buster/updates InRelease            
Atteint :2 http://httpredir.debian.org/debian buster InRelease            
Atteint :3 http://httpredir.debian.org/debian buster-updates InRelease    
Atteint :4 http://httpredir.debian.org/debian buster-backports InRelease  
Atteint :6 https://repos.influxdata.com/debian buster InRelease           
Atteint :5 http://imola.armbian.com/apt buster InRelease
Lecture des listes de paquets... Fait
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
apt-utils est déjà la version la plus récente (1.8.2.3).
build-essential est déjà la version la plus récente (12.6).
lsb-release est déjà la version la plus récente (10.2019051400).
git est déjà la version la plus récente (1:2.20.1-2+deb10u4).
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
/var/www/html/resources/install_nodejs.sh: ligne 52: lsb_release : commande introuvable
[Check Version NodeJS actuelle : v10.24.0 : [  KO  ]
Installation de NodeJS 16
ERROR: npm is known not to run on Node.js v10.24.0
You'll need to upgrade to a newer Node.js version in order to use this
version of npm. You can find the latest version at https://nodejs.org/
Utilisation du dépot officiel

## Installing the NodeSource Node.js 16.x repo...


## Populating apt-get cache...

+ apt-get update
Atteint :1 http://security.debian.org buster/updates InRelease
Atteint :2 http://httpredir.debian.org/debian buster InRelease            
Atteint :3 http://httpredir.debian.org/debian buster-updates InRelease    
Atteint :4 http://httpredir.debian.org/debian buster-backports InRelease  
Atteint :6 https://repos.influxdata.com/debian buster InRelease           
Atteint :5 http://imola.armbian.com/apt buster InRelease
Lecture des listes de paquets... Fait

## Installing packages required for setup: lsb-release...

+ apt-get install -y lsb-release > /dev/null 2>&1
main: ligne 208: lsb_release : commande introuvable
main: ligne 214: lsb_release : commande introuvable

## Confirming "" is supported...

+ curl -sLf -o /dev/null 'https://deb.nodesource.com/node_16.x/dists//Release'

## Your distribution, identified as "", is not currently supported, please contact NodeSource at https://github.com/nodesource/distributions/issues if you think this is incorrect or would like your distribution to be considered for support

Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
Les paquets supplémentaires suivants seront installés : 
  libc-ares2 libnode64 libuv1
Paquets suggérés :
  npm
Paquets recommandés :
  nodejs-doc
Les NOUVEAUX paquets suivants seront installés :
  libc-ares2 libnode64 libuv1 nodejs
0 mis à jour, 4 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de prendre 0 o/5 559 ko dans les archives.
Après cette opération, 23,1 Mo d'espace disque supplémentaires seront utilisés.
Sélection du paquet libc-ares2:arm64 précédemment désélectionné.
(Lecture de la base de données... 56121 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de .../libc-ares2_1.14.0-1+deb10u1_arm64.deb ...
Dépaquetage de libc-ares2:arm64 (1.14.0-1+deb10u1) ...
Sélection du paquet libuv1:arm64 précédemment désélectionné.
Préparation du dépaquetage de .../libuv1_1.24.1-1+deb10u1_arm64.deb ...
Dépaquetage de libuv1:arm64 (1.24.1-1+deb10u1) ...
Sélection du paquet libnode64:arm64 précédemment désélectionné.
Préparation du dépaquetage de .../libnode64_10.24.0~dfsg-1~deb10u2_arm64.deb ...
Dépaquetage de libnode64:arm64 (10.24.0~dfsg-1~deb10u2) ...
Sélection du paquet nodejs précédemment désélectionné.
Préparation du dépaquetage de .../nodejs_10.24.0~dfsg-1~deb10u2_arm64.deb ...
Dépaquetage de nodejs (10.24.0~dfsg-1~deb10u2) ...
Paramétrage de libc-ares2:arm64 (1.14.0-1+deb10u1) ...
Paramétrage de libuv1:arm64 (1.24.1-1+deb10u1) ...
Paramétrage de libnode64:arm64 (10.24.0~dfsg-1~deb10u2) ...
Paramétrage de nodejs (10.24.0~dfsg-1~deb10u2) ...
update-alternatives: utilisation de « /usr/bin/nodejs » pour fournir « /usr/bin/js » (js) en mode automatique
Traitement des actions différées (« triggers ») pour libc-bin (2.28-10+deb10u2) ...
Traitement des actions différées (« triggers ») pour man-db (2.8.5-2) ...
[Check Version NodeJS après install : v10.24.0 : [  KO  ] -> relancez les dépendances
ERROR: npm is known not to run on Node.js v10.24.0
You'll need to upgrade to a newer Node.js version in order to use this
version of npm. You can find the latest version at https://nodejs.org/
ERROR: npm is known not to run on Node.js v10.24.0
You'll need to upgrade to a newer Node.js version in order to use this
version of npm. You can find the latest version at https://nodejs.org/
ERROR: npm is known not to run on Node.js v10.24.0
You'll need to upgrade to a newer Node.js version in order to use this
version of npm. You can find the latest version at https://nodejs.org/
[Check Prefix :  and sudo prefix :  and www-data prefix :  : [  KO  ]
Reset prefix (/usr/local) pour npm root
ERROR: npm is known not to run on Node.js v10.24.0
You'll need to upgrade to a newer Node.js version in order to use this
version of npm. You can find the latest version at https://nodejs.org/
root@jeedom:/home/llaumgui# node -v
v10.24.0
1 « J'aime »

Après GSH n’a pas besoin d’avoir le démon qui tourne pour fonctionner.

Sinon dans ta situation, je pense qu’il va falloir supprimer nodejs et npm avant de relancer le script (au moins npm) .

Bonjour,

Pas besoin de dépendances ni du démon donc le problème n’est pas là.

Commencez par nous expliquer le problème et nous montrer la page santé.

Votre connexion externe fonctionne encore? Certificat à jour? Association faite? Bref, faut plus d’infos

pour les dépendances, on voit qu’il veut pas lancer lsb_release alors que le package est bien installé, étrange…

pouvez vous faire un :

sudo lsb_release -a
lsb_release -a

qu’on puisse voir le message d’erreur ?

Il y a un daemon et si pas de dépendances, le daemon t’envoie ch*er… Donc, le pb viens bien de là.

Alors, je l’ai viré… Mais avec install_nodejs.sh il est revenu ! Du coup, j’ai fait un rm /usr/local/npm ; apt install npm et maintenant ça remarche.

Je te fais ça ASAP, mais il y a plusieurs problèmes pour moi avec le script ! Il installe npm depuis apt mais ensuite il fait un npm install depuis npm et donc fait une installation dans /usr/share/local… Je me suis alors retrouvé avec une concurrence de npm depuis apt (/usr/bin/npm) et depuis npm (/usr/local/bin/npm).

non il l’installe uniquement s’il le trouve pas

type npm &>/dev/null
if [ $? -ne 0 ]; then
  # Installation de npm car non présent (par sécu)
  sudo DEBIAN_FRONTEND=noninteractive apt-get install -y npm  
  sudo npm install -g npm
fi

Non, le démon n’est pas nécessaire pour ce plugin donc le problème que vous avez avec GSH (si vous avez un problème) ne vient pas du démon sinon je ne vous l’aurais pas dit…
une petite recherche, c’est toujours utile: Résultats de recherche pour « démo #plugin-gsh @Loic » - Communauté Jeedom

OK, donc il y a un daemon mais il ne sert à rien… Du coup pourquoi est-il là :-).

Alors il l’a pas trouvé…

Savez-vous lire? ca commence à être ridicule…

Il n’y avait même pas besoin de parcourir tous les posts…

oui puisque lsb_release fonctionne pas, il a pas pu installer nodejs 16 et npm n’est pas fourni avec la distribution de base cette debian…

Merci de rester calme et courtois ! Pour info, je sais parfaitement lire et j’ai déjà lu ces sujets (donc pas la peine de me faire un screen).
OK, le démon ne sert à rien, mais ceci est la manifestation symptomatique d’un problème de NodeJS et NPM sur lequel nous itérons avec @nebz.

Moi, quand je vois un voyant rouge, je cherche à comprendre, je ne me masque pas les yeux.

Dans le script, il y a pas mal de sudo… C’est pour que jeedom puisse avoir accès aux instructions root. Hors moi, je me connecte avec mon compte perso qui n’est pas dans sudoers… Du coup de là, je fais une su - pour passer root. Est-ce que ça viendrait de là…

Donc avez-vous ou pas un problème avec GSH, qui est le sujet de ce post, ou voulez-vous régler votre problème avec npm?

Est-ce que le titre du sujet et la classification est appropriée? pcq jusqu’ici on ne sait toujours pas si GSH est vmt cassé ou pas…

Il remarche, mais mon daemon aussi… Donc cause ou conséquence :-).

# sudo: lsb_release
lsb_release: command not found
lsb_release
lsb_release: not found
# dpkg -l | grep lsb
ii  lsb-base                             10.2019051400                       all          Linux Standard Base init script functionality
ii  lsb-release                          10.2019051400                       all          Linux Standard Base version reporting utility
# whereis lsb_release
lsb_release: /usr/share/man/man1/lsb_release.1.gz

Mais après, je dirais que c’est un peu logique :

# dpkg -L lsb-release
/usr
/usr/bin
/usr/lib
/usr/lib/python2.7
/usr/lib/python2.7/dist-packages
/usr/lib/python3
/usr/lib/python3/dist-packages
/usr/share
/usr/share/bug
/usr/share/bug/lsb-release
/usr/share/doc
/usr/share/doc/lsb-release
/usr/share/doc/lsb-release/README.Debian
/usr/share/doc/lsb-release/changelog.gz
/usr/share/doc/lsb-release/copyright
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/lsb_release.1.gz
/usr/share/pyshared
/usr/share/pyshared/lsb_release.py
/usr/lib/python2.7/dist-packages/lsb_release.py
/usr/lib/python3/dist-packages/lsb_release.py
# dpkg -L lsb-base
/lib
/lib/lsb
/lib/lsb/init-functions
/lib/lsb/init-functions.d
/lib/lsb/init-functions.d/20-left-info-blocks
/usr
/usr/share
/usr/share/doc
/usr/share/doc/lsb-base
/usr/share/doc/lsb-base/NEWS.Debian.gz
/usr/share/doc/lsb-base/README.Debian.gz
/usr/share/doc/lsb-base/changelog.gz
/usr/share/doc/lsb-base/copyright

Je ne vois pas le binaire de base… Je pense que vous avez un problème sur votre système moi je ferai une réinstallation

Effectivement… Après sans aller juste que là :

sudo apt-get install -y --reinstall lsb-release
#lsb-release -a
No LSB modules are available.
Distributor ID:	Debian
Description:	Debian GNU/Linux 10 (buster)
Release:	10
Codename:	buster

Merci du coup problèmes réglés : GSH refonctionne et mon NodeJS est à nouveau opérationnel ! merci @nebz !

2 « J'aime »

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.