summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorseth <[email protected]>2023-07-19 16:52:00 -0400
committerseth <[email protected]>2023-07-19 16:52:00 -0400
commiteb5514977042b87a2729304bd8a3762f78a015e7 (patch)
treecfd21085153a5e320e2d4a60894772c0a134eff9
parent0cbc3f025cf5aad554b1c4294e98409748c1fe07 (diff)
overlay: init
-rw-r--r--hosts/profiles.nix2
-rw-r--r--parts/overlays/btop.nix10
-rw-r--r--parts/overlays/default.nix8
-rw-r--r--parts/overlays/discord.nix26
-rw-r--r--parts/overlays/fish.nix10
-rw-r--r--parts/overlays/neovim.nix10
-rw-r--r--users/seth/desktop/default.nix4
-rw-r--r--users/seth/desktop/gnome/default.nix2
8 files changed, 67 insertions, 5 deletions
diff --git a/hosts/profiles.nix b/hosts/profiles.nix
index 4d38b2d..349028a 100644
--- a/hosts/profiles.nix
+++ b/hosts/profiles.nix
@@ -28,7 +28,7 @@ in {
};
nixpkgs = {
- overlays = [nur.overlay getchoo.overlays.default];
+ overlays = [nur.overlay getchoo.overlays.default self.overlays.default];
config.allowUnfree = true;
};
diff --git a/parts/overlays/btop.nix b/parts/overlays/btop.nix
new file mode 100644
index 0000000..3192204
--- /dev/null
+++ b/parts/overlays/btop.nix
@@ -0,0 +1,10 @@
+_: prev: {
+ btop = prev.symlinkJoin {
+ inherit (prev.btop) passthru;
+ name = "btop-nodesktop";
+ paths = [prev.btop];
+ postBuild = ''
+ rm $out/share/applications/btop.desktop
+ '';
+ };
+}
diff --git a/parts/overlays/default.nix b/parts/overlays/default.nix
new file mode 100644
index 0000000..2f81d17
--- /dev/null
+++ b/parts/overlays/default.nix
@@ -0,0 +1,8 @@
+{lib, ...}: {
+ flake.overlays.default = lib.composeManyExtensions [
+ (import ./btop.nix)
+ (import ./discord.nix)
+ (import ./fish.nix)
+ (import ./neovim.nix)
+ ];
+}
diff --git a/parts/overlays/discord.nix b/parts/overlays/discord.nix
new file mode 100644
index 0000000..770bbc5
--- /dev/null
+++ b/parts/overlays/discord.nix
@@ -0,0 +1,26 @@
+_: prev: let
+ mkOverride = d: let
+ 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
+ d'.overrideAttrs (_: {inherit desktopItem;});
+in {
+ discord = mkOverride prev.discord;
+ discord-canary = mkOverride prev.discord-canary;
+}
diff --git a/parts/overlays/fish.nix b/parts/overlays/fish.nix
new file mode 100644
index 0000000..289c640
--- /dev/null
+++ b/parts/overlays/fish.nix
@@ -0,0 +1,10 @@
+_: prev: {
+ fish = prev.symlinkJoin {
+ inherit (prev.fish) passthru;
+ name = "fish-nodesktop";
+ paths = [prev.fish];
+ postBuild = ''
+ rm $out/share/applications/fish.desktop
+ '';
+ };
+}
diff --git a/parts/overlays/neovim.nix b/parts/overlays/neovim.nix
new file mode 100644
index 0000000..524051a
--- /dev/null
+++ b/parts/overlays/neovim.nix
@@ -0,0 +1,10 @@
+_: prev: {
+ neovim = prev.symlinkJoin {
+ inherit (prev.neovim) passthru;
+ name = "neovim-nodesktop";
+ paths = [prev.neovim];
+ postBuild = ''
+ rm $out/share/applications/*.desktop
+ '';
+ };
+}
diff --git a/users/seth/desktop/default.nix b/users/seth/desktop/default.nix
index e14f90a..afdd97e 100644
--- a/users/seth/desktop/default.nix
+++ b/users/seth/desktop/default.nix
@@ -20,9 +20,7 @@ in {
config.home = mkIf cfg.enable {
packages = with pkgs; [
chromium
- (discord.override {
- withOpenASAR = true;
- })
+ discord-canary
element-desktop
spotify
steam
diff --git a/users/seth/desktop/gnome/default.nix b/users/seth/desktop/gnome/default.nix
index 560103b..6579447 100644
--- a/users/seth/desktop/gnome/default.nix
+++ b/users/seth/desktop/gnome/default.nix
@@ -31,7 +31,7 @@ in {
favorite-apps = [
"firefox.desktop"
"org.gnome.Nautilus.desktop"
- "discord.desktop"
+ "discord-canary.desktop"
];
};
"org/gnome/desktop/interface" = {