depot/third_party/nixpkgs/nixos/modules/services/x11/touchegg.nix

39 lines
875 B
Nix
Raw Normal View History

{ config, lib, pkgs, ... }:
with lib;
let cfg = config.services.touchegg;
in {
meta = {
maintainers = teams.pantheon.members;
};
###### interface
options.services.touchegg = {
enable = mkEnableOption (lib.mdDoc "touchegg, a multi-touch gesture recognizer");
package = mkOption {
type = types.package;
default = pkgs.touchegg;
defaultText = literalExpression "pkgs.touchegg";
description = lib.mdDoc "touchegg derivation to use.";
};
};
###### implementation
config = mkIf cfg.enable {
systemd.services.touchegg = {
description = "Touchegg Daemon";
serviceConfig = {
Type = "simple";
ExecStart = "${cfg.package}/bin/touchegg --daemon";
Restart = "on-failure";
};
wantedBy = [ "multi-user.target" ];
};
environment.systemPackages = [ cfg.package ];
};
}