summary refs log tree commit diff
path: root/pkgs/top-level/emacs-packages.nix
diff options
context:
space:
mode:
authoradisbladis <adisbladis@gmail.com>2021-08-04 09:13:46 -0500
committeradisbladis <adisbladis@gmail.com>2021-08-04 09:31:23 -0500
commit9bd54f586e162749c4c12a454b101987cb16de5c (patch)
tree7698fbce19fc7312421e735a8a354da1d31dca71 /pkgs/top-level/emacs-packages.nix
parent1cc8723f0e5f56615f3d63cd97906afc77feacbe (diff)
downloadnixpkgs-9bd54f586e162749c4c12a454b101987cb16de5c.tar
nixpkgs-9bd54f586e162749c4c12a454b101987cb16de5c.tar.gz
nixpkgs-9bd54f586e162749c4c12a454b101987cb16de5c.tar.bz2
nixpkgs-9bd54f586e162749c4c12a454b101987cb16de5c.tar.lz
nixpkgs-9bd54f586e162749c4c12a454b101987cb16de5c.tar.xz
nixpkgs-9bd54f586e162749c4c12a454b101987cb16de5c.tar.zst
nixpkgs-9bd54f586e162749c4c12a454b101987cb16de5c.zip
emacs.pkgs: Propagate overriden scope to emacs package in set
This is the true fix for https://github.com/NixOS/nixpkgs/issues/130020.
Diffstat (limited to 'pkgs/top-level/emacs-packages.nix')
-rw-r--r--pkgs/top-level/emacs-packages.nix16
1 files changed, 13 insertions, 3 deletions
diff --git a/pkgs/top-level/emacs-packages.nix b/pkgs/top-level/emacs-packages.nix
index 3fa2d2ea5dc..9b4d700a355 100644
--- a/pkgs/top-level/emacs-packages.nix
+++ b/pkgs/top-level/emacs-packages.nix
@@ -21,7 +21,12 @@
   (package-initialize)
 */
 
-{ pkgs', makeScope, makeOverridable, emacs }:
+{ pkgs'
+, emacs'
+, makeScope
+, makeOverridable
+, dontRecurseIntoAttrs
+}:
 
 let
 
@@ -71,7 +76,12 @@ in makeScope pkgs'.newScope (self: makeOverridable ({
   // manualPackages // { inherit manualPackages; }
   // {
 
-    inherit emacs;
+    # Propagate overriden scope
+    emacs = emacs'.overrideAttrs(old: {
+      passthru = old.passthru // {
+        pkgs = dontRecurseIntoAttrs self;
+      };
+    });
 
     trivialBuild = pkgs.callPackage ../build-support/emacs/trivial.nix {
       inherit (self) emacs;
@@ -84,7 +94,7 @@ in makeScope pkgs'.newScope (self: makeOverridable ({
     emacsWithPackages = emacsWithPackages { inherit pkgs lib; } self;
     withPackages = emacsWithPackages { inherit pkgs lib; } self;
 
-  }// {
+  } // {
 
     # Package specific priority overrides goes here