EN COURS DE RÉDACTION - NON FONCTIONNEL
La dernière version de Primtux pour les Raspberry Pi étant la version 7, j'ai décidé d'essayer de réaliser une nouvelle version de Primtux 8 en m'appuyant sur la dernière version du système Raspberry Pi OS Lite basé sur Debian 12 Bookworm 64 bits. Cette page me permet de garder une trace de mes manips afin d'aider à la documentation mais sans garantie de réussite...
I- Installation de Raspberry Pi OS Lite 64 bits sur une carte microSD
La méthode la plus simple est d'avoir un Rasperry Pi 4 sous la main. Il faut au minimum une carte microSD de 32 Go mais 64 Go sont recommandés.
On récupère l'image de base ici en version 64 bits Lite : https://www.raspberrypi.com/software/operating-systems/. On la décompresse et on l'installe sur sa carte microSD avec BalenaEtcher par exemple. Ensuite, on insère la microSD dans son Raspberry Pi 4 et on le démarre. On indique alors le nom d'utilisateur : "root" et comme mot de passe "tuxprof".
Configuration via l'utilitaire raspi-config :
Avertissement : pour que certains réglages ci-dessous soient activés, il est nécessaire de disposer d'un accès Internet (si proxy, le plus simple est de passer par un partage de connexion Wifi).
- La première chose à faire est d'affiner les réglages via la commande :
sudo raspi-config
Pour étendre la partition au maximum via raspi-config → 6 Advanced Options → A1 Expand Filesystem.
- Pour régler le wifi via raspi-config (permettra de se connecter à Internet) → 1 System Options → S1 Wireless LAN
- Pour régler la langue, l'heure et la date (important pour les mises à jour), la disposition du clavier ainsi que le pays pour le wifi, via dans raspi-config → 5 Localisation Options → L1 Locale (pour la langue), L2 Timezone (pour la date et l'heure), L3 Keyboard (pour la disposition du clavier) ou L4 Wlan Country (pour indiquer le pays pour les canaux Wifi).
- Pour mettre à jour le firmware du Raspberry Pi → 8 Update
- On peut activer l'accès SSH afin de pouvoir piloter le Raspberry Pi 4 à distance : → 3 Interface Options → I1 SSH
- De la même façon pour piloter le Raspi4 à distance, on peut activer le serveur VNC : → 3 Interface Options → I3 VNC
- Pour démarrer sur l'interface graphique (bureau XFCE par exemple) au lieu de la ligne de commande (CLI) → 1 System Options → S5 Boot → B2 Desktop Desktop GUI
Remarque : Sous Raspberry Pi OS Bookworm 64 bits (ça ne concerne pas la version Lite sans bureau pré-installé), avec l'abandon de X11 pour Wayland, on ne peut plus se connecter aussi facilement par VNC. Mais on peut le faire à travers un navigateur Internet en activant Raspberry Pi Connect. Pour cela on va dans → 3 Interface Options → I2 RPi Connect (https://www.framboise314.fr/raspberry-pi-connect-accedez-a-votre-raspberry-pi-a-distance-avec-un-simple-navigateur-web/).
Réglages dans le terminal :
Avec cette version de Raspberry Pi OS Bookworm, l'interface réseau peut se gérer avec la commande :
sudo nmtui
Si on est connecté à Internet, mettre à jour avec les commandes :
sudo apt update
sudo apt upgrade
- Si l'on veut utiliser au mieux le GPU (par défaut la taille allouée est de 76 Mo), il faut éditer le fichier config.txt avec cette commande :
sudo nano /boot/firmware/config.txt
et rajouter cette ligne :gpu_mem=256
Pour voir la taille, taper cette commande :vcgencmd get_mem gpu
Nous disposons alors d'une base de départ pour pouvoir générer Primtux 8.
I-bis Installation de Raspberry Pi OS sur une machine virtuelle
Il est aussi possible d'émuler un Raspberry Pi 4 sur une machine virtuelle gérée via Virt-Manager mais ça n'est pas forcément évident... Source : https://raspberrytips.fr/lancer-raspberry-pi-os-qemu/
- Pour émuler une machine invitée sous ARM64 (architecture processeur : aarch64), il est nécessaire d'installer le paquet suivant avec la commande :
sudo apt install qemu-system
Plus d'info sur Qemu : https://documentation.ubuntu.com/server/how-to/virtualisation/qemu/index.html
- Afin de disposer de la dernière version de Qemu (9.2.3) avec l'architecture correspondant au Raspberry Pi 4, on peut compiler à partir de la source ici : https://www.qemu.org/download/#source... ou extraire l'architecture directement contenu dans l'image comme indiqué dans cette vidéo : https://www.youtube.com/watch?v=DSv9bDkPzsw
- Sous Linux Mint 22.1, même en compilant Qemu pour avoir la dernière version, je n'ai pas réussi à l'émuler (la commande qemu-img ne fonctionne pas..).
II- Préparation de Primtux8
Le dépôt officiel de Primtux8 se situe à cette adresse : https://mirrors.o2switch.fr/primtux.
Stéphane Deudon a documenté comment générer Primtux8 à partir de Linux Mint 21.3 ici : https://forge.apps.education.fr/primtux/primtux8
Philippe Ronflette a documenté sa méthode pour fabriquer une image Primtux7 pour Raspberry Pi ici : https://framagit.org/philippe-dpt35/primtux7-buster-rpi avec un script qui automatise sa génération. Ça peut être un bon point de départ en actualisant par rapport à Primtux8 (voir avec Stéphane).
Installations de XFCE et de programmes basiques :
sudo apt install xfce4 xfce4-terminal xfce4-whiskermenu-plugin lightdm firefox-esr firefox-esr-l10n-fr
Attention pour démarrer sur l'interface graphique et non pas la ligne de commande, il faut régler une option dans raspi-config (cf plus haut) !!!
III- Émuler les programmes sous ARM
Pour éviter d'avoir à recompiler les programmes de Primtux8 sous architecture arm, on peut utiliser cet outil : https://box86.org/.
Tutoriel : https://pimylifeup.com/raspberry-pi-x64/
Pour cela, il faut installer git et cmake avec la commande : sudo apt install git build-essential cmake
Puis sur le Raspberry Pi, on saisit les commandes suivantes :git clone https://github.com/ptitSeb/box64 && cd box64
mkdir build && cd build
cmake .. -DRPI4ARM64=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo
make -j4 && sudo make install
Autre solution plus simple en passant par pi.apps : https://pi-apps.io/install-app/install-box64-on-raspberry-pi/
Pour cela, on installe pi-apps avec cette commande : wget -qO- https://raw.githubusercontent.com/Botspot/pi-apps/master/install | bash