Skip to content

Conversation

@Convolutio
Copy link
Contributor

@Convolutio Convolutio commented Apr 9, 2025

Pour que l'installation de npm et nvm se déroule correctement sur Ubuntu 24, NVM_DIR n'est pas redéfinie dans scripts/install_zds.sh car il est déjà défini dans .bashrc à l'installation de nvm sur un chemin différent (dans le cas d'Ubuntu 24, il s'agit de ~/.config/nvm)

On espère que ceci rendra l'installation plus généralisable sur d'autres systèmes Linux également.

Ceci corrige dans certains cas le problème du nvm not found lors de make install-linux.

Contrôle qualité

  • Démarrez une installation Linux fraiche et récente comme Ubuntu 24
  • Dans bash, lancez make install-linux sur un clone de cette PR.
  • Normalement l'installation se déroulera correctement jusqu'au bout.

Pour que l'installation de npm et nvm se déroule correctement
sur Ubuntu 24, NVM_DIR n'est pas redéfinie dans scripts/install_zds.sh
car il est déjà défini dans .bashrc à l'installation de nvm sur un
chemin différent (dans le cas d'Ubuntu 24, il s'agit de `~/.config/nvm`)

On espère que ceci rendra l'installation plus généralisable sur d'autres
systèmes Linux également.
@coveralls
Copy link

Coverage Status

coverage: 89.225%. remained the same
when pulling 28755f2 on Convolutio:fix-5522
into 3455519 on zestedesavoir:dev.

@github-project-automation github-project-automation bot moved this to En développement in Suivi des PR Apr 10, 2025
@Situphen Situphen moved this from En développement to En attente de QA in Suivi des PR Apr 10, 2025
Copy link
Member

@philippemilink philippemilink left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Je pense comprendre quel problème ça corrige, mais je n'en suis pas sûr.

Pour tenter de reproduire le problème que c'est censé corriger (donc avant d'appliquer ce patch), j'ai essayé d'installer zds-site dans un environnement vierge avec Docker, en suivant la doc en utilisant l'image ubuntu:latest, puisque la PR mentionne Ubuntu.

L'installation fonctionne bien, s'exécute jusqu'à la fin, mais, en effet, si j'oublie le source ../.bashrc mentionné dans la doc, au moment de faire source zdsenv/bin/activate comme suggéré par le script à la fin de l'installation, j'obtiens l'erreur : bash: nvm: command not found. En réalité, en remontant dans les messages affichés par le script d'installation, on peut voir :

=> Appending nvm source string to /root/.bashrc
=> Appending bash_completion source string to /root/.bashrc
=> Close and reopen your terminal to start using nvm or run the following to use it now:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

Cette PR ne corrige pas ce problème (ce n'est pas un problème, il suffit de faire ce que demande le message : redémarrer le terminal, ou exécuter source ~/.bashrc ou exec bash).

J'ai l'impression que cette PR traite le cas quand NVM est installé sur le système avant d'exécuter le script d'installation de ZdS. C'est bien ça ? Comment est-ce que NVM a été installé ?

Et j'ai l'impression que cette PR ne corrige pas #5522 où il est question d'une incompatibilité avec fish.

@Convolutio
Copy link
Contributor Author

J'ai l'impression que cette PR traite le cas quand NVM est installé sur le système avant d'exécuter le script d'installation de ZdS. C'est bien ça ? Comment est-ce que NVM a été installé ?

Dans le premier système où j'ai eu le problème du nvm: command not found, nvm avait déjà été installé en amont, effectivement.
Dans un second système (les deux sont des Ubuntu 24), j'ai eu en revanche ce souci alors que c'était le script de zds-site qui m'avait fait installer nvm. (Les rééxécutions de make install-linux par la suite ne marchaient naturellement pas vu qu'on était alors dans le cas précédent qui ne marche pas). Je crois que ce second cas est celui que vous avez rencontré sur votre docker.

Donc dans les 2 cas, sur Ubuntu 24 ça ne semble pas fonctionner. Mais je reconnais que ma PR ne fixe que le premier cas.

Et j'ai l'impression que cette PR ne corrige pas #5522 où il est question d'une incompatibilité avec fish.

Effectivement. C'est un commentaire dans l'issue qui parlait du nvm: command not found et qui m'a fait croire que je résoudrai ce problème avec ce fix.

@Arnaud-D
Copy link
Contributor

J'ai essayé des choses sur une Ubuntu 24.04.2.

dans le cas d'Ubuntu 24, il s'agit de ~/.config/nvm

Il ne me l'a pas mis-là par défaut, mais à ~/.nvm. T'avais fait quelque chose de spécial à l'installation ?

J'ai fait quelques tests et j'ai l'impression qu'après le script en faisant ./zdsenv/bin/activate, la commande nvm se retrouvera être inconnue de toute façon (j'imagine parce que le script est exécuté dans un sous-shell ou un truc du genre).

J'ai peut-être loupé quelque chose, mais j'ai l'impression que pour être propre, il y a un peu plus à faire que cette PR. Il y a un moment où l'utilisateur doit relancer son terminal ou alors on doit reproduire ce que nvm met dans le .bashrc pour que ce soit prêt à l'emploi. Actuellement, le message de nvm est noyé dans le log de l'installation et on se retrouve à "finir" l'installation et se prendre une potentielle erreur.

Bref, vous en pensez quoi ?

@Arnaud-D Arnaud-D moved this from En attente de QA to Modification demandée in Suivi des PR Jul 26, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Modification demandée

Development

Successfully merging this pull request may close these issues.

5 participants