Forum

Sun Feb 11 11:00:53 2024 UTC
Sortie de la dernière version de NuTyX
NuTyX 24.02.0 disponible avec cards 2.7.4
Sat Jan 20 21:12:08 2024 UTC
Générale
Re : Flatpak Steam -- bwrap executable not setuid root
Sat Jan 20 16:29:57 2024 UTC
Matériel
Re : WiFi Intel/iwlwifi
Sat Jan 20 06:24:23 2024 UTC
Matériel
Re : WiFi Intel/iwlwifi
Sat Jan 13 18:02:18 2024 UTC
Matériel
Re : WiFi Intel/iwlwifi
Sun Jan 7 19:14:00 2024 UTC
Matériel
WiFi Intel/iwlwifi [résolu]
Mon Dec 25 08:58:18 2023 UTC
Générale
Re : Mise à jour nutyx sans tout réinstaller
Sun Dec 24 18:06:32 2023 UTC
Générale
Re : Mise à jour nutyx sans tout réinstaller
Sat Dec 23 14:39:14 2023 UTC
Générale
Mise à jour nutyx sans tout réinstaller
Wed Dec 6 21:13:45 2023 UTC
Générale
Re : Installation sous Mac

Sat Mar 2 10:50:16 2024 UTC

Le script install-nutyx

Préliminaires

Le script peut être démarré depuis une NuTyX déjà installée, une ISO 'LIVE' ou depuis une autre distribution.

Assurez-vous d'utiliser l'interpréteur de commande Bash, sinon le script ne fonctionnera pas.

Si vous utilisez une distribution externe, assurez-vous qu'elle utilise une glibc compatible avec celle de NuTyX, sinon le script ne fonctionnera pas.

Il doit être lancé depuis le compte root.

Ce script permet l'installation d'une NuTyX de base dans un dossier ou sur une partition montée.

Sa signature peut être vérifiée en téléchargeant le fichier: http://www.nutyx.org/install-nutyx.md5sum

Si vous choisissez systemD comme system d'init, assurez-vous d'ajouter le point de montage de NuTyX dans le fichier /etc/fstab de celle-ci, sinon NuTyX démarrera en lecture seule par défaut.

[Important] Ce script ne permet pas d'écraser une autre distribution ou une NuTyX déjà installée dans le dossier cible (/mnt/hd par défaut). Et donc si vous devez relancez le script il est important d'effacer le contenu du dossier cible au préalable.

Faisons simple pour commencer

Si vous êtes sur une NuTyX, le traditionnel exemple tout simple histoire de se faire rapidement une idée.

Le script permet d'installer une NuTyX de base dans le dossier /mnt/hd.

La commande est tout simplement:

bash install-nutyx

L'installation commence immédiatement.

Variables de configuration

L'utilisation de variables permettent l'adaptation du script à différents scénarios:
LFS Chemin d'installation Convient dans la plus part des cas.
CHROOT Liste supplémentaire de paquets à installer avant l'entrée dans chroot par le script install-nutyx lui-même. A utiliser lors d'une installation depuis une autre distribution.
URL Adresse http du serveur de dépot. Permet de choisir son propre serveur de dépot.
VERSION Détermine la version à installer, rolling ou testing. Le nom de la version n'est pas vérifiée par le script.
On peut donc choisir n'importe quelle valeur pour autant que celle-ci existe dans les dépots.
KERNEL Par défaut aucun kernel n'est installé, à vous de choisir le kernel à installer. Nom des kernels disponible:
kernel-419, kernel-54, kernel-510, kernel-515, kernel-61, kernel-66 ou kernel.
DEPOT Le dossier local utilisé pour les binaires téléchargés. Cette variable est utilisée dans le cas d'un point de montage (voir la variable MOUNT).
MOUNT Le dossier local utilisé pour le montage des paquets à installer. Permet une installation sans connection internet.
ISO Si l'on souhaite générer une ISO depuis cette l'installation. On spécifiera le nom de l'iso à génére via cette variable. Voir ci-dessous

Le script va analyser le contenu du fichier /etc/install-nutyx.conf si il existe et en utiliser les variables définies dans ce dernier. Voici un exemple complet du fichier /etc/install-nutyx.conf:

URL="http://localhost"
DEPOT="/DEPOT"
LFS="/mnt/lfs"
VERSION="rolling"

Utilisation typique du script: Installer NuTyX depuis l'iso 'LIVE'

  • Ouvrir un terminal et passer en root si ce n'est pas encore le cas:
    sudo bash
  • S'assurer que la connection réseau est fonctionnelle:
    ping nutyx.org
  • Créer les partititons necessaire pour la mise en place de NuTyX
    cfdisk /dev/sda
    • Pour une machine 'UEFI': Choisir une table de partition 'GPT'. Définir la première partition en 'Système EFI'. La taille de la partition doit être de 50 Moctets minimum si vous installez NuTyX dans une machine virtuelle. Si par contre, vous installez NuTyX en dur, sachez que l'espace utilisé sera en dessous des 400 Koctets, dans ce cas une partition 'Système EFI' de 512Ko suffira. Formater la partition en vfat.
    • Pour une machine 'BIOS': Choisir une table de partition 'GPT' ou 'msdos'. Aucune autre restriction.
  • Réserver une partition de 4G octets si vous avez 2G octets ou plus de RAM. Sinon, réserver une partition dont la taille sera le double de la taille de la RAM
  • Formater les différentes partitions, dans notre exemple, nous avons 3 ou 2 partitions en fonction de la machine (UEFI ou BIOS):
    • Pour la machine UEFI:
      mkfs.vfat /dev/sda1
      mkswap /dev/sda2
      mkfs.ext4 /dev/sda3
    • Pour la machine BIOS:
      mkswap /dev/sda1
      mkfs.ext4 /dev/sda2
  • Monter les partitions de destination
    • Pour la machine UEFI:
      mount /dev/sda3 /mnt/hd
      mkdir -p /mnt/hd/boot/efi
      mount /dev/sda1 /mnt/hd/boot/efi
    • Pour la machine BIOS:
      mount /dev/sda2 /mnt/hd
  • Activer la partition de swap:
    • Pour la machine UEFI:
      swapon /dev/sda2
    • Pour la machine BIOS:
      swapon /dev/sda1
  • Installation de la NuTyX de base avec le dernier kernel:

    Si vous utilisez une ISO NuTyX:

    KERNEL=kernel install-nutyx

    Si vous utilisez une autre distribution:

    CHROOT="coreutils" SHELL=/bin/bash KERNEL=kernel install-nutyx
  • Une fois l'installation terminée, entrer dans la NuTyX fraîchement installée via la commande:
    install-nutyx -ec
  • Pour la machine UEFI, installer le paquet efibootmgr:
    cards install efibootmgr
  • Rendre la NuTyX amorçable
    • Pour la machine EFI:
      grub-install --target=x86_64-efi /dev/sda
      ou
      grub-install --target=i386-efi /dev/sda
    • Pour la machine BIOS:
      grub-install --target=i386-pc /dev/sda
  • Voir cet article si vous souhaitez changer le système d'initialisation par défaut.

    Créer le fichier /boot/grub/grub.cfg

    grub-mkconfig -o /boot/grub/grub.cfg
  • Sortir et démonter les partitions
    exit
    umount -Rv /mnt/hd
    
  • Retirer le média d'amorçage et redémarrer la machine

Par défaut, ce sera la branche rolling qui sera choisie à l'installation, il est possible de spécifier la branche que l'on souhaite installer. Pour installer une version spécifique de NuTyX, on utilise la variable VERSION. A condition que la version existe sur le miroir de dépot:

VERSION="testing" bash install-nutyx

Par défaut, ce sera l'URL par défaut qui sera utilisée lors du téléchargement et la configuration de la NuTyX. Pour spécifier une URL personalisée, on utilise la variable URL

URL="http://192.168.0.254" bash install-nutyx

Par défaut, ce sera le dossier /mnt/hd qui sera utilisé pour l'installation, la variable LFS permet de spöcifier un nouveau dossier de destination:

LFS="/MA-NUTYX" bash install-nutyx
Le dossier sera automatiquement créé si il n'existe pas.

On peut spécifier plusieurs variables:

LFS="/MINI-ISO" \
VERSION="rolling" \
URL="http://192.168.0.254" \
CHROOT="acl attr expat" \
bash install-nutyx

Si vous souhaitez pousser la configuration encore plus loin, il est également possible de placer des fichiers de configuration personnalisés dans le dossier /etc/install-nutyx.conf.d/.

Le script va analyser le contenu du fichier /etc/install-nutyx.conf si il existe et en utiliser les variables définies dans ce dernier. Lors de l'installation de NuTyX, le script utilisera les fichiers trouvés dans ce dossier en place des fichiers par défaut

Liste des fichiers de configuration reconnus:
cards.conf /etc/cards.conf
pkgmk.conf /etc/pkgmk.conf
fstab /etc/fstab
.bashrc /root/.bashrc et /home/<nomutilisateur>/.bashrc
bashrc /etc/bashrc
profile /etc/profile
hosts /etc/hosts
inputrc /etc/inputrc
rc_site /etc/sysconfig/rc_site
.bash_profile /root/.bash_profile et /home/<nomutilisateur>/.bash_profile
.dmrc /etc/skel/.dmrc
shells /etc/shells
dircolors.sh /etc/profile.d/dircolors.sh
extrapaths.sh /etc/profile.d/extrapaths.sh
readline.sh /etc/profile.d/readline.sh
umask.sh /etc/profile.d/umask.sh
modules /etc/sysconfig/modules
createfiles /etc/sysconfig/createfiles
mouse /etc/sysconfig/mouse

En conclusion:

[Important] Si vous ne souhaitez pas que le script utilise les fichiers présents Veuillez penser à supprimer/revoir les fichiers /etc/install-nutyx.conf et contenu du dossier /etc/install-nutyx.d/ si necessaire.

Générer une ISO personnalisée

[Important] La génération d'une ISO n'est possible que sur une NuTyX. Autrement dit il n'est pas possible d'utiliser une autre distribution pour construire une ISO.

Comme précisé plus haut, la variables ISO permet de spécifier le nom de l'ISO à générer.

Par exemple, la commande ci-dessous:

sudo ISO=gnome bash install-nutyx
installera et produira une NuTyX gnome dans le dossier /mnt/hd

Les noms d'ISO possible sont:

strict, mini, base, cli, gui, xorg, gui_extra, openbox, jwm, lxde, xfce4, mate, gnome et kde5

Il est possible de faire un test de la commande et ainsi de visualiser toutes les commandes qui sont concernées.

ISO=gnome bash install-nutyx -t

List of variables: 

