From 2d2e50224c039aa979bdb296b9b6dae8997baaeb Mon Sep 17 00:00:00 2001 From: talyz Date: Sun, 13 Dec 2020 18:13:17 +0100 Subject: [PATCH] Allow `leaf` to be used as an alternative to `use-package`.. ..in `emacsWithPackagesFromUsePackage`. --- README.org | 2 +- elisp.nix | 2 +- parse.nix | 15 +++++++++------ 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/README.org b/README.org index 3e95575a8..efd197b6a 100644 --- a/README.org +++ b/README.org @@ -33,7 +33,7 @@ from various types of dependency declaration. (These are abstractions on top of =emacsWithPackages=.) For example, =emacsWithPackagesFromUsePackage= adds packages which are -required in a user's config via =use-package=: +required in a user's config via =use-package= or =leaf=. #+BEGIN_SRC nix { diff --git a/elisp.nix b/elisp.nix index 0776dffab..391342f47 100644 --- a/elisp.nix +++ b/elisp.nix @@ -64,4 +64,4 @@ emacsWithPackages (epkgs: usePkgs = map (name: overridden.${name} or (mkPackageError name)) packages; extraPkgs = extraEmacsPackages overridden; in - [ overridden.use-package ] ++ usePkgs ++ extraPkgs) + usePkgs ++ extraPkgs) diff --git a/parse.nix b/parse.nix index db457ac51..d17ee7bfb 100644 --- a/parse.nix +++ b/parse.nix @@ -134,13 +134,16 @@ let recurse = item: if builtins.isList item && item != [] then - if (builtins.head item) == "use-package" then - if !(isDisabled item) then - [ (getName item) ] ++ map recurse item + let + packageManager = builtins.head item; + in + if builtins.elem packageManager [ "use-package" "leaf" ] then + if !(isDisabled item) then + [ packageManager (getName item) ] ++ map recurse item + else + [] else - [] - else - map recurse item + map recurse item else []; in