depot/third_party/nixpkgs/nixos/modules/services/desktops/gsignond.nix

41 lines
950 B
Nix

# Accounts-SSO gSignOn daemon
{ config, lib, pkgs, ... }:
let
package = pkgs.gsignond.override { plugins = config.services.gsignond.plugins; };
in
{
meta.maintainers = lib.teams.pantheon.members;
###### interface
options = {
services.gsignond = {
enable = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Whether to enable gSignOn daemon, a DBus service
which performs user authentication on behalf of its clients.
'';
};
plugins = lib.mkOption {
type = lib.types.listOf lib.types.package;
default = [];
description = ''
What plugins to use with the gSignOn daemon.
'';
};
};
};
###### implementation
config = lib.mkIf config.services.gsignond.enable {
environment.etc."gsignond.conf".source = "${package}/etc/gsignond.conf";
services.dbus.packages = [ package ];
};
}