:: Installation d'Archlinux et Wayland sur Asus Zenbook ::
Liens intéressants
Arch Linux
Wayland
Installation d'Arch Linux
Caractéristiques du portable
|
Asus Zenbook UX 303 LN |
Ecran |
13.3 pouces, résolution 3200x1800px, IPS, tactile |
Processeur |
Intel Haswell Core i7-4510U CPU |
Chipset |
Intel HM87 |
Video |
Intel 4400 HD intégré + Nvidia GeForce GT840M 2Go |
Memory |
8Go DDR3 |
Stockage |
256Go SSD |
Connectivity |
Wireless AC, Bluetooth, Lan (avec adapteur USB-Ethernet) |
Ports |
3 x USB3.0, lecteur de carte SD, HDMI, mini-DisplayPort |
Batterie |
50 Wh |
Dimensions |
Epaisseur 21mm avec les pieds (18mm sans) |
Poids |
1.5 kg (3.3 pounds) |
Extras |
Clavier retro-éclairé, haut-parleurs Bang and Olufsen |
Préparation de l'installation
Télécharger la dernière iso sur le site de téléchargement Arch Linux et vérifier son intégrité à l'aide des sommes de contrôle MD5 ou SHA1 :
$ wget http://archlinux.mirrors.ovh.net/archlinux/iso/2021.02.01/archlinux-2021.02.01-x86_64.iso
$ wget http://archlinux.mirrors.ovh.net/archlinux/iso/2021.02.01/sha1sums.txt
$ sha1sum -c sha1sums.txt
Créer la clé USB
$ sudo dd if=archlinux-2021.02.01-x86_64.iso of=/dev/sdx bs=16384
où /dev/sdx correspond au périphérique USB (Attention à ne pas se tromper !!)
Démarrage de l'installation
Démarrer sur la clé et sélectionner "Arch Linux install medium (x86_64, UEFI)" dans le menu de démarrage. On arrive sur la ligne de commande avec un prompt root.
Agencement du clavier
# loadkeys fr
Pour lister les agencements disponibles :
# find /usr/share/kbd/keymaps/ -type f
Vérifier que l'on est en mode EFI. Si c'est bien le cas, la commande ci-dessous doit afficher les variables EFI :
# efivar -l
Connexion réseau wifi
Utiliser la commande iwctl
fournie par iwd (iNet wireless daemon) :
# iwctl device list ---> Récupérer le nom de l'interface (ici, wlan0)
# iwctl station wlan0 scan ---> Scan wifi
# iwctl station wlan0 get-networks ---> Lister les réseaux wifi détectés
# iwctl --passphrase passphrase station wlan0 connect myssid ---> Connexion au point d'accès
# ping www.google.com ---> Test de la connexion
Partitionner l'espace disque.
Schéma de partitionnement cible :
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 238,5G 0 disk
├─sda1 8:1 0 512M 0 part /boot/efi
├─sda2 8:2 0 512M 0 part /boot
└─sda3 8:3 0 237,5G 0 part
└─cryptroot 254:0 0 G 0 crypt
├─vg0-swap 254:1 0 G 0 lvm [SWAP]
├─vg0-root 254:2 0 G 0 lvm /
└─vg0-home 254:3 0 G 0 lvm /home
Création des partitions
# gdisk /dev/sda
Partition |
Périphérique |
Taille |
Système |
Hex code |
EFI |
/dev/sda1 |
512M |
vfat |
ef00 |
boot |
/dev/sda2 |
512M |
ext2 |
8300 |
cryptroot |
/dev/sda3 |
Espace disque restant |
luks |
8300 |
# mkfs.vfat -F32 /dev/sda1
# mkfs.ext2 /dev/sda2
Chiffrement de la partition principale
# cryptsetup luksFormat -c aes-xts-plain64 -s 512 -h sha512 -y --use-random /dev/sda3
# cryptsetup luksOpen /dev/sda3 crypt
Création des volumes logiques
Créer un groupe de volume (arch) et les volumes logiques suivants :
Volume logique |
Taille |
swap |
8G |
root |
40G |
home |
le reste |
# pvcreate /dev/mapper/crypt
# vgcreate arch /dev/mapper/crypt
# lvcreate --size 8G arch --name swap
# lvcreate --size 40G arch --name root
# lvcreate --extents +100%FREE vg0 --name home
Création des systèmes de fichiers
# mkfs.ext4 /dev/mapper/arch-root
# mkfs.ext4 /dev/mapper/arch-home
# mkswap /dev/mapper/arch-swap
# swapon /dev/mapper/arch-swap
Montage des partitions
# mount /dev/mapper/arch-root /mnt
# mkdir /mnt/boot && mount /dev/sda2 /mnt/boot
# mkdir /mnt/boot/efi && mount /dev/sda1 /mnt/boot/efi
# mkdir /mnt/home && mount /dev/mapper/arch-home /mnt/home
Sélection des miroirs
Automatique
Sur le système Live, lorsqu'on active la connexion internet, reflector met à jour la liste des miroirs en choisissant les 70 derniers miroirs synchronisés et en les classant par leur bande passante (le plus rapide en haut).
Manuelle
Décommenter et déplacer le miroir préféré en haut du fichier /etc/pacman.d/mirrorlist
.
Préférer un miroir géographiquement proche (vérifier sur http://archlinux.org/mirrorlist/).
Installation du système et des outils nécessaires au premier démarrage.
Système de base
# pacstrap /mnt base base-devel linux linux-firmware
Outils supplémentaires (liste non-exhaustive) :
# pacstrap /mnt grub efibootmgr mkinitcpio lvm2 iwd vim bash-completion man-db
Création du fstab
# genfstab -pU /mnt >> /mnt/etc/fstab
tempfs sur /tmp
# /tmp
tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
Remplacer les options relatime
par noatime
sur les partitions sauf celle de boot (limite les accès et augmente donc la durée de vie d'un disque SSD).
Entrer dans le nouveau système
# arch-chroot /mnt /bin/bash
Fuseau horaire
# ln -sf /usr/share/zoneinfo/Europe/Paris /etc/localtime
# hwclock --systohc --utc
Localisation
Décommenter fr_FR.UTF-8 UTF-8
dans le fichier puis regénérer les locales :
# locale-gen
/etc/locale.conf
LANG=fr_FR.UTF-8
/etc/vconsole.conf
KEYMAP=fr
Nom d'hôte
Utilisateurs
Modification du mot de passe root
# passwd
Utilisateur supplémentaire
# useradd -m -g users -G wheel username
# passwd username
Configuration de mkinitcpio
Editer le fichier /etc/mkinitcpio.conf
Ajouter les options suivantes avant 'filesystems' :
- keymap : chargement du clavier
- encrypt : gestion du chiffrement
- lvm2 : gestion des volumes logiques
- resume : gestion du mode hibernation
Note : quelque soit l'ordre choisi, pensez toujours à placer keymap devant encrypt, sous peine de vous retrouver avec un clavier qwerty pour taper la passphrase permettant de déchiffrer le volume principal
Au final, cela donne :
HOOKS=(base udev autodetect modconf block keymap encrypt lvm2 resume filesystems keyboard fsck)
Regénérer l'image initrd
# mkinitcpio -p linux
GRUB
Installation
# grub-install
Configuration
Editer le fichier /etc/default/grub
et modifier la variable GRUB_CMDLINE_LINUX
afin de préciser le périphérique chiffré (cryptroot) et le périphérique d'hibernation (partition de swap) :
GRUB_CMDLINE_LINUX="cryptdevice=/dev/sda3:crypt resume=/dev/mapper/arch-swap"
Regénérer le grub.cfg
# grub-mkconfig -o /boot/grub/grub.cfg
Fin de l'installation et redémarrage
# exit
# umount -R /mnt
# swapoff -a
# reboot
Au démarrage la passphrase est demandée afin de déchiffrer le volume puis on accède à la console.
On a maintenant un système minimal installé et fonctionnel.
Gestion d'écran HiDPI (High Dots Per Inch)
L'écran de l'UX303LN est un écran 13.3" avec une résolution QuadHD+ de 3200x1800 pixels.
Les éléments affichés apparaissent donc trés petits (boutons, polices, etc.), à la limite du lisible.
Vous trouverez ci-dessous une liste (non exhaustive) de modifications permettant de profiter pleinement d'une haute résolution sans avoir besoin d'une loupe :-)
Paramètres X
En l'absence d'un environnement de bureau manipulant les paramètres X (Gnome, KDE, Xfce, etc.), il faut définir ces paramètres manuellement dans le fichier ~/.Xresources :
# Gestion HiDPI
Xft.dpi: 192
Xft.autohint: 0
Xft.lcdfilter: lcddefault
Xft.hintstyle: hintfull
Xft.hinting: 1
Xft.antialias: 1
Xft.rgba: rgb
Note : Adaptez le paramètre Xft.dpi à votre définition d'écran (ici 192dpi).
XTerm
Ici aussi on modifie le fichier ~/.Xresources pour préciser la police désirée, sa taille et sa résolution :
# Police XTerm
xterm*faceName:DejaVu Sans Mono:size=11:antialias=false
xterm*font: 7x13
Note : Modifiez ces paramètres selon vos desideratas.
Firefox et Thunderbird
Dans Firefox, aller dans les préférences avancées (about:config
) et modifier le paramètre layout.css.devPixelsPerPx
à 2 (défaut : -1).
Dans le cas d'une utilisation multi-écran, il est possible d'utiliser le module Firefox AutoHiDPI (Non testé).
Dans Thunderbird, les paramètres avancés sont disponibles sous Edition / Préférences / Avancé / Editeur de configuration.
Important : Il est vivement conseillé de se documenter sur AUR afin d'en comprendre les mécanismes et d'utiliser yaourt, ainsi que ABS et makepkg.
Méthode 1 - Installation depuis AUR
curl -O https://aur.archlinux.org/packages/pa/package-query/package-query.tar.gz
tar zxvf package-query.tar.gz
cd package-query
makepkg -si
cd ..
curl -O https://aur.archlinux.org/packages/ya/yaourt/yaourt.tar.gz
tar zxvf yaourt.tar.gz
cd yaourt
makepkg -si
cd ..
Méthode 2 - Installation depuis le dépôt archlinux.fr
Editer le fichier /etc/pacman.conf et ajouter les lignes suivantes :
[archlinuxfr]
SigLevel = Never
Server = http://repo.archlinux.fr/$arch
Puis, installer le paquet yaourt :
pacman -Sy yaourt