about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--default.nix30
1 files changed, 8 insertions, 22 deletions
diff --git a/default.nix b/default.nix
index 3a7defc2858c..044dbbb662a0 100644
--- a/default.nix
+++ b/default.nix
@@ -1,11 +1,5 @@
 self: super:
 let
-  # TODO: Figure out how to avoid awkward nixpkgs import
-  emacsWithPackages = import <nixpkgs/pkgs/build-support/emacs/wrapper.nix> (with super; {
-    inherit (xorg) lndir;
-    inherit lib makeWrapper stdenv runCommand;
-  });
-
   mkExDrv = emacsPackagesNg: name: args: let
     repoMeta = super.lib.importJSON (./. + "/repos/${name}.json");
   in emacsPackagesNg.melpaBuild (args // {
@@ -22,27 +16,19 @@ let
         repo   = name;
         inherit (repoMeta) rev sha256;
       };
-
   });
 
 in {
-  emacsPackagesNgFor = emacs: let
-    emacsPackagesNg = super.emacsPackagesNgFor emacs;
-
-    overridenAttrs = emacsPackagesNg // (with emacsPackagesNg; let
-      xelb = mkExDrv emacsPackagesNg "xelb" {
-        packageRequires = [ cl-generic emacs ];
+  emacsPackagesNgFor = emacs:
+    (super.emacsPackagesNgFor emacs).overrideScope'(eself: esuper: {
+      xelb = mkExDrv eself "xelb" {
+        packageRequires = [ eself.cl-generic eself.emacs ];
       };
-      exwm = mkExDrv emacsPackagesNg "exwm" {
-        packageRequires = [ xelb ];
+      exwm = mkExDrv eself "exwm" {
+        packageRequires = [ eself.xelb ];
       };
-      exim = mkExDrv emacsPackagesNg "exim" {
-        packageRequires = [ xelb ];
+      exim = mkExDrv eself "exim" {
+        packageRequires = [ eself.xelb ];
       };
-    in {
-      inherit exwm xelb exim;
     });
-  in overridenAttrs // {
-    emacsWithPackages = emacsWithPackages overridenAttrs;
-  };
 }