LFS          : /mnt/hd
URL          : http://downloads.nutyx.org
VERSION      : rolling
KERNEL       :
DEPOT        : /var/lib/pkg/depot
MOUNT        :
SHELL        : /bin/bash
DEPOT_BASE   : http://downloads.nutyx.org/x86_64/rolling/base
CHROOT       : nutyx busybox curl gcc bzip2 glibc zlib lz4 xz zstd \
libarchive openssl cards
CORE         : acl attr bash coreutils readline expat ncurses lzo gmp \
flex file gzip mpc mpfr grep sed findutils binutils inetutils diffutils \
shadow bc less libcap util-linux kmod kbd pam gdbm e2fsprogs libpipeline \
gettext procps-ng psmisc sudo tzdata iproute2 iana-etc groff man-db \
cards.man nutyx.man dialog cpio squashfs lsb-release grub eudev sysklogd \
sysvinit kernel efibootmgr linux-firmware systemd runyx wireless-tools \
wpa-supplicant gpm gpm.service dosfstools make-ca xdg-user-dirs \
sound-theme-freedesktop ntp ntp.service flcards gvfs network-manager-applet \
xorg-xinit xorg-xf86-input-synaptics xorg-xf86-input-wacom \
xorg-xf86-video-ati xorg-xf86-video-fbdev xorg-xf86-video-intel \
xorg-xf86-video-nouveau xorg-xf86-video-vesa xorg-xrandr xorg-setxkbmap \
firefox thunderbird gparted leafpad scrot vlc telegram gnome epiphany \
seahorse-nautilus evolution simple-scan gnome-weather gnome-chess balsa
DEVEL        :
mkinitramfs $(basename /lib/modules/*)
mv boot/initrd-* boot/initrd-stable
cards purge
exit 0
ISO          : GNOME
STRICT       : kernel
MINI         : dhcpcd
BASE         : efibootmgr linux-firmware systemd runyx wireless-tools \
wpa-supplicant
CLI          : gpm gpm.service dosfstools make-ca xdg-user-dirs \
sound-theme-freedesktop ntp ntp.service
GUI          : flcards gvfs network-manager-applet
GUI_EXTRA    : firefox thunderbird gparted leafpad scrot vlc telegram
XORG         : xorg-xinit xorg-xf86-input-synaptics xorg-xf86-input-wacom \
xorg-xf86-video-ati xorg-xf86-video-fbdev xorg-xf86-video-intel \
xorg-xf86-video-nouveau xorg-xf86-video-vesa xorg-xrandr xorg-setxkbmap
GNOME_EXTRA  : epiphany seahorse-nautilus evolution simple-scan \
gnome-weather gnome-chess balsa
KDE5_EXTRA   : kdenlive k3b
CDE          : cde
OPENBOX      : lxdm openbox openbox-jp-theme
JWM          : lxdm jwm
LXDE         : lxdm lxde
LXQT         : breeze-gtk sddm lxqt
CINNAMON     : lightdm cinnamon
ENLIGHTENMENT: lightdm enlightenment
XFCE4        : lxdm xfce4 xfce4-extra
BUDGIE       : budgie
MATE         : lightdm mate
GNOME        : gnome
KDE5         : adwaita-qt kde5
ISO Filename /mnt/hd/NuTyX_x86_64-21.03.0-rc4-GNOME.iso

Comme on peut le voir, de nouvelles variables sont désormais disponible. Celles-ci peuvent également être redéfinies à votre convenance:

STRICT, BASE, CLI, GUI, GUI_EXTRA, XORG, GNOME, GNOME_EXTRA, KDE5, KDE5_EXTRA, BUDGIE, CINNAMON, ENLIGHTENMENT, CDE, OPENBOX, JWM, LXDE, XFCE4, MATE.

Chaque variable spécifie un jeu de paquets à installer. Chaque nom d'ISO utilise un ensemble de ces variables pour assembler l'ISO spécifiée. Cela signifie que, en spécifiant vos propres jeux de paquet pour certaines ou toutes ces variables, vous générer votre ISO personnalisée.

La table ci-dessous montre quelle combinaison de variables est utilisée pour chaque ISO.

Combinations des variables disponibles pour chaque nom d'ISO:
STRICT STRICT
MINI STRICT + MINI
BASE STRICT + BASE
CLI STRICT + BASE + CLI
GUI STRICT + BASE + CLI + GUI
XORG STRICT + BASE + CLI + GUI + XORG
JWM STRICT + BASE + CLI + GUI + GUI_EXTRA + XORG + JWM
OPENBOX STRICT + BASE + CLI + GUI + GUI_EXTRA + XORG + OPENBOX
LXDE STRICT + BASE + CLI + GUI + GUI_EXTRA + XORG + LXDE
XFCE4 STRICT + BASE + CLI + GUI + GUI_EXTRA + XORG + XFCE4
MATE STRICT + BASE + CLI + GUI + GUI_EXTRA + XORG + MATE
CDE STRICT + BASE + CLI + GUI + GUI_EXTRA + XORG + CDE
ENLIGHTENMENT STRICT + BASE + CLI + GUI + GUI_EXTRA + XORG + ENLIGHTENMENT
CINNAMON STRICT + BASE + CLI + GUI + GUI_EXTRA + XORG + CINNAMON
BUDGIE STRICT + BASE + CLI + GUI + GUI_EXTRA + XORG + BUDGIE
GNOME STRICT + BASE + CLI + GUI + GUI_EXTRA + XORG + GNOME + GNOME_EXTRA
KDE5 STRICT + BASE + CLI + GUI + GUI_EXTRA + XORG + KDE5 + KDE5_EXTRA

Quelques exemples

sudo ISO=KDE5 install-nutyx

installe et produit une ISO kde5 standard dans le dossier /mnt/hd

sudo \
ISO="lxde" \
XORG="xorg-xf86-input-synaptics" \
BASE="linux-firmware wireless-tools wpa-supplicant" \
GUI="xorg-xrandr" \
GUI_EXTRA="deadbeef geany firefox" \
DEVEL="&& setup-nutyx start && echo 'ready ?' && read a" \
CLI="dhcpcd openssh git cdrtools syslinux libisoburn dosfstools" \
LFS="/MyIso" \
DEPOT="/media/www" \
MOUNT="/media/www" \
install-nutyx

installe et produit une ISO lxde personalisée. Les variables BASE, CLI, GUI, XORG, GUI_EXTRA, DEVEL, LFS, MOUNT et DEPOT sont redéfinies.

Soyez le premier à venir commenter le sujet.