diff --git a/pkgs/applications/editors/emacs-modes/elpa-packages.nix b/pkgs/applications/editors/emacs-modes/elpa-packages.nix index e7ed5a32b652..2312730ab0c1 100644 --- a/pkgs/applications/editors/emacs-modes/elpa-packages.nix +++ b/pkgs/applications/editors/emacs-modes/elpa-packages.nix @@ -4,11 +4,9 @@ To update the list of packages from MELPA, -1. Clone https://github.com/ttuegel/emacs2nix. -2. Run `./elpa-packages.sh` from emacs2nix. -3. Copy the new `elpa-generated.nix` file into Nixpkgs. -4. Check for evaluation errors: `nix-instantiate ./. -A emacsPackagesNg.elpaPackages`. -5. `git add pkgs/applications/editors/emacs-modes/elpa-generated.nix && git commit -m "elpa-packages $(date -Idate)"` +1. Run `./update-elpa`. +2. Check for evaluation errors: `nix-instantiate ../../../.. -A emacsPackagesNg.elpaPackages`. +3. `git commit -m "elpa-packages $(date -Idate) -- elpa-generated.nix"` */ diff --git a/pkgs/applications/editors/emacs-modes/emacs2nix.nix b/pkgs/applications/editors/emacs-modes/emacs2nix.nix new file mode 100644 index 000000000000..4c1a0dd2312d --- /dev/null +++ b/pkgs/applications/editors/emacs-modes/emacs2nix.nix @@ -0,0 +1,23 @@ +let + pkgs = import ../../../.. { }; + + src = pkgs.fetchgit { + url = "https://github.com/ttuegel/emacs2nix.git"; + fetchSubmodules = true; + rev = "752fe1bd891425cb7a4a53cd7b98c194c1fe4518"; + sha256 = "0asfdswh8sbnapbqhbz539zzxmv72f1iviha95iys34sgnd5k1nk"; + }; + +in pkgs.mkShell { + + buildInputs = [ + pkgs.bash + ]; + + EMACS2NIX = "${src}"; + + shellHook = '' + export PATH=$PATH:${src} + ''; + +} diff --git a/pkgs/applications/editors/emacs-modes/update-elpa b/pkgs/applications/editors/emacs-modes/update-elpa new file mode 100755 index 000000000000..ba2964b2ead0 --- /dev/null +++ b/pkgs/applications/editors/emacs-modes/update-elpa @@ -0,0 +1,4 @@ +#! /usr/bin/env nix-shell +#! nix-shell --show-trace ./emacs2nix.nix -i bash + +exec elpa-packages.sh --names $EMACS2NIX/names.nix -o elpa-generated.nix