Suivant: , Précédent: , Monter: Services   [Table des matières][Index]


10.8.8 Services de bureaux

Le module (gnu services desktop) fournit des services qui sont habituellement utiles dans le contexte d’une installation « de bureau » — c’est-à-dire sur une machine qui fait tourner un service d’affichage graphique, éventuellement avec des interfaces utilisateurs graphiques, etc. Il définit aussi des services qui fournissent des environnements de bureau spécifiques comme GNOME, Xfce et MATE.

Pour simplifier les choses, le module définit une variable contenant l’ensemble des services que les utilisateurs s’attendent en général à avoir sur une machine avec un environnement graphique et le réseau :

Variable Scheme : %desktop-services

C’est la liste des services qui étend %base-services en ajoutant ou en ajustant des services pour une configuration « de bureau » typique.

En particulier, elle ajoute un gestionnaire de connexion graphique (voir gdm-service-type), des verrouilleurs d’écran, un outil de gestion réseau (voir network-manager-service-type) avec la prise en charge des modems (voir modem-manager-service-type), des services de gestion de l’énergie et des couleurs, le gestionnaire de connexion et de session elogind, le service de privilèges Polkit, le service de géolocalisation GeoClue, le démon AccountsService qui permet aux utilisateurs autorisés de changer les mots de passe du système, un client NTP (voir Services réseau), le démon Avahi, et le service name service switch est configuré pour pouvoir utiliser nss-mdns (voir mDNS).

La variable %desktop-services peut être utilisée comme champ services d’une déclaration operating-system (voir services).

En plus, les procédures gnome-desktop-service-type, xfce-desktop-service, mate-desktop-service-type, lxqt-desktop-service-type et enlightenment-desktop-service-type peuvent ajouter GNOME, Xfce, MATE ou Enlightenment à un système. « Ajouter GNOME » signifie que les services du système comme les utilitaires d’ajustement de la luminosité et de gestion de l’énergie sont ajoutés au système, en étendant polkit et dbus de la bonne manière, ce qui permet à GNOME d’opérer avec des privilèges plus élevés sur un nombre limité d’interfaces systèmes spécialisées. En plus, ajouter un service construit par gnome-desktop-service-type ajoute le métapaquet GNOME au profil du système. De même, ajouter le service Xfce ajoute non seulement le métapaquet xfce au profil système, mais il permet aussi au gestionnaire de fichiers Thunar d’ouvrir une fenêtre de gestion des fichier « en mode root », si l’utilisateur s’authentifie avec le mot de passe administrateur via l’interface graphique polkit standard. « Ajouter MATE » signifie que polkit et dbus sont étendue de la bonne manière, ce qui permet à MATE d’opérer avec des privilèges plus élevés sur un nombre limité d’interface systèmes spécialisées. En plus, ajouter un service de type mate-desktop-service-type ajoute le métapaquet MATE au profil du système. « Ajouter Enlightenment » signifie que dbus est étendu comme il faut et que plusieurs binaires d’Enlightenment récupèrent le bit setuid, ce qui permet au verrouilleur d’écran d’Enlightenment et à d’autres fonctionnalités de fonctionner correctement.

The desktop environments in Guix use the Xorg display server by default. If you’d like to use the newer display server protocol called Wayland, you need to use the sddm-service instead of GDM as the graphical login manager. You should then select the “GNOME (Wayland)” session in SDDM. Alternatively you can also try starting GNOME on Wayland manually from a TTY with the command “XDG_SESSION_TYPE=wayland exec dbus-run-session gnome-session“. Currently only GNOME has support for Wayland.

Variable Scheme : gnome-desktop-service-type

C’est le type de service qui ajoute l’environnement de bureau GNOME. Sa valeur est un objet gnome-desktop-configuration (voir plus bas).

Ce service ajoute le paquet gnome au profil du système et étend polkit avec les actions de gnome-settings-daemon.

Type de données : gnome-desktop-configuration

Enregistrement de la configuration de l’environnement de bureau GNOME.

gnome (par défaut : gnome)

Le paquet GNOME à utiliser.

Variable Scheme : xfce-desktop-service-type

C’est le type de service qui lance l’environnement de bureau https://xfce.org/. Sa valeur est un objet xfce-desktop-configuration (voir plus bas).

Ce service ajoute le paquet xfce au profil du système et étend polkit avec la possibilité pour thunar de manipuler le système de fichier en root depuis une session utilisateur, après que l’utilisateur s’authentifie avec le mot de passe administrateur.

