--- # dontChroot: true = exécuté dans le live system. # ${ROOT} → substitué par Calamares (GlobalStorage "rootMountPoint"). # $(cat ...) → substitution bash pure, Calamares ne la touche PAS. dontChroot: true timeout: 7200 script: # Copie le kernel depuis l'ISO vers /boot du système cible - 'cp "$(find /run/archiso/bootmnt -name vmlinuz-linux 2>/dev/null | head -1)" "${ROOT}/boot/vmlinuz-linux"' # DNS : copie le vrai fichier resolv.conf (résout le symlink cassé dans le chroot) - 'cp --remove-destination "$(readlink -f /etc/resolv.conf)" "${ROOT}/etc/resolv.conf"' # Bypass temporaire du keyring pacman (vide dans le chroot fraîchement installé) # Empêche "error: keyring is not writable" lors du pacman -Sy dans le chroot. - 'sed -i "s/^SigLevel[[:space:]]*=.*/SigLevel = Never/" "${ROOT}/etc/pacman.conf" || true' # Lance le script d'init du bureau choisi - 'chroot "${ROOT}" /bin/bash "/usr/local/bin/fws-desktop-init-$(cat /run/fws-desktop 2>/dev/null || echo xfce)"' # Restaure SigLevel correct pour l'utilisateur final - 'sed -i "s/^SigLevel[[:space:]]*=.*/SigLevel = Required DatabaseOptional/" "${ROOT}/etc/pacman.conf" || true' # Copie le keyring du live system → le système installé aura un keyring fonctionnel - 'mkdir -p "${ROOT}/etc/pacman.d/gnupg" && chmod 700 "${ROOT}/etc/pacman.d/gnupg" && cp -a /etc/pacman.d/gnupg/. "${ROOT}/etc/pacman.d/gnupg/"' # Supprime le drop-in archiso (surcharge HOOKS inexistants post-install) - 'rm -f "${ROOT}/etc/mkinitcpio.conf.d/archiso.conf"' # Remplace le linux.preset archiso par le preset standard (default + fallback) - 'printf "PRESETS=(\x27default\x27 \x27fallback\x27)\nALL_kver=\x22/boot/vmlinuz-linux\x22\nALL_config=\x22/etc/mkinitcpio.conf\x22\nALL_microcode=(/boot/*-ucode.img)\ndefault_image=\x22/boot/initramfs-linux.img\x22\nfallback_image=\x22/boot/initramfs-linux-fallback.img\x22\nfallback_options=\x22-S autodetect\x22\n" > "${ROOT}/etc/mkinitcpio.d/linux.preset"'