diff --git a/home/apps/discord.nix b/home/apps/discord.nix index 185e60b..2418cff 100644 --- a/home/apps/discord.nix +++ b/home/apps/discord.nix @@ -7,69 +7,30 @@ inherit (pkgs.stdenv) isDarwin isLinux; in { config = lib.mkIf config.isGraphical { - home.packages = with pkgs; [ - (discord.override { - withOpenASAR = true; - }) - ]; + home.packages = [(pkgs.discord.override {withOpenASAR = true;})]; home.activation.discordSettings = let - css = '' - @import url("https://catppuccin.github.io/discord/dist/catppuccin-frappe-pink.theme.css") (prefers-color-scheme: dark); - @import url("https://catppuccin.github.io/discord/dist/catppuccin-latte-pink.theme.css") (prefers-color-scheme: light); - @import url(//dablulite.github.io/css-snippets/ConsistentChatbar/import.css); - - :root { - --font-primary: "IBM Plex Sans", sans-serif; - --font-headline: "IBM Plex Sans", sans-serif; - --font-display: "IBM Plex Sans", sans-serif; - --font-code: "Cascadia Code", "Symbols Nerd Font", mono; - } - - @media (max-width: 1024px) { - nav[aria-label="Servers sidebar"] { - display: none; - } - .platform-osx div[class^="base_"] > div[class^="content_"] > div[class^="sidebar_"], - .platform-osx div[class^="base_"] > div[class^="content_"] > main[class^="container_"], - .platform-osx div[class^="base_"] > div[class^="content_"] > div[class^="chat_"] { - padding-top: 32px !important; - } - } - - @media (max-width: 768px) { - div[class^="base_"] > div[class^="content_"] > div[class^="sidebar_"] { - display: none; - } - } - - main[class^="chatContent_"] form div[class^="buttons_"], - main[class^="chatContent_"] form div[class^="attachWrapper_"] { - display: none; - } - ''; json = pkgs.writeTextFile { name = "discord-settings.json"; - text = - lib.generators.toJSON {} - { - DANGEROUS_ENABLE_DEVTOOLS_ONLY_ENABLE_IF_YOU_KNOW_WHAT_YOURE_DOING = true; - MIN_WIDTH = 0; - MIN_HEIGHT = 0; - openasar = { - inherit css; - setup = true; - }; - trayBalloonShown = false; - SKIP_HOST_UPDATE = true; + text = lib.generators.toJSON {} { + DANGEROUS_ENABLE_DEVTOOLS_ONLY_ENABLE_IF_YOU_KNOW_WHAT_YOURE_DOING = true; + MIN_WIDTH = 0; + MIN_HEIGHT = 0; + openasar = { + css = builtins.readFile ./discord/custom.css; + setup = true; }; + trayBalloonShown = false; + SKIP_HOST_UPDATE = true; + }; }; path = if isLinux - then config.xdg.configHome + "/discord/settings.json" + then "${config.xdg.configHome}/discord/settings.json" else if isDarwin - then config.home.homeDirectory + "/Library/Application Support/discord/settings.json" + then "${config.home.homeDirectory}/Library/Application Support/discord/settings.json" else throw "unsupported platform"; in + # gets written as a file after the writeBoundary to keep it mutable lib.hm.dag.entryAfter ["writeBoundary"] '' mkdir -p "$(dirname "${path}")" cp -f "${json}" "${path}" diff --git a/home/apps/discord/custom.css b/home/apps/discord/custom.css new file mode 100644 index 0000000..f50c1dc --- /dev/null +++ b/home/apps/discord/custom.css @@ -0,0 +1,32 @@ +@import url("//catppuccin.github.io/discord/dist/catppuccin-frappe-pink.theme.css") (prefers-color-scheme: dark); +@import url("//catppuccin.github.io/discord/dist/catppuccin-latte-pink.theme.css") (prefers-color-scheme: light); +@import url(//dablulite.github.io/css-snippets/ConsistentChatbar/import.css); + +:root { + --font-primary: "IBM Plex Sans", sans-serif; + --font-headline: "IBM Plex Sans", sans-serif; + --font-display: "IBM Plex Sans", sans-serif; + --font-code: "Berkeley Mono", "Symbols Nerd Font", mono; +} + +@media (max-width: 1024px) { + nav[aria-label="Servers sidebar"] { + display: none; + } + .platform-osx div[class^="base_"] > div[class^="content_"] > div[class^="sidebar_"], + .platform-osx div[class^="base_"] > div[class^="content_"] > main[class^="container_"], + .platform-osx div[class^="base_"] > div[class^="content_"] > div[class^="chat_"] { + padding-top: 32px !important; + } +} + +@media (max-width: 768px) { + div[class^="base_"] > div[class^="content_"] > div[class^="sidebar_"] { + display: none; + } +} + +main[class^="chatContent_"] form div[class^="buttons_"], +main[class^="chatContent_"] form div[class^="attachWrapper_"] { + display: none; +}