Skip to main content

Prérequis

Un ordinateur sous GNU/Linux

Pour réduire la charge de travail, notre code est exclusivement maintenu sous des distributions GNU/Linux (Ubuntu, Manjaro, Arch).
De plus, le projet utilise une version "récente" des outils de développement en C++ pour se faciliter ici encore le travail. Si vous n'êtes pas capable de satisfaire les versions minimales des bibliothèques et outils requis, veuillez installer une distribution parmi les suivantes:

  • Ubuntu 20.04, si vous êtes sous Ubuntu 18.04 la mise à niveau n'est pas nécessaire
  • Manjaro 20.2.1 ou tout autre distribution basée sur Arch Linux

Il n'est pas encouragé de développer sous une autre distribution ou un autre système d'exploitation car le bon fonctionnement du système et des outils sera à votre charge.

Certaines fonctionnalités spécifiques à Linux sont utilisées pour la partie réseau notamment.

Conseils:

Si vous n'avez jamais essayé un système d'exploitation GNU/Linux, c'est le bon moment de s'y mettre ! On est beaucoup à avoir pas mal d'expérience dessus et on la partagera avec plaisir !

Pour les plus fermés d'entre-vous ou ceux qui n'ont tout simplement pas le choix, je vais être sympa et vous orienter un peu vers des solutions envisageables.

Toutes les propositions ci-dessous seront dans tous les cas plus longues, contraignantes et fatigantes à mettre en place et sans garantie de succès.

MacOS :

Si vous voulez absolument travailler sous MacOS, un patch est envisageable pour la couche réseau. En revanche, rien ne garanti que le reste fonctionnera sans modification supplémentaire.
Si vous ne pouvez pas installer Linux, il faudra se tourner vers une machine virtuelle ou une solution Docker.

Windobe:

Rufus est le meilleur outil pour créer une clé USB d'installation Linux à partir d'une ISO sous windows.

Si vous ne voulez pas dual-boot, la solution la plus simple est de faire une machine virtuelle. Une autre piste qui peut être privilégiée est d'essayer d'utiliser le sous-système Linux WSL2 ou MSYS2.

Un compte gitlab.namec.fr

Même si c'est moins fun, pourriez-vous garder un nom de compte permettant de vous identifiez un minimum,  idéalement prenom_nom. Merci d'avance !

Lien création de compte: https://gitlab.namec.fr/users/sign_up

Vous pourrez changer votre pseudo après la création de votre compte ! De cette manière, votre identifiant interne sera toujours prenom_nom mais le pseudo affiché sera personnalisé !

Une clé SSH

Voir ce tutoriel: https://docs.gitlab.com/ee/ssh/

Bibliothèques et outils

  • git >= 2.14
  • gcc >= 7 (C++17 support)
  • cmake >= 3.16.3
  • protobuf >= 3.0
  • clang-format > 7.0
  • make
  • doxygen
  • graphviz