emacsWithPackages: know its own package set

Fixes #10819. emacsWithPackages will know its own package set. This
requires it to be in a package set, rather than at the top level, so it
lives in emacsPackagesNg.
This commit is contained in:
Thomas Tuegel 2015-12-16 20:53:12 -06:00
parent 78d68b8c14
commit dadfd93811
3 changed files with 20 additions and 7 deletions

View file

@ -1,8 +1,15 @@
{ stdenv, makeWrapper, emacs }:
{ lib, makeWrapper, stdenv }: self:
with stdenv.lib;
with lib; let inherit (self) emacs; in
explicitRequires: # packages explicitly requested by the user
packagesFun: # packages explicitly requested by the user
let
explicitRequires =
if builtins.isFunction packagesFun
then packagesFun self
else packagesFun;
in
stdenv.mkDerivation {
name = (appendToName "with-packages" emacs).name;

View file

@ -11629,7 +11629,7 @@ let
inherit lib newScope stdenv;
inherit fetchFromGitHub fetchgit fetchhg fetchurl;
inherit emacs texinfo;
inherit emacs texinfo makeWrapper;
trivialBuild = callPackage ../build-support/emacs/trivial.nix {
inherit emacs;
@ -11648,8 +11648,8 @@ let
emacs24PackagesNg = recurseIntoAttrs (emacsPackagesNgGen emacs24);
emacsWithPackages = callPackage ../build-support/emacs/wrapper.nix { };
emacs24WithPackages = emacsWithPackages.override { emacs = emacs24; };
emacs24WithPackages = emacs24PackagesNg.emacsWithPackages;
emacsWithPackages = emacsPackagesNg.emacsWithPackages;
inherit (gnome3) empathy;

View file

@ -35,7 +35,7 @@
, lib, newScope, stdenv, fetchurl, fetchgit, fetchFromGitHub, fetchhg
, emacs, texinfo
, emacs, texinfo, makeWrapper
, trivialBuild
, melpaBuild
@ -58,10 +58,16 @@ let
inherit lib;
};
emacsWithPackages = import ../build-support/emacs/wrapper.nix {
inherit lib makeWrapper stdenv;
};
packagesFun = self: with self; {
inherit emacs melpaBuild trivialBuild;
emacsWithPackages = emacsWithPackages self;
## START HERE
ac-haskell-process = melpaBuild rec {