Gentoo - Installation

Installer Gentoo facilement - Environnement de bureau (Systemd)

Table des matières

logo_gentoo



Introduction



Vous aimez Gentoo et vous voulez installer une interface graphique ?

Voila, les manipulations à réaliser pour installer Xfce, MATE ou GNOME.

Mettre à jour d'abord Gentoo : mise-a-jour-de-gentoo

Cet article concerne une Gentoo avec Systemd et non OpenRC. Pour OpenRC : https://www.linuxtricks.fr/wiki/installer-gentoo-facilement-environnement-de-bureau-openrc

Prérequis de l'environnement de bureau



Dans un premier temps, installer sur votre ordinateur Gentoo.

Pour l'installation, se référer à ce tuto : https://www.linuxtricks.fr/wiki/installer-gentoo-facilement-systemd


Sélection du "profile"



Pour éviter de remplir sans cesse le fichier /etc/portage/package.use on va basculer sur le profile desktop/

Pour afficher les profiles dispo :
Code BASH :
eselect profile list


Puis choisir le profile adéquat via :
Code BASH :
eselect profile set X


où X correspond au numéro de profil nommé :
default/linux/$ARCH/$VERSION/desktop/systemd


Pour un profil de base en 2024 avec Systemd, on sélectionnera :
Code TEXT :
  [24]  default/linux/amd64/23.0/desktop/systemd (stable)


Mise à jour du world



Une fois le profil sélectionné et le make.conf personnalisé, on peut faire une mise à jour du world avant de continuer :
Code BASH :
emerge -avuDN --with-bdeps=y @world


Cela permettra d'installer en plus d'autres logiciels grâce au profile précédemment sélectionné !

Il est possible d'avoir une erreur de dépendance circulaires de ce type :
Code TEXT :
 * Error: circular dependencies:
(media-libs/libsndfile-1.2.0:0/0::gentoo, ebuild scheduled for merge) depends on
 (media-sound/mpg123-1.31.3:0/0::gentoo, ebuild scheduled for merge) (buildtime_slot_op)
  (media-sound/pulseaudio-16.1:0/0::gentoo, ebuild scheduled for merge) (buildtime)
   (media-libs/libpulse-16.1-r2:0/0::gentoo, ebuild scheduled for merge) (buildtime)
    (media-libs/libsndfile-1.2.0:0/0::gentoo, ebuild scheduled for merge) (buildtime)
It might be possible to break this cycle
by applying any of the following changes:
- media-libs/libsndfile-1.2.0 (Change USE: +minimal)
- media-sound/mpg123-1.31.3 (Change USE: -pulseaudio)


Dans ce cas, il suffit d'émerger media-libs/libsndfile avec le USE minimal juste avant (sans l'ajouter au world) :
Code BASH :
USE=minimal emerge -1 media-libs/libsndfile


Puis de relancer la mise à jour.


Vérifier les pilotes vidéo / clavier



Dans le fichier make.conf on vérifie que les infos sur les cartes vidéo et entrées sont bien là :

Code BASH :
nano -w /etc/portage/make.conf


Code BASH :
VIDEO_CARDS="fbdev vesa intel i915 nvidia nouveau radeon amdgpu radeonsi virtualbox vmware" #Cartes graphiques, choisir les cartes adéquats. Garder fbdev (framebuffer) et vesa (générique)
INPUT_DEVICES="libinput synaptics keyboard mouse evdev joystick wacom" # Périphériques d'entrées utilisés (clavier souris + si affinités)


Pour la vidéo dans le noyau, vérifier que le support est actif (exemple nvidia ou AMD GPU) :

Code BASH :
Device Drivers --->
   Graphics support --->
      <*>  Nouveau (nVidia) cards
      <*> AMD GPU


Et pareil pour le clavier :

Code BASH :
Device Drivers --->
  Input device support --->
  <*>  Event interface


Accélération vidéo VAAPI



Il est possible d'activer l'accélération vidéo avec VAAPI.

Il suffit d'activer le USE global vaapi :

Code BASH :
euse -E vaapi



Installer le serveur X



Dans un premier temps, on installe le serveur X :
Code BASH :
emerge -av x11-base/xorg-server x11-base/xorg-drivers


On peut aussi installer des polices d'écriture supplémentaires. J'aime bien les fonts de Google : noto (avec en bonus le support des emoji) et droid :
Code BASH :
emerge -av media-fonts/droid media-fonts/noto media-fonts/noto-emoji



Installer le son avec ALSA



Avec l'environnement de bureau, il peut être utile d'avoir du son !

Vérifier que le son et le matériel est bien activé dans le noyau :

Code TEXT :
Device Drivers --->
    <*> Sound card support
        <*> Advanced Linux Sound Architecture --->
            [*] PCI sound devices  --->
                Select the driver for your audio controller.
            HD-Audio  --->
                Select a codec or enable all and let the generic parse choose the right one:
                [*] Build Realtek HD-audio codec support
                [*] ...
                [*] Build Silicon Labs 3054 HD-modem codec support
                [*] Enable generic HD-audio codec parser
            [*] Dynamic device file minor numbers
            (32) Max number of sound cards