Note that xfce4-panel and its plugin packages should be installed in the same profile to ensure compatibility. When using this service, you should add extra plugins (xfce4-whiskermenu-plugin, xfce4-weather-plugin, etc.) to the packages field of your operating-system.

Type de données : xfce-desktop-configuration

Enregistrement de la configuration de l’environnement de bureau Xfce.

xfce (par défaut : xfce)

Le paquet Xfce à utiliser.

Variable Scheme : mate-desktop-service-type

C’est le type de service qui lance l’environnement de bureau MATE. Sa valeur est un objet mate-desktop-configuration (voir plus bas).

Ce service ajoute le paquet mate au profil du système, et étend polkit avec les actions de mate-settings-daemon.

Type de données : mate-desktop-configuration

Enregistrement de configuration pour l’environnement de bureau MATE.

mate (par défaut : mate)

Le paquet MATE à utiliser.

Variable Scheme : lxqt-desktop-service-type

C’est le type de service qui lance l’environnement de bureau LXQt. Sa valeur est un objet lxqt-desktop-configuration (voir plus bas).

Ce service ajoute le paquet lxqt au profil du système.

Type de données : lxqt-desktop-configuration

Enregistrement de la configuration de l’environnement de bureau LXQt.

lxqt (par défaut : lxqt)

Le paquet LXQT à utiliser.

Variable Scheme : enlightenment-desktop-service-type

Renvoie un service qui ajoute le paquet enlightenment et étend dbus avec les actions de efl

Type de données : enlightenment-desktop-service-configuration
enlightenment (par défaut : enlightenment)

Le paquet enlightenment à utiliser.

Comme les services de bureau GNOME, Xfce et MATE récupèrent tant de paquet, la variable %desktop-services par défaut n’inclut aucun d’entre eux. Pour ajouter GNOME, Xfce ou MATE, utilisez cons pour les ajouter à %desktop-services dans le champ services de votre operating-system :

(use-modules (gnu))
(use-service-modules desktop)
(operating-system
  ...
  ;; cons* ajoute des éléments à la liste donnée en dernier argument.
  (services (cons* (service gnome-desktop-service-type)
                   (service xfce-desktop-service)
                   %desktop-services))
  ...)

Ces environnements de bureau seront alors disponibles comme une option dans la fenêtre de connexion graphique.

Les définitions de service qui sont vraiment incluses dans %desktop-services et fournies par (gnu services dbus) et (gnu services desktop) sont décrites plus bas.

