Files
2026-03-31 16:53:11 +02:00

132 lines
3.0 KiB
Nix

{pkgs, ...}: let
configFile = "discordo/config.toml";
toTOML = (pkgs.formats.toml {}).generate;
in {
users.users.someone.packages = with pkgs; [
discordo
];
xdg.configFile."${configFile}".source = toTOML "config.toml" {
mouse = false;
editor = "default";
markdown = true;
hide_blocked_users = true;
show_attachment_links = true;
autocomplete_limit = 20;
messages_limit = 50;
timestamps = {
enabled = true;
format = "15:04";
};
notifications = {
enabled = true;
duration = 0;
sound = {
enabled = true;
only_on_ping = true;
};
};
identify = {
status = "dnd";
browser = "default";
browser_version = "default";
user_agent = "default";
};
keys = {
focus_guilds_tree = "Ctrl+G";
focus_messages_list = "Ctrl+T";
focus_message_input = "Ctrl+P";
toggle_guilds_tree = "Ctrl+B";
quit = "Ctrl+C";
logout = "Ctrl+D";
guilds_tree = {
select_previous = "Rune[k]";
select_next = "Rune[j]";
select_first = "Rune[g]";
select_last = "Rune[G]";
select_current = "Enter";
yank_id = "Rune[i]";
collapse_parent_node = "Rune[-]";
move_to_parent_node = "Rune[p]";
};
messages_list = {
select_previous = "Rune[k]";
select_next = "Rune[j]";
select_first = "Rune[g]";
select_last = "Rune[G]";
select_reply = "Rune[s]";
reply = "Rune[r]";
reply_mention = "Rune[R]";
cancel = "Esc";
delete = "Rune[d]";
open = "Rune[o]";
yank_content = "Rune[y]";
yank_url = "Rune[u]";
yank_id = "Rune[i]";
};
message_input = {
send = "Enter";
cancel = "Esc";
tab_complete = "Tab";
open_editor = "Ctrl+E";
open_file_picker = "Ctrl+P";
};
mentions_list = {
up = "Up";
down = "Down";
};
};
theme = {
title = {
alignment = "left";
normal_style = {attributes = "dim";};
active_style = {
foreground = "purple";
attributes = "bold";
};
};
border = {
enabled = true;
padding = [0 0 1 1];
normal_style = {attributes = "dim";};
active_style = {
foreground = "purple";
attributes = "bold";
};
normal_set = "plain";
active_set = "plain";
};
guilds_tree = {
auto_expand_folders = false;
graphics = true;
graphics_color = "default";
};
messages_list = {
reply_indicator = ">";
forwarded_indicator = "<";
mention_style = {foreground = "blue";};
emoji_style = {foreground = "green";};
url_style = {foreground = "blue";};
attachment_style = {foreground = "yellow";};
};
mentions_list = {
min_width = 20;
max_height = 0;
};
};
};
}