Configuration de mon nouveau Lenovo T480s sous Fedora


Status du T480s sous Fedora 28

Première impression

Tout ce dont j'ai besoin est correctement reconnu et fonctionne correctement : * Wifi * Bluetooth * Webcam * Audio (haut parleurs, micro, casque, ...) * Raccourcis "Fn"+"Left"|"Right" pour "origin"|"end"

Ce qui ne marche pas out of the box :

  • Fingerprint : comme préciser sur le wiki ArchLinux, un travail de reverse enginering est en cours pour l'implémenter. Personnellement, je ne fais pas confiance à ce type de périphériques (du moins en single factor) pour la sécurité.

Configurations de base

DNF

Utilisation de deltarpm et fastestmirror

sudo cat >> /etc/dnf/dnf.conf <<EOF
fastestmirror=true
deltarpm=true
EOF

Applications supplémentaires

repos RPM Fusion

sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm 
sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
sudo dnf update --refresh

Paquets supplémentaires

sudo dnf install \
vim-enhanced \
htop \
libreoffice
libreoffice-langpack-fr
libreoffice-help-fr \
tlp \
simple-scan \
p7zip \
vlc \
gstreamer-plugins-base \
gstreamer1-plugins-base \
gstreamer-plugins-bad \
gstreamer-plugins-ugly \
gstreamer1-plugins-ugly \
gstreamer-plugins-good-extras \
gstreamer1-plugins-good \
gstreamer1-plugins-good-extras \
gstreamer1-plugins-bad-freeworld \
ffmpeg \
gstreamer-ffmpeg

Virtualisation

sudo dnf group install –with-optional virtualization
sudo systemctl enable libvirtd
sudo systemctl start libvirtd
sudo usermod -a -G libvirt gla

Skype

sudo dnf install -y https://go.skype.com/skypeforlinux-64.rpm

Penser à retirer le démarrage automatique de skype

FlatPak

Ajout du repository "flathub"

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Installation de Telegram

flatpak install flathub org.telegram.desktop

Configurations du firmware

Power Saving

Quelques points de configuration pris sur le wiki ArchLinux * Activer "Thunderbolt BIOS Assist Mode" : Set to "Enabled" in the EFI firmware interface. This seems to reduce number of idle wakeups. * Désactiver les périphériques non utilisés : Disable unused peripherals under "Security" -> "I/O port access" in the firmware. This especially applies to the SD/MMC-cardreader, which seems to drain some power even when idle. Personellement j'ai désactivé le lecteur d'empreinte, le lecteur de carte SD et le modem WWAN

Configurations particulières pour la gestion du réseau

J'utilise beaucoup la virtualisation et je suis un utilisateur nomade. Je configure de manière assez spécifique NetworkManager et dnsmasq afin d'avoir un réseau fonctionnel et pratique dans toute les situation que je rencontre. * Une seule instance dnsmasq pour le DHCP et le résolution DNS de mes réseau en virtualisation, containérisation ainsi que pour les résolution DNS locales * dnsmasq doit forward automatiquement aux DNS fournis par le DHCP de la connexion principale afin de fonctionner correctement quand je tombe sur un portail captif * L'interface de mon bridge libvirt ainsi que toute les interfaces dynamiques des VMs et conteneurs ne doivent pas être managé par NetworkManager afin de palier aux bug de gestion de zone Firewall

Désactivation de la gestion DNS par NetworkManager

Par défaut NetworkManager crée un fichier resolv.conf dans /run/NetworkManager et remplace le fichier /etc/resolv.conf à chaque connection. Je désactive ce comportement afin d'utiliser mon instance dnsmasq.

sed -i -e '/^\[main\]/a \dns=none' /etc/NetworkManager/NetworkManager.conf

Ne pas gérer les interfaces du bridge libvirt avec NetworkManager

cat >> /etc/NetworkManager/NetworkManager.conf <<EOF

[keyfile]
unmanaged-devices=interface-name:virbr?;interface-name:vnet? 
EOF

Activation et configuration de dnsmasq

  • dnsmasq n'écoute pas sur mon interface wifi
  • dhcp pour mes VM avec une reservation de MAC
  • utilisation du fichier resolv.conf généré par NetworkManager pour récupérer les serveurs DNS de mes connexions
cat > /etc/dnsmasq.d/00_main.conf <<EOF
except-interface=wlp61s0
no-dhcp-interface=127.0.0.1
domain=localdomain
EOF
echo "dns-forward-max=500"  > /etc/dnsmasq.d/fwd-max.conf
cat > /etc/dnsmasq.d/libvirt-br-ext-122.conf <<EOF 
dhcp-range=vmlan,192.168.122.100,192.168.122.200
dhcp-host=52:54:00:67:50:df,gla-vm-win7,192.168.122.100
dhcp-option=vmlan,option:router,192.168.122.1
dhcp-option=vmlan,option:dns-server,192.168.122.1
#dhcp-option=vmlan,option:ntp-server,192.168.122.1
#dhcp-option=vmlan,option:domain-name,vm.local
EOF
cat > /etc/dnsmasq.d/resolv.conf <<EOF
#no-resolv
#no-hosts
resolv-file=/var/run/NetworkManager/resolv.conf
EOF
sudo systemctl enable dnsmasq
sudo systemctl start dnsmasq