From 10b0df38b4286237b56ff9177f8d4c5676bfb5c1 Mon Sep 17 00:00:00 2001 From: seth Date: Mon, 30 Oct 2023 04:22:32 -0400 Subject: tree-wide: refactor i went overboard on modules. this is much comfier --- overlays/discord.nix | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 overlays/discord.nix (limited to 'overlays/discord.nix') diff --git a/overlays/discord.nix b/overlays/discord.nix new file mode 100644 index 0000000..dfb0cae --- /dev/null +++ b/overlays/discord.nix @@ -0,0 +1,31 @@ +_: prev: let + mkOverride = d: let + # TODO: re-enable openASAR when gnome wayland decorations work with it + d' = d; #.override {withOpenASAR = true;}; + inherit (d') pname; + + desktopName = + if pname == "discord-canary" + then "Discord Canary" + else "Discord"; + + flags = "--enable-gpu-rasterization --enable-zero-copy --enable-gpu-compositing --enable-native-gpu-memory-buffers --enable-oop-rasterization --enable-features=UseSkiaRenderer,WaylandWindowDecorations"; + desktopItem = prev.makeDesktopItem { + name = pname; + exec = "${builtins.replaceStrings [" "] [""] desktopName} ${flags}"; + icon = pname; + inherit desktopName; + genericName = d'.meta.description; + categories = ["Network" "InstantMessaging"]; + mimeTypes = ["x-scheme-handler/discord"]; + }; + in + if prev.stdenv.isLinux + then d'.overrideAttrs (_: {inherit desktopItem;}) + else if (pname == "discord" && prev.stdenv.isDarwin) + then d' + else d; +in { + discord = mkOverride prev.discord; + discord-canary = mkOverride prev.discord-canary; +} -- cgit v1.2.3