Sun Jan 17 16:15:54 2021 UTC

Produire une ISO personalisée

[NOTE IMPORTANTE] Toutes les commandes mentionnées dans cet article doivent se faire en root.

Intallation d'une NuTyX

Assurez vous d'avoir installé les logiciels nécessaires

cards install git cdrtools syslinux libisoburn grub-efi dosfstools

Récupérer les outils

git clone https://github.com/NuTyX/packages-x86_64

La variable indispensable pour la construction sera utilisée tout au long du processus

La variable LFS DOIT être définie.

export LFS=/ISO-MINI

La chroot sera donc dans le dossier "/ISO-MINI". Libre à vous de choisir un autre dossier.

Installer le système de base

install-nutyx

Copier les fichiers pour l'iso

cp -av packages-x86_64/iso $LFS/ISO

Entrer dans la chroot

install-nutyx -ec

Mettre le kernel et l'initrd au bon endroit

mkinitramfs $(basename /lib/modules/*) -nf

Créer une NuTyX en fonction de ses besoins

Note à propos des locales

Il n'est plus necessaire d'installer les locales, en effet la commande cards upgrade se chargera d'installer la locale définie lors de la post-configuration.

Service DHCP

Si vous n'avez pas l'intention d'installer le paquet network-manager et si vous ne souhaitez pas utiliser une adresse statique. Vous souhaitez donc vous connectez via un service DHCP depuis la console non graphique. Il faut alors installer le paquet dhcpcd:

get dhcpcd

Installer les paquets pour l'installation en EFI

Si votre machine supporte l'UEFI, il est bon d'ajouter les paquets pour la gestion de celui-ci:

get efibootmgr dosfstools

Installer le support wifi

Si votre machine est capable de se connecter à un réseau sans fils, installez au moins les paquets suivants pour pouvoir en profiter:

get wireless-tools wpa-supplicant

Support de la souris dans la console

Si vous souhaitez utiliser la souris dans la console, installez les paquets:

get gpm gpm.service

Installer tous les paquets que vous souhaitez

get mate firefox lightdm ...

Supprimer les archives des binaires

cards purge

Génération de l'iso

Générer les fichiers squashfs

for dir in opt bin etc lib lib64 root run sbin usr var home
do
  [ -f /ISO/boot/$dir.squashfs ] && rm /ISO/boot/$dir.squashfs
  mksquashfs /$dir /ISO/boot/$dir.squashfs
done

Quitter NuTyX chroot

exit

Générer l'ISO

bash packages-x86_64/scripts/mkiso $(basename $LFS) $(basename $LFS/lib/modules/*)

Créer une clé USB amorçable

Insérer une clé USB et vérifer son emplacement avec la commande:

fdisk -l
........
Disk /dev/sdb: 960.8 MiB ......
Disk model: ...

Transférer l'image ISO sur la clé trouvée via la commande ci-dessus (remplacer sdX avec votre clé USB)

[Important] La command qui suit va tout supprimer les données qui se trouvent sur la clé.
dd if=$LFS/NuTyX_x86_64-ISO-MINI.iso of=/dev/sdX status=progress
sync

Conclusion

La taille de l'iso ne devrait pas dépasser 500 MB si vous n'avez rien ajouté de plus que les paquets ci-dessus. Vous la trouverez dans le dossier $LFS.

ls $LFS
bin   dev  home  lib  NuTyX_x86_64-ISO-MINI.iso     proc  run   srv  tmp  var
boot  etc  ISO   mnt  NuTyX_x86_64-20190626.md5sum  root  sbin  sys  usr