Arch Linux sur
Macbook Pro fin 2013

Arch Linux est une distribution dont la procédure d’installation peut sembler exigente, mais qui offre en contrepartie un contrôle complet de ce qui est installé, mais surtout permet d’expérimenter et de comprendre beaucoup d’éléments de base du fonctionnement d’un système Linux.

Cet article détaille les étapes spécifiques qui me permettent d’obtenir une installation minimale fonctionnelle sur un MacBook Pro 13" de fin 2013 (Macbook Pro 11,1). Celui-ci se caractérise par quelques particularités, notamment une carte wifi Broadcom récalcitrante.

Il est rigoureusement déconseillé de suivre ces commandes aveuglément, car Arch Linux est une distribution qui est très régulièrement mise à jour et que chaque système est différent.

Commencez par ouvrir et suivre scrupuleusement le guide d’installation et la page MacbookPro11,x sur le wiki d’Arch Linux du wiki officiel, particulièrement complets. Cet article pourra servir de complément à ces deux pages.

Activer le Wifi pour l’installation

Il s’agit de la partie la plus bloquante par rapport aux ordinateurs habituels. Le MacBook Pro de fin 2013 embarque le plus souvent une carte wifi Broadcom, connue pour être parfois difficile à utiliser avec les pilotes habituels.

L’objet de cette partie est uniquement de disposer d’une connexion réseau pour faire l’installation, nous ne configurons par encore le wifi pour notre système final. Si votre système est déjà installé et que vous cherchez à avoir un wifi fonctionnel, vous pouvez aller voir plus bas sur cette page.

Pour vérifier la carte qui est embarquée, on utilise la commande :

lspci -k

Dans mon cas, les lignes concernées sont les suivantes :

Network controller: Broadcom Inc. and subsidiaries BCM4360 802.11ac Wireless Network Adapter (rev 03)
Subsystem: Apple Inc. BCM3460 802.11ac Wireless Network AdapterKernel driver in use: bcma-pci-bridge
Kernel modules: bcma, wl

Si la commande iw dev ne retourne rien, c’est parce que le pilote (broadcom-wl dans notre cas), bien que présent dans l’installeur, n’est pas chargé. On commence par désactiver les modules concurrents, qui pourraient être lancés :

rmmod b43 bcma ssb wl

Puis on active :

modprobe wl

Si tout va bien, iw dev affiche désormais quelque chose :

phy#1
    Interface wlan0
        ifindexwdev 0x100000001
        addr 00:00:00:00:00:00
        type managedtxpower 200.00 dBm

On peut alors activer la connexion puis scanner les réseaux environnants (si l’interface a, dans le résultat de la commande précédente, un autre nom que wlan0, il faut l’adapter) :

ifconfig wlan0 up
iwlist wlan0 scan

Vous trouverez d’autres cas correspondant à d’autres cartes sur les pages MacbookPro11,x et Broadcom du wiki.

Si vous ne parvenez pas à vous connecter, il reste possible, pour poursuivre l’installation, d’utiliser un petit adaptateur wifi par USB, ou d’utiliser le mode “modem” de votre téléphone Android (voir Android tethering sur le wiki).

Pour se connecter au wifi, on utilise alors la commande (où ssid et password sont respectivement le nom et le mot de passe de votre point d’accès) :

wpa_supplicant -B -i wlan0 -c <(wpa_passphrase "ssid" "password")

Attention, il ne faut pas mettre d’espace entre le < et le (, pour éviter d’avoir l’erreur zsh: number expected. Par ailleurs, selon les situations, il est possible que cela ne fonctionne pas sur certains canaux de la bande des 5 GHz. Dans ce cas, le plus simple est de reconfigurer son wifi sur la bande des 2,4 GHz.

Après quelques secondes d’attente, on récupère enfin une adresse IP avec la commande suivante (qui doit afficher une succession de communications) :

dhcpcd

On vérifie que l’on est connecté avec :

ping archlinux.org

Pilote Wifi

Il nous reste à installer notre pilote sur notre système pour avoir une connexion réseau au redémarrage. Commençons par récupérer les outils pour pouvoir nous connecter, depuis l’outile arch-chroot :

pacman -Syu networkmanager

Cela nous permettra de nous connecter simplement avec nmtui au redémarrage.

Avec une carte Broadcom BCM4360 (rev 03), on va installer le paquet broadcom-wl dans sa version DKMS. Celle-ci lui permettra d’être mise à jour en même temps que les noyaux Linux.

pacman -Syu linux-headers broadcom-wl-dkms

Lumière rouge dans le port Jack

J’ai eu beaucoup de mal à me débarrasser de la lumière optique rouge dans le port jack. Je suis finalement parvenu à l’éteindre avec :

sudo pacman -S alsa-utils
sudo hda-verb /dev/snd/hwC1D0 0x21 SET_PIN_WID 0x00