dotfiles/home/apps/discord.nix

73 lines
2 KiB
Nix
Raw Normal View History

2023-07-06 09:20:54 +02:00
{
config,
lib,
pkgs,
...
}: let
inherit (pkgs.stdenv) isDarwin isLinux;
in {
2023-11-02 10:50:44 +01:00
home.packages = with pkgs; [
(discord.override {
withOpenASAR = true;
})
];
2023-07-06 09:20:54 +02:00
home.activation.discordSettings = let
css = ''
:root {
--font-primary: "IBM Plex Sans", sans-serif;
--font-headline: "IBM Plex Sans", sans-serif;
--font-display: "IBM Plex Sans", sans-serif;
2023-11-02 10:50:44 +01:00
--font-code: "Cascadia Code", "Symbols Nerd Font", mono;
2023-07-06 09:20:54 +02:00
}
2023-07-25 15:13:26 +02:00
@media (max-width: 1024px) {
nav[aria-label="Servers sidebar"] {
display: none;
}
2023-11-02 10:50:44 +01:00
.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;
2023-07-25 15:13:26 +02:00
}
}
@media (max-width: 768px) {
2023-11-02 10:50:44 +01:00
div[class^="base_"] > div[class^="content_"] > div[class^="sidebar_"] {
2023-07-25 15:13:26 +02:00
display: none;
}
2023-11-02 10:50:44 +01:00
}
main[class^="chatContent_"] form div[class^="buttons_"],
main[class^="chatContent_"] form div[class^="attachWrapper_"] {
display: none;
2023-07-25 15:13:26 +02:00
}
2023-07-06 09:20:54 +02:00
'';
json = pkgs.writeTextFile {
name = "discord-settings.json";
text =
lib.generators.toJSON {}
{
2023-11-02 10:50:44 +01:00
DANGEROUS_ENABLE_DEVTOOLS_ONLY_ENABLE_IF_YOU_KNOW_WHAT_YOURE_DOING = true;
MIN_WIDTH = 0;
MIN_HEIGHT = 0;
2023-07-06 09:20:54 +02:00
openasar = {
inherit css;
setup = true;
};
trayBalloonShown = false;
2023-11-02 10:50:44 +01:00
SKIP_HOST_UPDATE = true;
2023-07-06 09:20:54 +02:00
};
};
path =
if isLinux
then config.xdg.configHome + "/discord/settings.json"
else if isDarwin
2023-08-17 04:27:28 +02:00
then config.home.homeDirectory + "/Library/Application Support/discord/settings.json"
2023-07-06 09:20:54 +02:00
else throw "unsupported platform";
in
lib.hm.dag.entryAfter ["writeBoundary"] ''
2023-11-02 10:50:44 +01:00
mkdir -p "$(dirname "${path}")"
cp -f "${json}" "${path}"
2023-07-06 09:20:54 +02:00
'';
}