Mise à jour du script d'installation : amélioration des messages et suppression de la connexion Wi-Fi automatique. Ajout d'un fichier README.md pour la documentation.

This commit is contained in:
Puechberty Arthur
2026-07-30 01:19:42 +02:00
parent a0e4ef9559
commit dd7d1a41cc
2 changed files with 63 additions and 22 deletions
+45
View File
@@ -0,0 +1,45 @@
# Arch Linux Auto-Install Script (Hyprland + Laptop Optimisé)
Script d'installation automatisée d'Arch Linux sans LUKS, avec BTRFS, systemd-boot et Hyprland.
## 🚀 Utilisation
Démarre sur la clé USB d'installation d'Arch Linux. Une fois sur le terminal root :
### 1. Configurer le clavier en Français
```bash
loadkeys fr-latin9
```
### 2. Se connecter au Wi-Fi (Requis pour télécharger le script)
```bash
iwctl
```
Une fois dans le prompt `iwctl` :
1. Cherche le nom de ton interface (souvent `wlan0`) : `device list`
2. Scanne les réseaux : `station wlan0 scan`
3. Affiche les réseaux : `station wlan0 get-networks`
4. Connecte-toi : `station wlan0 connect "TON_SSID_WIFI"` (remplace par le nom de ton réseau)
5. Tape ton mot de passe Wi-Fi quand demandé.
6. Quitte iwctl : `quit`
### 3. Télécharger et lancer le script
```bash
pacman -Sy --noconfirm git
git clone https://github.com/arthur-pbty/archinstallscript.git
cd archinstallscript
```
### 4. Vérifier les variables
Avant de lancer, vérifie que le disque cible et les mots de passe sont bons :
```bash
nano install.sh
```
*(Modifie les variables en haut du fichier, sauvegarde avec Ctrl+O, Entrée, quitte avec Ctrl+X)*
### 5. Lancer l'installation
```bash
chmod +x install.sh
./install.sh
```
Le PC s'éteindra/redémarrera tout seul à la fin.
+18 -22
View File
@@ -7,8 +7,7 @@ DISK="/dev/sda" # Disque cible (ex: /dev/sda ou /dev/nvme0n1)
USERNAME="archuser" # Ton nom d'utilisateur USERNAME="archuser" # Ton nom d'utilisateur
USER_PASS="motdepasse123" # Mot de passe utilisateur USER_PASS="motdepasse123" # Mot de passe utilisateur
ROOT_PASS="rootpassword123" # Mot de passe root ROOT_PASS="rootpassword123" # Mot de passe root
WIFI_SSID="TonReseauWiFi" # Nom du réseau Wi-Fi HOSTNAME="arch-laptop"
WIFI_PASS="CleWiFi123" # Clé WPA du Wi-Fi
# ============================================================================== # ==============================================================================
set -e set -e
@@ -29,27 +28,20 @@ else
MICROCODE_IMG="" MICROCODE_IMG=""
fi fi
# 2. Connexion Wi-Fi automatique # 2. Vérification d'internet (le script suppose que tu as utilisé iwctl avant)
echo "Configuration du Wi-Fi..."
WLAN_IF=$(ls /sys/class/net/ | grep -v lo | grep wlan | head -n 1)
if [ -n "$WLAN_IF" ]; then
iwctl --passphrase "$WIFI_PASS" station "$WLAN_IF" connect "$WIFI_SSID"
sleep 5
fi
if ! ping -c 1 archlinux.org &> /dev/null; then if ! ping -c 1 archlinux.org &> /dev/null; then
echo "Erreur : Pas de connexion internet. Vérifie tes variables Wi-Fi ou branche un câble Ethernet." echo "Erreur : Pas de connexion internet. Connecte-toi avec iwctl d'abord."
exit 1 exit 1
fi fi
echo "Connexion internet établie." echo "Connexion internet établie."
# 3. Synchronisation horloge et dépôts # 3. Synchronisation horloge et dépôts
echo "Préparation du système..." echo "Préparation du système..."
timedatectl set-ntp true timedatectl set-ntp true
pacman -Syy --noconfirm pacman -Syy --noconfirm
# 4. Partitionnement automatique # 4. Partitionnement automatique
echo "Partitionnement de $DISK..." echo "Partitionnement de $DISK..."
if [[ $DISK == *"nvme"* ]] || [[ $DISK == *"mmcblk"* ]]; then if [[ $DISK == *"nvme"* ]] || [[ $DISK == *"mmcblk"* ]]; then
PART_EFI="${DISK}p1" PART_EFI="${DISK}p1"
PART_ROOT="${DISK}p2" PART_ROOT="${DISK}p2"
@@ -62,8 +54,13 @@ sgdisk -Z "$DISK"
sgdisk -n 1:0:+300M -t 1:ef00 "$DISK" sgdisk -n 1:0:+300M -t 1:ef00 "$DISK"
sgdisk -n 2:0:0 -t 2:8300 "$DISK" sgdisk -n 2:0:0 -t 2:8300 "$DISK"
# CORRECTION DE L'ERREUR : Forcer le noyau à relire la table des partitions
partprobe "$DISK" 2>/dev/null || true
udevadm settle
sleep 1
# 5. Formatage et Montage BTRFS optimisé # 5. Formatage et Montage BTRFS optimisé
echo "Formatage BTRFS avec compression ZSTD..." echo "Formatage BTRFS avec compression ZSTD..."
mkfs.fat -F32 "$PART_EFI" mkfs.fat -F32 "$PART_EFI"
mkfs.btrfs -f "$PART_ROOT" mkfs.btrfs -f "$PART_ROOT"
@@ -72,20 +69,20 @@ mkdir -p /mnt/boot
mount "$PART_EFI" /mnt/boot mount "$PART_EFI" /mnt/boot
# 6. Installation du système strict minimum et optimisé # 6. Installation du système strict minimum et optimisé
echo "Installation des paquets (Noyau ZEN, Hyprland, Wayland, Opti Laptop)..." echo "Installation des paquets (Noyau ZEN, Hyprland, Wayland, Opti Laptop)..."
pacstrap /mnt base base-devel linux-zen linux-zen-headers linux-firmware btrfs-progs \ pacstrap /mnt base base-devel linux-zen linux-zen-headers linux-firmware btrfs-progs \
networkmanager iwd sudo git neovim \ networkmanager sudo git neovim \
$MICROCODE power-profiles-daemon thermald acpi acpid brightnessctl \ $MICROCODE power-profiles-daemon thermald acpi acpid brightnessctl \
pipewire pipewire-pulse pipewire-alsa pipewire-jack wireplumber \ pipewire pipewire-pulse pipewire-alsa pipewire-jack wireplumber \
mesa wayland xdg-desktop-portal xdg-desktop-portal-hyprland \ mesa wayland xdg-desktop-portal xdg-desktop-portal-hyprland \
hyprland kitty wofi waybar hyprpaper ttf-jetbrains-mono-nerd hyprland kitty wofi waybar hyprpaper ttf-jetbrains-mono-nerd
# 7. Génération fstab optimisée # 7. Génération fstab optimisée
echo "Génération du fstab..." echo "Génération du fstab..."
genfstab -U /mnt >> /mnt/etc/fstab genfstab -U /mnt >> /mnt/etc/fstab
# 8. Configuration système dans le chroot # 8. Configuration système dans le chroot
echo "Configuration du système..." echo "Configuration du système..."
cat > /mnt/setup.sh << EOF cat > /mnt/setup.sh << EOF
#!/bin/bash #!/bin/bash
set -e set -e
@@ -106,7 +103,7 @@ echo "$HOSTNAME" > /etc/hostname
cat << HOSTS > /etc/hosts cat << HOSTS > /etc/hosts
127.0.0.1 localhost 127.0.0.1 localhost
::1 localhost ::1 localhost
127.0.1.1 arch-laptop.localdomain arch-laptop 127.0.1.1 $HOSTNAME.localdomain $HOSTNAME
HOSTS HOSTS
# Utilisateurs # Utilisateurs
@@ -151,7 +148,6 @@ bootctl update
# Services modernes pour laptop # Services modernes pour laptop
systemctl enable NetworkManager systemctl enable NetworkManager
systemctl enable iwd
systemctl enable power-profiles-daemon systemctl enable power-profiles-daemon
systemctl enable thermald systemctl enable thermald
systemctl enable acpid systemctl enable acpid
@@ -193,7 +189,7 @@ rm /mnt/setup.sh
umount -R /mnt umount -R /mnt
echo "==================================================" echo "=================================================="
echo "INSTALLATION TERMINÉE AVEC SUCCÈS !" echo "INSTALLATION TERMINÉE AVEC SUCCÈS !"
echo "==================================================" echo "=================================================="
echo "Redémarrage dans 3 secondes..." echo "Redémarrage dans 3 secondes..."
sleep 3 sleep 3