# Salle de TP virtuelle

Le dépôt
[ComputerLab](https://gitlab.dsi.universite-paris-saclay.fr/Info111/ComputerLab/)
définit un environnement virtuel pour travailler sur le matériel
pédagogique du Cours « Info 111 : Programmation Impérative », L1 Info,
Faculté des Sciences d'Orsay, pour déploiement en salle de TP, sur
JupyterHub@Paris-Saclay, Binder, ou sur sa propre machine. Il
facilite, lorsque nécessaire, l'installation de tous les artefacts
requis :

- logiciels: C++, Jupyter, ...
  (voir le fichier <a href="environment.yml">binder/environment.yml</a>).
- configuration pour la gestion des devoirs avec Travo
- utilitaires « maison ».

La page [Case Départ](index.md) propose plusieurs options pour accéder
au matériel pédagogique pour travailler dessus interactivement. Dans
la plupart de ces options, vous n'avez rien à installer. Mais si vous
souhaitez travailler en local sur votre machine personnelle, vous
devez au préalable installer l'environnement virtuel en suivant les
instructions ci-dessous.

## Installation de l'environnement virtuel

:::{note}

Les instructions ci-dessous supposent que vous ayez accès à un
terminal muni du système de gestion de version git, et que vous avez
un petit peu de familiarité avec ces derniers. Ces instructions
devraient être valides sous toute plateforme supportée par conda-forge
et notamment Windows, MacOS, Linux. Elles sont fournies telles
quelles, sans support technique. Toute suggestion d'amélioration
bienvenue.

:::

### Avec conda (recommandé)

1.  Si vous ne l'avez pas déjà, installez le gestionnaire
    d'environnements [conda](https://conda.io). Nous recommandons
    l'utilisation de l'installateur
    [Miniforge](https://conda-forge.org/download/).

2.  Si vous ne l'avez pas déjà, installez `mamba` (plus rapide que
    `conda`; fourni directement par miniforge) :

        conda install -c conda-forge mamba

3.  Si vous ne l'avez pas déjà fait, téléchargez la «salle de TP virtuelle» :

%	    git clone https://gitlab-research.centralesupelec.fr/Info111/ComputerLab.git ~/ProgImperative

        git clone https://gitlab.dsi.universite-paris-saclay.fr/Info111/ComputerLab.git ~/ProgImperative

4.  Installez les logiciels requis :

        cd ~/ProgImperative/binder/
        mamba env create
    
    La liste des logiciels pourra être mise à jour en en cours de
    semestre. Dans ce cas:
  
        cd ~/ProgImperative/binder/
	    git pull
        mamba env create --force

5.  Activez votre environnement conda :

	    conda activate info-111

	:::{attention}

	Pour accéder aux logiciels fournis, vous devrez réitérer cette
	activation à chaque fois que vous ouvrirez un nouveau terminal.

	:::

### Avec Docker

Une image docker du cours est fournie dans le
[registre de conteneurs](https://gitlab.dsi.universite-paris-saclay.fr/Info111/ComputerLab/container_registry)
du projet GitLab du cours. Voici son identifiant:

    gitlab.dsi.universite-paris-saclay.fr:5005/info111/computerlab/image:latest

## Vérification de l'installation

À faire.
