31 lines
651 B
Nix
31 lines
651 B
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
|
|
{
|
|
options = {
|
|
messaging = {
|
|
enable = lib.mkEnableOption "enable all messaging";
|
|
element.enable = lib.mkEnableOption "enable element";
|
|
signal.enable = lib.mkEnableOption "enable signal";
|
|
};
|
|
};
|
|
|
|
config = {
|
|
messaging = lib.mkIf config.messaging.enable {
|
|
element.enable = lib.mkDefault true;
|
|
signal.enable = lib.mkDefault true;
|
|
};
|
|
home.packages = with pkgs; [
|
|
(lib.mkIf (config.messaging.signal.enable) signal-desktop)
|
|
];
|
|
programs = {
|
|
element-desktop = lib.mkIf config.messaging.element.enable {
|
|
enable = true;
|
|
};
|
|
};
|
|
};
|
|
}
|