nixpkgs/pkgs/build-support/emacs/elpa.nix
adisbladis 3618d1d247 build-support/emacs: refactor
- Remove superflous `let` with `defaultMeta`

These can just be assigned to meta directly instead.

- Hoist internal intermediate derivation

- Remove top-level `with lib`

- Inherit `lib`/`builtins` into scopes
2023-12-29 02:38:57 +13:00

37 lines
694 B
Nix

# builder for Emacs packages built for packages.el
{ lib, stdenv, emacs, texinfo, writeText, gcc }:
let
handledArgs = [ "files" "fileSpecs" "meta" ];
genericBuild = import ./generic.nix { inherit lib stdenv emacs texinfo writeText gcc; };
in
{ pname
, version
, src
, meta ? {}
, ...
}@args:
genericBuild ({
dontUnpack = true;
installPhase = ''
runHook preInstall
emacs --batch -Q -l ${./elpa2nix.el} \
-f elpa2nix-install-package \
"$src" "$out/share/emacs/site-lisp/elpa"
runHook postInstall
'';
meta = {
homepage = args.src.meta.homepage or "https://elpa.gnu.org/packages/${pname}.html";
} // meta;
}
// removeAttrs args handledArgs)