{
config,
pkgs,
lib,
dotfiles_lib,
...
}: let
cfg = config.programs.meganz;
in
with lib; {
options.programs.meganz = with dotfiles_lib.options; {
enable = mkEnableOption "Install meganz and optionally the configured gui app + systemd sync service.";
sync.enable = mkDefaultEnabledOption "Enable a systemd service to start mega's sync in the background to initiate syncing any configured sync folders.";
gui.enable = mkEnableOption "Install the gui mega app called MegaSync.";
};
config = mkIf cfg.enable {
home.packages =
[pkgs.megacmd]
++ (
if config.programs.meganz.gui.enable
then [pkgs.megasync]
else []
);
systemd.user.services.mega-cmd-server-init = {
Unit.Description = "Try to start mega-cmd when sway starts.";
Install.WantedBy = ["graphical-session.target"];
Service.Type = "oneshot";
Service.ExecStart = "${pkgs.megacmd}/bin/mega-cmd-server";
};
};
}