Skip to content

ETML-INF/standard-toolset

Repository files navigation

standard-toolset

Set d’outils standardisés pour l’ETML. Cette boîte à outils peut être facilement transportée/répliquée/déployée et contient uniquement des applications portables (pas de droit admin nécessaire).

La liste des apps est décrite dans le fichier apps.json

Installation

Cmd.exe

powershell -Command "Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser -Force; Invoke-RestMethod -Uri https://github.com/ETML-INF/standard-toolset/raw/main/setup.ps1 | Invoke-Expression"

Powershell / Pwsh

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser -Force
Invoke-RestMethod -Uri https://github.com/ETML-INF/standard-toolset/raw/main/setup.ps1 | Invoke-Expression

En local ou offline

Après avoir téléchargé l’archive on peut:

  • Éviter qu’elle soit téléchargée en ajoutant ‘-Local $true’ :
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser -Force
& ([ScriptBlock]::Create((Invoke-RestMethod -Uri https://github.com/ETML-INF/standard-toolset/raw/main/setup.ps1))) -Local $true
  • Indiquer clairement le chemin vers le zip ET/OU le répertoire de destination (utile pour le déploiement distant) ‘-Source ... -Destination ...’:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser -Force
& ([ScriptBlock]::Create((Invoke-RestMethod -Uri https://github.com/ETML-INF/standard-toolset/raw/main/setup.ps1))) -Source "C:\downloads\toolset.zip" -Destination "\\host\d$\data"
  • Indiquer le chemin vers le dossier déjà décompressé (nécessite 7z ou Expand-Archive) ‘-Source c:\directory’:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser -Force
& ([ScriptBlock]::Create((Invoke-RestMethod -Uri https://github.com/ETML-INF/standard-toolset/raw/main/setup.ps1))) -Source "C:\downloads\toolset" -Destination "\\host\d$\data"
  • Décompresser l’archive et lancer ‘install.ps1’ [complete offline]

Activation

Quand le toolset a été installé sur une machine, il faut lancer ‘c:\inf-toolset\activate.ps1’ ou ‘d:\data\inf-toolset\activate.ps1’ pour l’activer. Cela va finaliser l’installation (si nécessaire), ajouter les apps dans le PATH et ajouter les menus contextuels (pour vscode par exemple).

Utilisation

Versions de node

Puisque NVM requiert des droits admin, pour jongler avec différentes versions d’un logiciel (par exemple node), il faut activer le toolset et adapter l’exemple suivant à ses besoins:

echo "Current installed node versions: " && scoop list nodejs
echo "Available versions : " && scoop search nodejs
echo "Install custom version: " && scoop install nodejs18
echo "Install another version: " && scoop install nodejs20
echo "Switch to an installed version: " && scoop reset nodejs20

CDC

  • pas de droit admin
  • installation à un endroit choisi (d:...)
  • possibilité de faire son propre package facilement
  • idéalement résilient aux pannes... -> possible avec archive locale
  • facile à "déplacer"/"copier"
  • ...

Candidats principaux pour le moteur de base

Avantages / Inconvénients

Nomad: in house mais demande la maintenance et utilise actuellement symlink Winget: integré à windows, package plus compliqué à faire... pas de choix de destination d’installation (copie facile des programmes) Scoop: grande communauté (bcp d’apps), facile d’ajouter une app (bucket ETML ?), choix de destination... utilisation de shim au lieu de symlink (ok sur exfat)

Cycle

Pour harmoniser les versions :

  • Une release par année
  • Patchs durant l’année si urgence

About

pour installer le toolset ETML portable

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •