{ config, lib, pkgs, ... }: let cfg = config.sydnix.discord; in { options.sydnix.discord = { enable = lib.mkEnableOption "Discord"; fixWayland = lib.mkOption { description = '' Fix flickering on Wayland. ''; type = lib.types.bool; default = false; }; }; imports = [ ./discord/jellyfin-rpc.nix ]; config = lib.mkIf cfg.enable { sydnix.impermanence.directories = let xdg-config-home = config.home.confighome or "${config.home.homeDirectory}/.config"; in [ # This directory should really be written in terms of # `config.programs.nixcord.vesktopConfigDir`, but it # defaults to null for unknown reasons. This is in conflict # with the docs, which claim it should be the path used # here. (lib.removePrefix config.home.homeDirectory "${xdg-config-home}/vesktop") ]; programs.nixcord = { enable = true; discord = { enable = false; vencord.enable = false; vencord.package = pkgs.vencord; }; vesktop = { enable = true; }; }; }; }