about summary refs log tree commit diff
path: root/overlays/patches/emacs/overlay/hydra/pkgs.nix
diff options
context:
space:
mode:
Diffstat (limited to 'overlays/patches/emacs/overlay/hydra/pkgs.nix')
-rw-r--r--overlays/patches/emacs/overlay/hydra/pkgs.nix12
1 files changed, 10 insertions, 2 deletions
diff --git a/overlays/patches/emacs/overlay/hydra/pkgs.nix b/overlays/patches/emacs/overlay/hydra/pkgs.nix
index 79f889beb980..c926f6654165 100644
--- a/overlays/patches/emacs/overlay/hydra/pkgs.nix
+++ b/overlays/patches/emacs/overlay/hydra/pkgs.nix
@@ -3,8 +3,16 @@ nixpkgs:
 import nixpkgs {
   overlays = [
     (import ../default.nix)
-    (self: super: {
-      mkEmacsSet = emacs: { emacsPackages = super.recurseIntoAttrs (self.emacsPackagesFor emacs); };
+    (self: super: let
+      inherit (self) lib;
+    in {
+      # Build package sets and remove merged root-level packages since they are
+      # both present in each respective sub set and in the top-level
+      mkEmacsSet = emacs: super.recurseIntoAttrs (
+        lib.filterAttrs
+        (n: v: builtins.typeOf v == "set" && ! lib.isDerivation v)
+        (self.emacsPackagesFor emacs)
+      );
     })
   ];
 }