{ pkgs, config, lib, ... }: with lib; with builtins; let cfg = config.vim.presence.presence-nvim; in { config = mkIf cfg.enable { vim.startPlugins = ["presence-nvim"]; vim.luaConfigRC.presence-nvim = nvim.dag.entryAnywhere '' -- Description of each option can be found in https://github.com/andweeb/presence.nvim require("presence").setup({ -- General options auto_update = true, neovim_image_text = "${cfg.image_text}", main_image = "${cfg.main_image}", client_id = "${cfg.client_id}", log_level = nil, debounce_timeout = 10, enable_line_number = "${boolToString cfg.enable_line_number}", blacklist = {}, buttons = "${boolToString cfg.buttons}", file_assets = {}, show_time = "${boolToString cfg.show_time}", -- Rich Presence text options editing_text = "${cfg.rich_presence.editing_text}", file_explorer_text = "${cfg.rich_presence.file_explorer_text}", git_commit_text = "${cfg.rich_presence.git_commit_text}", plugin_manager_text = "${cfg.rich_presence.plugin_manager_text}", reading_text = "${cfg.rich_presence.reading_text}", workspace_text = "${cfg.rich_presence.workspace_text}", line_number_text = "${cfg.rich_presence.line_number_text}", }) ''; }; }