Arch-Linux-Cool/arch_install.md

424 lines
14 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Guide dinstallation dArchlinux avec GNOME (décembre 2024)
Dans ce petit guide, je vais détailler linstallation dArchlinux avec GNOME (pour les autres environnements de bureaux voir les sources ci-dessus). Linstallation terminée proposera un environnement suffisamment étoffé et stable.
Ce tutoriel permet d'installer une Archlinux en monoboot et dualboot avec Windows 11. Il n'y à pas de manipulations particulières à faire ci ce n'est de prévoir une partition UEFI (dédié de préférence) et d'installer Windows avant Archlinux. Pour plus d'infos voir le tuto de [Armand Philippot](https://www.armandphilippot.com/article/dual-boot-manjaro-windows-uefi=).
Sources :
- [Chennux](https://github.com/Chennux/arch-tuto-installation), [Fred Bezies](https://framagit.org/FredBezies/arch-tuto-installation/-/blob/master/install.md), [Cardiacman13](https://github.com/Cardiacman13/Architect/blob/main/lang/README.fr.md), [Archlinux](https://wiki.archlinux.org/title/Main_page_(Fran%C3%A7ais)).
## Préparatifs et installation de la base
### Clavier et connextion internet
Pour obtenir l'iso Archlinux : https://archlinux.org/download/.
Configurer le clavier en français :
```
loadkeys fr
```
Vérifier la connexion Internet :
```
ping 8.8.8.8
```
Si besoin, pour connecter le wifi il faut utiliser iwd (iNet wireless daemon) :
* https://wiki.archlinux.org/title/Network_configuration/Wireless;
* https://wiki.archlinux.org/title/Iwd
```
$ iwctl
```
Obtenir le nom du terminal wifi:
```
[iwd]# device list
```
Lister les réseaux valides :
```
[iwd]# station device get-networks
```
Se connecter au réseau:
```
[iwd]# station device connect "SSID"
```
### Partitionnement et montage des volumes
Si tout est fonctionnel, nous pouvons passer au partitionnement. Celui-ci peut se faire par gParted depuis un liveCD en amont : [Gparted](http://gparted.org/download.php), [Manjaro](https://manjaro.org/download/), [Linuxmint](https://www.linuxmint.com/download.php).
Il faut obligatoirement une table de partition GPT en cas dinstallation en mode UEFI. Si vous nêtes pas passé par gParted, il faut utiliser loutil cgdisk depuis le liveCD d'Archlinux.
#### Exemple de partitionnement
| Référence | Point de montage | Taille | Système de fichiers |
| --------- | ---------------- |----------------------------------------------------------------------------------------- | -------------------- |
| /dev/*xxx* | /boot/efi | 512 Mo | fat32 |
| /dev/*xxx* | / et /home | Le reste du disque (qui sera divisé en deux sous-volumes BTRFS
**Note:** La partition EFI est crée en amont de l'instalation, voir [ici](https://www.armandphilippot.com/article/dual-boot-manjaro-windows-uefi=).
La partition Windows est déjà crée. Attention à ne pas la modifier ou la supprimer. Ici la partition swap n'est pas envisagée.
Le partitionnement suitant est à appliquer (ici en ext4) :
```
mkfs.fat -F32 /dev/xxx (ne pas executer si windows est déja installé)
mkfs.btrfs /dev/xxx
```
La partition de swap si besoin :
```
mkswap /dev/xxx
swapon /dev/xxx
```
#### Les points de montage
```
mount -o compress=zstd,subvol=@ /dev/xxx /mnt
mkdir /mnt/{boot,boot/efi,home}
mount -o compress=zstd,subvol=@home /dev/xxx /mnt/home
mount /dev/xxx /mnt/boot/efi
```
### Installation de la base
#### Choix des mirroirs
Après avoir procédé au partitionnement et à lattribution des partitions, il faut récupérer la base de notre installation.
<br>
On peut configurer la liste des mirroirs avec [Reflector](https://wiki.archlinux.org/title/Reflector_(Fran%C3%A7ais)) :
```
reflector -c FR -p https -a 12 --sort rate --save /etc/pacman.d/mirrorlist
```
**Note :** Ici sont appelé les miroirs français utilisants le protocole https et mis à jour dans les 12 dernières heures. Nous les classons par rapidité et les enregistrons dans le fichier */etc/pacman.d/mirrorlist*.
#### Pacstrap
On passe à linstallation de la base:
```
pacstrap /mnt base linux linux-{headers,firmware} base-devel pacman-contrib man-{db,pages,pages-fr} texinfo btrfs-progs systemd-sysvcompat
```
```
pacstrap /mnt zip unzip p7zip nano gvim mc syslog-ng mtools dosfstools lsb-release ntfs-3g exfatprogs bash-completion ntp cronie
```
**Note :** Si on veut utiliser un noyau atlernatif (ex : linux-lts, linux-zen)
il faut remplacer le paquet *linux* par *linux-lts* et *linux-headers* par *linux-lts-headers*. Pour ntfs-3g, cest utile si vous êtes amené à utiliser des disques formatés en ntfs.
<br>
Si vous êtes sur un pc portable, lajout de [tlp](https://wiki.archlinux.org/index.php/TLP) est conseillé pour améliorer lautonomie de la batterie. Si vous désirez rajouter le support des microcodes pour votre processeur, il vous suffira de rajouter soit le paquet amd-ucode (pour AMD) ou intel-ucode (pour Intel). Grub détectera leur présence automatiquement.
### Premières configurations
#### Fichier fstab
Maintenant que les outils de base sont installés, il faut générer le fichier /etc/fstab qui liste les partitions présentes :
```
genfstab -U /mnt >> /mnt/etc/fstab
```
#### Réglages de l'OS
```
arch-chroot /mnt
```
Les valeurs linguistiques de l'OS pour les pays francophones comme la France, la Belgique, la Suisse, le Luxembourg ou encore le Canada francophone :
| Pays | Locale (LANG) | Clavier (KEYMAP) |
|------------|---------------|------------------|
| Belgique | fr\_BE.UTF-8 | be-latin1 |
| Canada | fr\_CA.UTF-8 | cf |
| France | fr\_FR.UTF-8 | fr-latin9 |
| Luxembourg | fr\_LU.UTF-8 | fr-latin9 |
| Suisse | fr\_CH.UTF-8 | fr\_CH-latin1 |
**Note :** ici on choisi les faleurs pour la France.
Clavier en mode texte, créez le fichier */etc/vconsole.conf* :
```
KEYMAP=fr-latin9
FONT=eurlatgr
```
Localisation française, le fichier */etc/locale.conf* :
```
LANG=fr_FR.UTF-8
LC_COLLATE=C
```
**Note :** La deuxième ligne est nécessaire si on apprécie davoir le tri par la « casse » (majuscule puis minuscule) activé. Merci à Igor Milhit pour la remarque !
**Note :** Il faut vérifier que les lignes *fr\_FR.UTF-8 UTF-8* et *en\_US.UTF-8 UTF-8* dans le fichier */etc/locale.gen* nont pas de \# devant elles :
Générer les traductions :
```
locale-gen
```
Spécifier la locale pour la session courante :
```
export LANG=fr_FR.UTF-8
```
Donner un nom à la machine dans le ficher */etc/hostname*. Taper le nom sur la première ligne.
Régler le fuseau horaire (ici Paris). Créer un lien symbolique :
```
ln -sf /usr/share/zoneinfo/Europe/Paris /etc/localtime
```
Ensuite, deux cas se présentent. Soit on a une machine en mono-démarrage sur Archlinux, et on peut demander à ce que lheure appliquée soit UTC, soit un double démarrage avec MS-Windows. Restons dans ce premier cas.
```
hwclock --systohc --utc
```
**Sinon, on ne touche à rien. MS-Windows est un goujat dans ce domaine.**
#### Générer l'image du noyau.
```
mkinitcpio -p linux
```
**Note :** ou *linux-lts* si vous voulez le noyau lts.
**Note :** si vous avez une « hurlante » contenant « /run/lvm/lvmetad.socket: connect failed » ou quelque chose dapprochant, ce nest pas un bug. Cest une alerte sans conséquence. Cf : <https://wiki.archlinux.org/index.php/GRUB#Boot_freezes>
#### Grub, le chargeur de démarrage
```
pacman -Syy grub os-prober efibootmgr
```
```
mount | grep efivars &> /dev/null || mount -t efivarfs efivarfs /sys/firmware/efi/efivars
```
**Note :** cette ligne permet de vérifier un point de montage et de lactiver au besoin.
```
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck
```
**Note :** cette ligne installe Grub.
Pour éviter tout problème de démarrage par la suite (spécialement dans VirtualBox), il est conseillé de rajouter les commandes suivantes :
```
mkdir /boot/efi/EFI/boot
```
```
cp /boot/efi/EFI/arch_grub/grubx64.efi /boot/efi/EFI/boot/bootx64.efi
```
Après avoir généré l'image noyau et installé grub, il faut passer au fichier de configuration du lanceur :
```
grub-mkconfig -o /boot/grub/grub.cfg
```
**Note :** en cas de double démarrage avec une autre distribution GNU/Linux déjà installée, il n'est pas indispensable d'installer de bootloader sous Archlinux. Il suffit de faire une commande comme update-grub dans la distribution installée en parallèle d'Archlinux.
Bien entendu, aucune erreur ne doit apparaître.
#### Saisie du mot de passe root
```
passwd
```
#### Réseau
Installer et activer NetworkManager :
```
pacman -S networkmanager
```
```
systemctl enable NetworkManager
```
Installer et activer le bluetooth :
```
pacman -S bluez bluez-utils bluez-plugins
```
```
systemctl enable --now bluetooth.service
```
**NOTE 1 :** pour utiliser NetworkManager avant d'y avoir accès graphiquement : https://wiki.archlinux.org/title/Netctl_(Fran%C3%A7ais)
#### Configuration de *pacman.conf*
```
UseSyslog
Color
CheckSpace
VerbosePkgLists
ParallelDownloads = 5
ILoveCandy
```
#### Quitter et redémarrer
```
exit
umount -R /mnt
reboot
```
**Note :** éjecter le support dinstallation pour éviter des problèmes au démarrage suivant.
## Installation de l'environnement graphique
#### Connecter NetworkManager
Il y a des étapes communes à tous les environnements. Une fois le système redémarré, on se connecte **en root**. NetworkManager étant déja installé le réseau fonctionne. Pour le wifi :
```
nmcli device wifi list
```
```
nmcli device wifi connect SSID_or_BSSID password password
```
#### Logs en clair
Si on veut avoir les logs en clair en cas de problème, il faut modifier le fichier */etc/systemd/journald.conf* en remplaçant la ligne :
***#ForwardToSyslog=no*** par ***ForwardToSyslog=yes***
#### Installer les greffons gstreamer
Les greffons gstreamer donneront accès aux fichiers multimédias une fois Gnome lancé :
```
pacman -S gst-plugins-{base,good,bad,ugly} gst-libav
```
#### Installer Xorg
```
pacman -S xorg-{server,xinit,apps} xdg-user-dirs
```
**Note :** pour le pavé tactile de certains ordinateurs portables -> *xf86-input-synaptics*.
#### Pilotes graphiques
Ici la liste des pilotes disponibles selon les cartes graphiques :
* https://wiki.archlinux.org/index.php/Xorg#Driver_installation
Il est recommandé dans la plupart des cas de n'installer aucun pilote pour les cartes graphiques Intel:
* https://wiki.archlinux.org/index.php/Intel_graphics#Installation
Sinon :
```
pacman -S mesa
```
#### Installer les polices
```
pacman -S ttf-{bitstream-vera,liberation,dejavu,carlito,caladea} gnu-free-fonts freetype2 noto-fonts{,-extra,-cjk,-emoji}
```
**Note :** pour les polices Microsoft, le paquet *ttf-ms-fonts* est dans l'AUR
#### Installer les pilotes d'impression
```
sudo pacman -S --needed ghostscript gsfonts cups cups-filters cups-pdf system-config-printer avahi
```
```
sudo pacman -S --needed foomatic-db-engine foomatic-db foomatic-db-ppds foomatic-db-nonfree foomatic-db-nonfree-ppds gutenprint foomatic-db-gutenprint-ppds
```
#### Installer les premiers logiciels
```
pacman -S firefox firefox-i18n-fr thunderbird-i18n-fr libreoffice-still libreoffice-still-fr hunspell hunspell-fr gimp gimp-help-fr inkscape scribus sane vlc gnome-disk-utility neofetch fastfetch glances htop nmon screenfetch lm_sensors nvtop ncdu keepassxc shotwell rhythmbox
```
#### Créer un utilisateur classique (et son mot de passe) et Configurer visudo
```
useradd -m -g wheel -c 'Nom complet de lutilisateur' -s /bin/bash nom-de-lutilisateur
```
```
passwd nom-de-lutilisateur
```
On va configurer sudo en utilisant visudo qui modifie */etc/sudoers*.Penser à préciser l'éditeur souhaité en exécutant la commande :
```
EDITOR="nano" visudo
```
Il faut aller au bas du fichiers et décommenter la ligne qui suit ***"# Uncomment to allow members of group wheel to execute any command"*** :
```
## Uncomment to allow members of group wheel to execute any command │
%wheel ALL=(ALL:ALL) ALL
```
#### Installer YaY
```
sudo pacman -S git
```
```
git clone https://aur.archlinux.org/yay
cd yay
makepkg -sri
```
#### Activer les services
Pour être certain davoir le bon clavier au démarrage de GDM :
```
sudo localectl set-x11-keymap fr
```
Pour les services :
```
sudo systemctl enable syslog-ng@default → *gestion des fichiers denregistrement dactivité*
sudo systemctl enable cronie → *pour les tâches récurrentes*
sudo systemctl enable avahi-{daemon,dnsconfd} → *dépendances de Cups*
sudo systemctl enable cups → *cups pour les imprimantes*
sudo systemctl enable ntpd → *pour synchroniser lheure en réseau.*
sudo systemctl enable systemd-oomd → *tue automatiquement les processus trop gourmands*
sudo systemctl enable fstrim.timer → *optimisations pour les SSD (inutile sur les HDD)*
```
```
exit
```
## Installation de Gnome
* https://wiki.archlinux.org/title/GNOME
Installer les paquets de GNOME. Le paquet telepathy permet dajouter le maximum de support pour les comptes utilisateurs en ligne.
```
sudo pacman -S gnome system-config-printer telepathy unoconv mtpfs
```
Ensuite, on lance GDM :
```
sudo systemctl start gdm.service
```
Si tout se passe bien : on l'active au démarrage.
```
sudo systemctl enable gdm.service
```
Il faut penser à vérifier que le clavier est correctement configuré. Ce qui se fait dans menu système unifié, paramètres.
La distrubution Archlinux avec l'environnement de bureau Gnome est maintenant installée et fonctionnelle.