Downgrader un paquet

Matériel: PC fixe
Version de YunoHost: 3.6.4.6
J’ai accès à mon serveur : Complet
Êtes-vous dans un contexte particulier ou avez-vous effectué des modificiations particulières sur votre instance ? : non

Bonsoir,

J’aimerais savoir si il est possible de downgrader simplement un paquet, par exemple si une app n’est pas compatible avec la version la plus récente de ce dernier. J’ai ce problème avec nodejs, parce que le désinstaller et le réinstaller avec le dépôt de la bonne version est une vraie galère. Est-ce qu’il existe une méthode plus simple ?

Pour répondre à cette question encore faut-il qu’on sache le détails. Après tous les messages de support que tu as posté (119 sujets créés), tu devrais avoir le réflexe de décrire ce que tu cherches à faire, de décrire le détail du problème que tu rencontres, ce que tu t’attendais à ce que ça fasse, ce qu’il s’est passé à la place etc… Bref ne pas juste expliquer vaguement le début de solution que tu envisages à ton problème.

Là concrètement, tu parles de changer la version de nodejs (ou d’ajouter le support d’une autre version) mais on ne sait pas dans quel cadre.

Est-ce parce que tu essaies d’installer un logiciel à la main? ou parce qu’une installation d’une app yunohost ne fonctionne pas ? Si elle ne fonctionne pas, il faut penser à fournir les logs, (comme c’est d’ailleurs indiqué lorsque l’installation échoue). Là on ne sait même pas le nom de l’app.

Peut être essaies tu d’empaqueter une application ?

Pour résumer: si tu viens demander de l’aide, essaies de simplifier la tâche de celles et ceux qui t’aident. D’autant que chaque heure de support qu’on prend, ce sont des heures qui ne sont pas utilisées pour développer les améliorations/corrections (et on ne manque pas de TODO de ce côté…).

Bon, je m’explique.

J’ai quelques emmerdes avec peertube. Je pensais naïvement qu’il suffisait d’upgrader nodejs pour résoudre le problème, et pour ça, il faut ajouter le dépôt de la version voulue puis mettre à jour. Sauf que non, la version actuelle de peertube sur YNH ne supporte que la version 8. Je désinstalle donc nodejs afin de downgrader le truc.

Et c’est là que les ennuis commencent: un message d’erreur apparaît et se répète indéfiniment (je me souviens qu’il contenait un «connection refused»). Impossible d’interrompre les processus, je n’ai pas d’autre choix que tout redémarrer puis réparer les paquets partiellement désinstallés.

Bref, une sacrée prise de tête. Je n’ose plus relancer la procédure de peur que le problème se répète, c’est pour ça que je me demandais si il n’existait pas une procédure plus simple pour downgrader un paquet.

La version 1.3.1 actuellement fournit par le package peertube_ynh est faite pour nodejs 8 (mais supporte peut être les versions supérieur).

La version 1.4.x est sorti il y a un peu plus d’un mois et nécessite nodejs 10 ou plus.

Yunohost utilise un script qui s’appelle “n” pour gérer les différentes versions de nodejs. Il n’y a pas de repo à ajouter.

A ta place je désinstallerais les paquets nodejs, puis je réinstallerais en utilisant les helper de Yunohost. Tu peux activer les helpers via la commande:

source /usr/share/yunohost/helpers

Et pour installer nodejs 8

ynh_install_nodejs --nodejs_version=8

NB: de mon point de vu il me semble plus sûr de tenter de mettre à jour le paquet peertube_ynh avec la version 1.4 et node js 10 (pas beaucoup de chose à changer) plutôt que de bidouiller dans une installation de production, empêchant de fait toute mise à jour future…

En fait, j’ai pas eu besoin de chipoter. Le service peertube a fini par démarrer tout seul, et quand la version 1.4.1 est sortie, l’upgrade de nodejs vers la version 10 s’est faite toute seule.