@@ -0,0 +1,29 @@
1+{ pkgs, lib, config, ... }:
2+
3+with lib;
4+
5+let cfg = config.services.input-remapper; in
6+{
7+ options = {
8+ services.input-remapper = {
9+ enable = mkEnableOption "input-remapper, an easy to use tool to change the mapping of your input device buttons.";
10+ package = mkOption {
11+ type = types.package;
12+ default = pkgs.input-remapper;
13+ defaultText = literalExpression "pkgs.input-remapper";
14+ description = ''
15+ The input-remapper package to use.
16+ '';
17+ };
18+ };
19+ };
20+
21+ config = mkIf cfg.enable {
22+ # FIXME: udev rule hangs sometimes when lots of devices connected, so let's not use it
23+ # config.services.udev.packages = mapper-pkg;
24+ services.dbus.packages = cfg.package;
25+ systemd.packages = cfg.package;
26+ environment.systemPackages = cfg.package;
27+ systemd.services.input-remapper.wantedBy = [ "graphical.target" ];
28+ };
29+}