summary refs log blame commit diff
path: root/pkgs/build-support/emacs/elpa.nix
blob: 08257ff254258eb962d87537b9a40b47fe91a8a1 (plain) (tree)
1
2
3
4
5
6
7
8
9

                                                  
                                                





         
           


       







                                                                                       
                                                                           







                                               
                                                


                       

                             




                                         
# builder for Emacs packages built for packages.el

{ lib, stdenv, emacs, texinfo, writeText, gcc }:

with lib;

{ pname
, version
, src
, meta ? {}
, ...
}@args:

let

  defaultMeta = {
    homepage = args.src.meta.homepage or "https://elpa.gnu.org/packages/${pname}.html";
  };

in

import ./generic.nix { inherit lib stdenv emacs texinfo writeText gcc; } ({

  phases = "installPhase fixupPhase distPhase";

  installPhase = ''
    runHook preInstall

    emacs --batch -Q -l ${./elpa2nix.el} \
        -f elpa2nix-install-package \
        "$src" "$out/share/emacs/site-lisp/elpa"

    runHook postInstall
  '';

  meta = defaultMeta // meta;
}

// removeAttrs args [ "files" "fileSpecs"
                      "meta"
                    ])