No description
Find a file
2024-10-08 12:19:49 +02:00
.vscode Refonte du fichier de conf 2024-10-06 23:44:04 +02:00
ansible Refonte du fichier de conf 2024-10-06 23:44:04 +02:00
cubic Ajout de la section cubic 2024-10-05 19:16:17 +02:00
doc Ajout de la section cubic 2024-10-05 19:16:17 +02:00
libreticmenu Préparation ansible-pull 2024-10-08 12:19:49 +02:00
config.yml Refonte du fichier de conf 2024-10-06 23:44:04 +02:00
libreticmenu-firstboot.service cubic-setup prépare l'exécution de la conformité au premier démarrage 2024-10-05 13:09:45 +02:00
libreticmenu-firstboot.sh Refonte du fichier de conf 2024-10-06 23:44:04 +02:00
libreticmenu.sh Actualiser libreticmenu.sh 2024-10-02 08:55:12 +02:00
LICENSE Ajout LICENSE 2024-10-05 19:42:47 +02:00
poetry.lock cubic-setup prépare l'exécution de la conformité au premier démarrage 2024-10-05 13:09:45 +02:00
pyproject.toml Actualiser pyproject.toml 2024-10-02 08:54:08 +02:00
README.md Ajout de la section cubic 2024-10-05 19:16:17 +02:00

libreticmenu

Le but de ce projet est de fournir :

  • une image iso amorçable, permettant d'installer rapidement des ordinateurs basés sur Linux Mint
  • un outil de configuration de ces ordinateurs qui se lance au premier démarrage
  • la possibilité de relancer manuellement cet outil de configuration ultérieurement de manière à relancer la configuration initiale ou d'autres options

Création de l'image iso

  • Sur un poste linux-mint, installer le logiciel Cubic :
sudo apt-add-repository universe
sudo apt-add-repository ppa:cubic-wizard/release
sudo apt update
sudo apt install --no-install-recommends cubic
  • Télécharger l'image linux mint officielle (édition cinnamon)

  • Cloner ce pojet

git clone https://git.libretic.fr/libretic/libreticmenu.git
  • Adapter le projet selon ses besoins, notamment :

    • cubic/vars/main.yml
    • ansible/vars/main.yml
    • les templates pour cubic dans cubic/templates
  • Se placer dans le dossier cubic de ce projet et exécuter la génération des fichiers preseed qui seront utiles plus tard, et qui se trouveront dans le dossier generated après exécution de la commande :

cd libreticmenu/cubic
python3 -m venv preseed-venv
. preseed-venv/bin/activate
pip install ansible passlib
ansible-playbook configure-preseed.yml
  • Lancer cubic et créer un nouveau dossier projet

Dossier de projet Cubic

  • Paramétrage de la personnalisation de l'image ; choisir l'image linux mint téléchargée et personnalisé comme suit :

Écran de personnalisation de l'image

  • On arrive sur un shell qui permet de taper des commandes de personnalisation

Shell

  • Dans ce shell, taper les commandes suivantes :
apt install -y git python3-poetry
cd /opt
git clone https://git.libretic.fr/libretic/libreticmenu.git
cd libreticmenu
./libreticmenu.sh --cubic
  • Une fois exécutées les commandes ci-dessus, passer à l'écran qui suit, qui propose de modifier la liste des packages qui doivent être supprimés dans l'image. Ne rien changer.

  • L'écran suivant propose de modifier les options de démarrage. Dans l'onglet preseed de cet écran, créer plusieurs fichiers et y copier/coller les contenus des mêmes fichiers générés par ansible :

    • libretic-nvme.ks
    • libretic-sda.ks
    • libretic-vda.ks

L'onglet preseed une fois renseigné

  • Dans l'onglet Boot, remplacer les contenus des fichiers grub.cfg et live.cfg par les contenus des fichiers générés par ansible :

L'onglet boot une fois renseignée la zone grub.cfg

L'onglet boot une fois renseignée la zone live.cfg

  • Les écrans suivant permettent de valider le taux de compression puis de générer l'image.

  • Une fois générée, on obtient un écran de synthèse :

Synthèse de l'image construite

  • Le bouton "test" permet de tester l'image obtenue, mais il est préférable de tester avec virt-manager pour une meilleure simulation de ce qu'on obtiendra après sur un ordinateur.

  • Une fois obtenu le résultat souhaité, il ne reste plus qu'à déposer l'image dans une clé usb (conseil : utiliser Ventoy), puis amorcer un PC avec cette image.

Installation d'un ordinateur avec l'image iso obtenue

Utilisation du menu libreticmenu

  • Pour lancer libreticmenu sans pull depuis le repo (développement)
NOPULL=0 ./libreticmenu.sh