{ lib, pkgs, osConfig, ... }: let styleCfg = osConfig.local.style; in { config = lib.mkIf osConfig.local.profiles.desktop.enable { home.packages = [pkgs.vesktop]; xdg.configFile."vesktop/themes/midnight-base16.css".text = with styleCfg.scheme.palette; lib.mkIf styleCfg.enable '' /** * @name Midnight-base16 * @description A dark, rounded discord theme. Updated to use base16 colors. * @author refact0r * @version 1.6.2 * @invite nz87hXyvcy * @website https://github.com/refact0r/midnight-discord * @source https://github.com/refact0r/midnight-discord/blob/master/midnight.theme.css * @authorId 508863359777505290 * @authorLink https://www.refact0r.dev */ /* IMPORTANT: make sure to enable dark mode in discord settings for the theme to apply properly!!! */ @import url('https://refact0r.github.io/midnight-discord/midnight.css'); /* customize things here */ :root { /* font, change to 'gg sans' for default discord font*/ --font: 'gg sans'; /* top left corner text */ --corner-text: '${styleCfg.scheme.name}'; /* color of status indicators and window controls */ --online-indicator: ${base0B}; /* change to #23a55a for default green */ --dnd-indicator: ${base08}; /* change to #f13f43 for default red */ --idle-indicator: ${base0A}; /* change to #f0b232 for default yellow */ --streaming-indicator: ${base0E}; /* change to #593695 for default purple */ /* accent colors */ --accent-1: ${base0D}; /* links */ --accent-2: ${base0E}; /* general unread/mention elements, some icons when active */ --accent-3: ${base0E}; /* accent buttons */ --accent-4: ${base03}; /* accent buttons when hovered */ --accent-5: ${base07}; /* accent buttons when clicked */ --mention: ${base00}1a; /* mentions & mention messages */ --mention-hover: ${base00}0d; /* mentions & mention messages when hovered */ /* text colors */ --text-0: var(--bg-4); /* text on colored elements */ --text-1: ${base06}; /* other normally white text */ --text-2: ${base06}; /* headings and important text */ --text-3: ${base05}; /* normal text */ --text-4: ${base05}; /* icon buttons and channels */ --text-5: ${base04}; /* muted channels/chats and timestamps */ /* background and dark colors */ --bg-1: ${base0E}; /* dark buttons when clicked */ --bg-2: ${base02}; /* dark buttons */ --bg-3: ${base01}; /* spacing, secondary elements */ --bg-4: ${base00}; /* main background color */ --hover: ${base03}1a; /* channels and buttons when hovered */ --active: ${base03}33; /* channels and buttons when clicked or selected */ --message-hover: #0000001a; /* messages when hovered */ /* amount of spacing and padding */ --spacing: 12px; /* animations */ /* ALL ANIMATIONS CAN BE DISABLED WITH REDUCED MOTION IN DISCORD SETTINGS */ --list-item-transition: 0.2s ease; /* channels/members/settings hover transition */ --unread-bar-transition: 0.2s ease; /* unread bar moving into view transition */ --moon-spin-transition: 0.4s ease; /* moon icon spin */ --icon-spin-transition: 1s ease; /* round icon button spin (settings, emoji, etc.) */ /* corner roundness (border-radius) */ --roundness-xl: 22px; /* roundness of big panel outer corners */ --roundness-l: 20px; /* popout panels */ --roundness-m: 16px; /* smaller panels, images, embeds */ --roundness-s: 12px; /* members, settings inputs */ --roundness-xs: 10px; /* channels, buttons */ --roundness-xxs: 8px; /* searchbar, small elements */ /* direct messages moon icon */ /* change to block to show, none to hide */ --discord-icon: none; /* discord icon */ --moon-icon: block; /* moon icon */ --moon-icon-url: url('https://upload.wikimedia.org/wikipedia/commons/c/c4/Font_Awesome_5_solid_moon.svg'); /* custom icon url */ --moon-icon-size: auto; /* filter uncolorable elements to fit theme */ /* (just set to none, they're too much work to configure) */ --login-bg-filter: saturate(0.3) hue-rotate(-15deg) brightness(0.4); /* login background artwork */ --green-to-accent-3-filter: hue-rotate(56deg) saturate(1.43); /* add friend page explore icon */ --blurple-to-accent-3-filter: hue-rotate(304deg) saturate(0.84) brightness(1.2); /* add friend page school icon */ } /* Selected chat/friend text */ .selected_f5eb4b, .selected_f6f816 .link_d8bfb3 { color: var(--text-0) !important; background: var(--accent-3) !important; } .selected_f6f816 .link_d8bfb3 * { color: var(--text-0) !important; fill: var(--text-0) !important; } ''; }; }