AccountsService-23.13.9

Introduction à AccountsService

Le paquet AccountService fournit un ensemble d'interfaces D-Bus pour demander et manipuler des informations sur les comptes utilisateurs et une implémentation de ces interfaces basées sur les commandes usermod(8), useradd(8) et userdel(8).

Ce paquet est connu pour pouvoir être construit et fonctionner correctement avec une plateform 12.2.

Informations sur le paquet

Dépendances de AccountsService

Requises

Polkit-125

Recommandées

Facultatives

GTK-Doc-1.34.0 et xmlto-0.0.29

Facultatives (pour les tests)

dbusmock-0.32.1 et PyGObject-3.48.2

Installation de AccountsService

Tout d'abord, renommez un répertoire dont la présence empêche le système de construction de se lancer si dbusmock-0.32.1 n'est pas installé :

mv tests/dbusmock{,-tests}

Ensuit corrigez un script de test pour que le nouveau répertoire soit trouvé et adaptez-le à Python 3.12.0 et supérieur :

sed -e '/accounts_service\.py/s/dbusmock/dbusmock-tests/' \
    -e 's/assertEquals/assertEqual/'                      \
    -i tests/test-libaccountsservice.py

Corrigez un test qui échoue si le paramètre linguistique en_IE.UTF-8 n'est pas installé :

sed -i '/^SIMULATED_SYSTEM_LOCALE/s/en_IE.UTF-8/en_HK.iso88591/' tests/test-daemon.py

Installez AccountsService en exécutant les commandes suivantes :

mkdir build &&
cd    build &&

meson setup ..             \
      --prefix=/usr        \
      --buildtype=release  \
      -D admin_group=adm   \
      -D elogind=true      \
      -D systemdsystemunitdir=no

Adaptez maintenant la copie embarquée de mocklibc pour permettre la construction de la suite de tests avec GCC 14 ou supérieur :

grep 'print_indent'     ../subprojects/mocklibc-1.0/src/netgroup.c \
     | sed 's/ {/;/' >> ../subprojects/mocklibc-1.0/src/netgroup.h &&
sed -i '1i#include <stdio.h>'                                      \
    ../subprojects/mocklibc-1.0/src/netgroup.h

Construisez le paquet :

ninja

Pour tester le paquet, exécutez ninja test.

Maintenant, en tant qu'utilisateur root :

ninja install

Explication des commandes

--buildtype=release : spécifie le type de construction convenant aux versions stables de ce paquet, comme la valeur par défaut produit des binaires non optimisés.

-D admin_group=adm : ce paramètre initialise le groupe pour les comptes administrateurs.

-D docbook=true : Ce paramètre active la construction de la documentation de l'API de l'interface D-Bus (nécessite xmlto-0.0.29).

-D gtk_doc=true : ce paramètre active la construction de la documentation de l'API de libaccountsservice (nécessite GTK-Doc-1.34.0).

-D vapi=false : ce paramètre désactive la construction des liaisons vala. Utilisez-le si vous n'avez pas installé Vala-0.56.17.

Configuration de AccountsService

Pour permettre aux utilisateurs du groupe adm d'être listés en tant qu'administrateurs, lancez les commandes suivantes en tant qu'utilisateur root :

cat > /etc/polkit-1/rules.d/40-adm.rules << "EOF"
polkit.addAdminRule(function(action, subject) {
   return ["unix-group:adm"];
   });
EOF

Contenu

Programmes installés: accounts-daemon (dans /usr/libexec)
Bibliothèques installées: libaccountsservice.so
Répertoires installés: /usr/include/accountsservice-1.0, /usr/share/accountsservice, /usr/share/gtk-doc/html/libaccountsservice (facultatif) et /var/lib/AccountsService

Descriptions courtes

accounts-daemon

est le démon AccountsService

libaccountsservice.so

contient les fonctions de l'API de AccountsService