General setup --->
    [*] System V IPC


Ensuite, on active le USE alsa :
Code BASH :
euse -E alsa


On installe alsa :
Code BASH :
emerge -av media-libs/alsa-lib media-sound/alsa-utils



Utiliser NetworkManager (facultatif)



Si on veut utiliser NetworkManager (pratique pour du Wi-Fi), on va activer de manière globale le USE networkmanager :
Code BASH :
euse -E networkmanager


On verra plus tard comment le paramétrer.


Serveur de son



On va activer de manière globale le USE pulseaudio :
Code BASH :
euse -E pulseaudio


On active le USE sound-server de Pipewire en ajoutant ceci dans votre package.use :
Code BASH :
echo "media-video/pipewire sound-server" >> /etc/portage/package.use/custom


On met à jour tout le système via :
Code BASH :
emerge -avuDN @world


On installe pipewire et wireplumber :
Code BASH :
emerge -av media-video/pipewire media-video/wireplumber


Ensuite, pour démarrer PipeWire pour tous les utilisateurs, on activera le service pour les utilisateurs avec la commande suivante :
Code BASH :
systemctl --global enable pipewire.socket pipewire-pulse.socket wireplumber.service


pipewire-pulse permet d'appeler PulseAudio pour les applications ne supportant pas Pipewire.

Plus d'infos sur https://wiki.gentoo.org/wiki/PipeWire


Clavier Français



Définir le clavier Français avec la commande systemd associée :
Code BASH :
localectl set-x11-keymap fr



Installer le gestionnaire de connexion



Lightdm pour les environnements de bureaux



Pour le gestionnaire de connexion, j'installe lightdm, car il est léger. Il ne faut pas oublier son "greeter" GTK :

Code BASH :
emerge -av lightdm-gtk-greeter


On ajoute le service au démarrage (et on le démarre au passage) :

Code BASH :
systemctl enable --now lightdm



gentoo_lxde_1




gdm pour GNOME



Pour le gestionnaire de connexion avec un bureau GNOME, on va utiliser gdm, car il permettra de bénéficier de tous les avantages de GNOME.

Code BASH :
emerge -av gnome-base/gdm


Une fois tout installé, il faut indiquer qu'on souhaite utiliser gdm comme gestionnaire de connexion on ajoute le service au démarrage (et on le démarre au passage) :

Code BASH :
systemctl enable --now gdm.service



Installer l'environnement de bureau



MATE



Pour installer MATE, on va installer le paquet mate :
Code BASH :
emerge -av mate


Il se peut qu'il y ait des petits réglages à faire au niveau des USE

Il faut prévoir d'avoir assez de RAM (au moins 3Go en 64bits) pour la compilation des librairies gtk.

Xfce



Pour installer Xfce, on va installer le paquet xfce4-meta :
Code BASH :
emerge -av xfce4-meta


Il faut prévoir d'avoir assez de RAM (au moins 3Go en 64bits) pour la compilation des librairies gtk.

GNOME



Pour installer GNOME, il y a plusieurs solutions :

Soit on veut un environnement complet et on installe le métapaquet gnome
Code BASH :
emerge -av gnome


Soit on veut une base un peu plus lègère et on installe gnome-light :
Code BASH :
emerge -av gnome-light


Et on pourra compléter avec gnome-core-apps (ou chaque logiciel installé manuellement) !

Pour bénéficier des extensions fournies par défaut dans gnome, on pourra aussi installer gnome-extra/gnome-shell-extensions. Les extensions disponibles dans les dépôts sont nommées gnome-extra/gnome-shell-extension-NOMDELEXTENSION.

Il faut prévoir d'avoir assez de RAM (au moins 4Go en 64bits) pour la compilation des librairies gtk.

Finaliser la configuration



NetworkManager



Si on a utilisé le USE networkmanager, enregistrer NetworkManager dans les paquets installés :
Code BASH :
emerge --noreplace  net-misc/networkmanager


Puis sur les environnements de bureau (MATE, Xfce) il peut être utile d'installer l'applet :
Code BASH :
emerge -a  gnome-extra/nm-applet


Si on veut autoriser l'utilisateur à gérer les connexions réseau on ajoute l'utilisateur au groupe plugdev :
Code BASH :
gpasswd -a USER plugdev


On supprime le service systemd-networkd qu'on avait activé :
Code BASH :
systemctl disable systemd-networkd


Et on ajoute NetworkManager :
Code BASH :
systemctl enable NetworkManager


Si NetworkManager est compilé avec le USE dhclient, on peut spécifier dans /etc/dhcp/dhclient.conf le nom d'hôte à envoyer au DHCP :
Code BASH :
nano -w /etc/dhcp/dhclient.conf


Code TEXT :
send host-name "gentoo";


Plus d'infos ici : https://wiki.gentoo.org/wiki/NetworkManager

PulseAudio



On peut installer des logiciels additionnels comme pavucontrol :
Code BASH :
emerge -av pavucontrol



Et voilà c'est terminé !
Cette page a été vue 5889 fois