Procédure Scheme : dbus-service [#:dbus dbus] [#:services '()]

Renvoie un service qui lance le « bus système », dbus, avec le support de services.

D-Bus est un utilitaire de communication inter-processus. Son bus système est utilisé pour permettre à des services systèmes de communiquer et d’être notifiés d’événements systèmes.

services doit être une liste de paquets qui fournissent un répertoire etc/dbus-1/system.d contenant de la configuration D-Bus supplémentaire et des fichiers de politiques. Par exemple, pour permettre à avahi-daemon d’utiliser le bus système, services doit être égal à (list avahi).

Procédure Scheme : elogind-service [#:config config]

Renvoie un service qui lance le démon de gestion de connexion et de session elogind. Elogind expose une interface D-Bus qui peut être utilisée pour connaître quels utilisateurs sont connectés, le type de session qu’ils sont ouverte, suspendre le système, désactiver la veille système, redémarrer le système et d’autre taches.

Elogind gère la plupart des événements liés à l’énergie du système, par exemple mettre en veille le système quand l’écran est rabattu ou en l’éteignant quand le bouton de démarrage est appuyé.

L’argument config spécifie la configuration d’elogind et devrait être le résultat d’une invocation de (elogind-configuration (parameter value)...). Les paramètres disponibles et leur valeur par défaut sont :

kill-user-processes?

#f

kill-only-users

()

kill-exclude-users

("root")

inhibit-delay-max-seconds

5

handle-power-key

poweroff

handle-suspend-key

suspend

handle-hibernate-key

hibernate

handle-lid-switch

suspend

handle-lid-switch-docked

ignore

handle-lid-switch-external-power

ignore

power-key-ignore-inhibited?

#f

suspend-key-ignore-inhibited?

#f

hibernate-key-ignore-inhibited?

#f

lid-switch-ignore-inhibited?

#t

holdoff-timeout-seconds

30

idle-action

ignore

idle-action-seconds

(* 30 60)

runtime-directory-size-percent

10

runtime-directory-size

#f

remove-ipc?

#t

suspend-state

("mem" "standby" "freeze")

suspend-mode

()

hibernate-state

("disk")

hibernate-mode

("platform" "shutdown")

hybrid-sleep-state

("disk")

hybrid-sleep-mode

("suspend" "platform" "shutdown")

Procédure Scheme : accountsservice-service [#:accountsservice accountsservice]

Renvoie un service qui lance AccountsService, un service système qui peut lister les comptes disponibles, changer leur mot de passe, etc. AccountsService s’intègre à Polkit pour permettre aux utilisateurs non privilégiés de pouvoir modifier la configuration de leur système. le site de accountsservice pour trouver plus d’informations.

L’argument accountsservice est le paquet accountsservice à exposer comme un service.

Procédure Scheme : polkit-service [#:polkit polkit]

Renvoie un service qui lance le service de gestion des privilèges Polkit, qui permet aux administrateurs systèmes de permettre l’accès à des opération privilégiées d’une manière structurée. En demandant au service Polkit, un composant système privilégié peut savoir lorsqu’il peut donner des privilèges supplémentaires à des utilisateurs normaux. Par exemple, un utilisateur normal peut obtenir le droit de mettre le système en veille si l’utilisateur est connecté localement.

Variable Scheme : polkit-wheel-service

Service qui ajoute le groupe wheel comme administrateur au service Polkit. Cela fait en sorte qu’on demande le mot de passe des utilisateurs du groupe wheel eux-mêmes pour effectuer des taches d’administration au lieu du mot de passe root, comme le fait sudo.

Variable Scheme : upower-service-type

Service qui lance upowerd, un moniteur système de consommation d’énergie et de niveau de batterie, avec les paramètres de configuration donnés.

Il implémente l’interface D-Bus org.freedesktop.UPower et est notamment utilisé par GNOME.

Type de données : upower-configuration

Type de données représentant la configuration de UPower.

upower (par défaut : upower)

Paquet à utiliser pour upower.

watts-up-pro? (par défaut : #f)

Active le périphérique Watts Up Pro.

poll-batteries? (par défaut : #t)

Active les requêtes au noyau pour les changements de niveau de batterie.

ignore-lid? (par défaut : #f)

Ignore l’état de l’écran, ce qui peut être utile s’il est incorrect sur un appareil.

use-percentage-for-policy? (par défaut : #f)

Indique si la politique de batterie basée sur le pourcentage devrait être utilisée. La valeur par défaut est d’utiliser la durée restante, changez en #t pour utiliser les pourcentages.

percentage-low (par défaut : 10)

Lorsque use-percentage-for-policy? est #t, cela indique à quel niveau la batterie est considérée comme faible.

percentage-critical (par défaut : 3)

Lorsque use-percentage-for-policy? est #t, cela indique à quel niveau la batterie est considérée comme critique.

percentage-action (par défaut : 2)

Lorsque use-percentage-for-policy? est #t, cela indique à quel niveau l’action sera prise.

time-low (par défaut : 1200)

Lorsque use-percentage-for-policy? est #f, cela indique à quelle durée restante en secondes la batterie est considérée comme faible.

time-critical (par défaut : 300)

Lorsque use-percentage-for-policy? est #f, cela indique à quelle durée restante en secondes la batterie est considérée comme critique.

time-action (par défaut : 120)

Lorsque use-percentage-for-policy? est #f, cela indique à quelle durée restante en secondes l’action sera prise.

critical-power-action (par défaut : 'hybrid-sleep)

L’action à prendre lorsque percentage-action ou time-action est atteint (en fonction de la configuration de use-percentage-for-policy?).

Les valeurs possibles sont :

  • 'power-off
  • 'hibernate
  • 'hybrid-sleep.
Procédure Scheme : udisks-service [#:udisks udisks]

Renvoie un service pour UDisks, un démon de gestion de disques qui fournit des notifications et la capacité de monter et démonter des disques à des interfaces utilisateurs. Les programmes qui parlent à UDisks sont par exemple la commande udisksctl, qui fait partie de UDisks, et GNOME Disks. Remarquez que Udisks s’appuie sur la commande mount, donc il ne sera capable d’utiliser que les utilitaires de systèmes de fichiers installés dans le profil du système. Par exemple si vous voulez monter des systèmes de fichiers NTFS en lecture-écriture, vous devrez ajouter ntfs-3g aux paquets installés sur le système entier.

Variable Scheme : colord-service-type

C’est le type de service qui lance colord, un service système avec une interface D-Bus pour gérer les profils de couleur des périphériques d’entrées et de sorties comme les écrans et les scanners. Il est notamment utilisé par l’outil graphique GNOME Color Manager. Voir le site web de colord pour plus d’informations.

Scheme Variable : sane-service-type

This service provides access to scanners via SANE by installing the necessary udev rules. It is included in %desktop-services (voir Services de bureaux) and relies by default on sane-backends-minimal package (see below) for hardware support.

Scheme Variable : sane-backends-minimal

The default package which the sane-service-type installs. It supports many recent scanners.

Scheme Variable : sane-backends

This package includes support for all scanners that sane-backends-minimal supports, plus older Hewlett-Packard scanners supported by hplip package. In order to use this on a system which relies on %desktop-services, you may use modify-services (voir modify-services) as illustrated below:

(use-modules (gnu))
(use-service-modules
  
  desktop)
(use-package-modules
  
  scanner)

(define %my-desktop-services
  ;; List of desktop services that supports a broader range of scanners.
  (modify-services %desktop-services
    (sane-service-type _ => sane-backends)))

(operating-system
  
  (services %my-desktop-services)
Procédure Scheme : geoclue-application name [#:allowed? #t] [#:system? #f] [#:users '()]

Renvoie une configuration qui permet d’accéder aux données de localisation de GeoClue. name est l’ID Desktop de l’application, sans la partie en .desktop. Si allowed? est vraie, l’application aura droit d’accéder aux informations de localisation par défaut. Le booléen system? indique si une application est un composant système ou non. Enfin users est la liste des UID des utilisateurs pour lesquels cette application a le droit d’accéder aux informations de géolocalisation. Une liste d’utilisateurs vide indique que tous les utilisateurs sont autorisés.

Variable Scheme : %standard-geoclue-applications

La liste standard de configuration des application GeoClue connues, qui permet à l’utilitaire date-and-time de GNOME de demander l’emplacement actuel pour initialiser le fuseau horaire et aux navigateurs web IceCat et Epiphany de demander les informations de localisation. IceCat et Epiphany demandent tous deux à l’utilisateur avant de permettre à une page web de connaître l’emplacement de l’utilisateur.

Procédure Scheme : geoclue-service [#:colord colord] [#:whitelist '()] [#:wifi-geolocation-url

"https://location.services.mozilla.com/v1/geolocate?key=geoclue"]  [#:submit-data? #f] [#:wifi-submission-url "https://location.services.mozilla.com/v1/submit?key=geoclue"]  [#:submission-nick "geoclue"]  [#:applications %standard-geoclue-applications] Renvoie un service qui lance le service de géolocalisation GeoClue. Ce service fournit une interface D-Bus pour permettre aux applications de demande l’accès à la position de l’utilisateur et éventuellement d’ajouter des informations à des bases de données de géolocalisation en ligne. Voir le site web de GeoClue pour plus d’informations.

Procédure Scheme : bluetooth-service [#:bluez bluez] [#:auto-enable? #f]

Renvoie un service qui lance le démon bluetoothd qui gère tous les appareils Bluetooth et fournit un certain nombre d’interfaces D-Bus. Lorsque auto-enable? est vraie, le contrôler bluetooth est automatiquement alimenté au démarrage, ce qui peut être utile lorsque vous utilisez un clavier ou une souris bluetooth.

Les utilisateurs doivent être dans le groupe lp pour accéder au service D-Bus.

Variable Scheme : gnome-keyring-service-type

C’est le type de service qui ajoute GNOME Keyring. Sa valeur est un objet gnome-keyring-configuration (voir plus bas).

Ce service ajoute le paquet gnome-keyring au profil du système et étend PAM avec des entrées avec pam_gnome_keyring.so, permettant de déverrouiller un porteclé utilisateur à la connexion ou de spécifier son mot de passe avec passwd.

Type de données : gnome-keyring-configuration

Enregistrement de la configuration du service GNOME Keyring.

keyring (par défaut : gnome-keyring)

Le paquet GNOME keyring à utiliser.

pam-services

Une liste de paires (service . type) dénotant des services PAM à étendre, où service est le nom d’un service existant à étendre et type est login ou passwd.

S’il s’agit de login, cela ajoute un pam_gnome_keyring.so facultatif au bloc d’authentification sans argument et au bloc de session avec auto_start. S’il s’agit de passwd, cela ajoute un pam_gnome_keyring.so facultatif au bloc de mot de passe sans argument.

Par défaut, ce champ contient « gdm-password » avec la valeur login et « passwd » avec la valeur passwd.


Suivant: , Précédent: , Monter: Services   [Table des matières][Index]