diff --git a/pkgs/top-level/emacs-packages.nix b/pkgs/top-level/emacs-packages.nix index 23e00708949f..900cd3e01cab 100644 --- a/pkgs/top-level/emacs-packages.nix +++ b/pkgs/top-level/emacs-packages.nix @@ -70,393 +70,393 @@ let packagesFun = self: with self; { - inherit emacs melpaBuild trivialBuild; + inherit emacs melpaBuild trivialBuild; - emacsWithPackages = emacsWithPackages self; + emacsWithPackages = emacsWithPackages self; - ## START HERE + ## START HERE - pdf-tools = melpaBuild rec { - pname = "pdf-tools"; - version = "0.90"; - src = fetchFromGitHub { - owner = "politza"; - repo = "pdf-tools"; - rev = "v${version}"; - sha256 = "0iv2g5kd14zk3r5dzdw7b7hk4b5w7qpbilcqkja46jgxbb6xnpl9"; + pdf-tools = melpaBuild rec { + pname = "pdf-tools"; + version = "0.90"; + src = fetchFromGitHub { + owner = "politza"; + repo = "pdf-tools"; + rev = "v${version}"; + sha256 = "0iv2g5kd14zk3r5dzdw7b7hk4b5w7qpbilcqkja46jgxbb6xnpl9"; + }; + nativeBuildInputs = [ external.pkgconfig ]; + buildInputs = with external; [ autoconf automake libpng zlib poppler ]; + preBuild = "make server/epdfinfo"; + recipe = writeText "recipe" '' + (pdf-tools + :repo "politza/pdf-tools" :fetcher github + :files ("lisp/pdf-*.el" "server/epdfinfo")) + ''; + packageRequires = [ tablist let-alist ]; + meta = { + description = "Emacs support library for PDF files"; + license = gpl3; + }; }; - nativeBuildInputs = [ external.pkgconfig ]; - buildInputs = with external; [ autoconf automake libpng zlib poppler ]; - preBuild = "make server/epdfinfo"; - recipe = writeText "recipe" '' - (pdf-tools - :repo "politza/pdf-tools" :fetcher github - :files ("lisp/pdf-*.el" "server/epdfinfo")) - ''; - packageRequires = [ tablist let-alist ]; - meta = { - description = "Emacs support library for PDF files"; - license = gpl3; - }; - }; - elisp-ffi = melpaBuild rec { - pname = "elisp-ffi"; - version = "1.0.0"; - src = fetchFromGitHub { + elisp-ffi = melpaBuild rec { + pname = "elisp-ffi"; + version = "1.0.0"; + src = fetchFromGitHub { owner = "skeeto"; repo = "elisp-ffi"; rev = "${version}"; sha256 = "0z2n3h5l5fj8wl8i1ilfzv11l3zba14sgph6gz7dx7q12cnp9j22"; - }; - buildInputs = [ external.libffi ]; - preBuild = "make"; - recipe = writeText "recipe" '' - (elisp-ffi - :repo "skeeto/elisp-ffi" - :fetcher github - :files ("ffi-glue" "ffi.el")) - ''; - meta = { - description = "Emacs Lisp Foreign Function Interface"; - longDescription = '' - This library provides an FFI for Emacs Lisp so that Emacs - programs can invoke functions in native libraries. It works by - driving a subprocess to do the heavy lifting, passing result - values on to Emacs. + }; + buildInputs = [ external.libffi ]; + preBuild = "make"; + recipe = writeText "recipe" '' + (elisp-ffi + :repo "skeeto/elisp-ffi" + :fetcher github + :files ("ffi-glue" "ffi.el")) ''; - license = publicDomain; + meta = { + description = "Emacs Lisp Foreign Function Interface"; + longDescription = '' + This library provides an FFI for Emacs Lisp so that Emacs + programs can invoke functions in native libraries. It works by + driving a subprocess to do the heavy lifting, passing result + values on to Emacs. + ''; + license = publicDomain; + }; }; - }; - agda2-mode = with external; trivialBuild { - pname = "agda-mode"; - version = Agda.version; + agda2-mode = with external; trivialBuild { + pname = "agda-mode"; + version = Agda.version; - phases = [ "buildPhase" "installPhase" ]; + phases = [ "buildPhase" "installPhase" ]; - # already byte-compiled by Agda builder - buildPhase = '' - agda=`${Agda}/bin/agda-mode locate` - cp `dirname $agda`/*.el* . - ''; - - meta = { - description = "Agda2-mode for Emacs extracted from Agda package"; - longDescription = '' - Wrapper packages that liberates init.el from `agda-mode locate` magic. - Simply add this to user profile or systemPackages and do `(require 'agda2)` in init.el. + # already byte-compiled by Agda builder + buildPhase = '' + agda=`${Agda}/bin/agda-mode locate` + cp `dirname $agda`/*.el* . ''; - homepage = Agda.meta.homepage; - license = Agda.meta.license; + + meta = { + description = "Agda2-mode for Emacs extracted from Agda package"; + longDescription = '' + Wrapper packages that liberates init.el from `agda-mode locate` magic. + Simply add this to user profile or systemPackages and do `(require 'agda2)` in init.el. + ''; + homepage = Agda.meta.homepage; + license = Agda.meta.license; + }; }; - }; - emacsql-sqlite = melpaBuild rec { - pname = "emacsql-sqlite"; - ename = "emacsql-sqlite"; - version = "20180128.1252"; - src = fetchFromGitHub { - owner = "skeeto"; - repo = "emacsql"; - rev = "62d39157370219a1680265fa593f90ccd51457da"; - sha256 = "0ghl3g8n8wlw8rnmgbivlrm99wcwn93bv8flyalzs0z9j7p7fdq9"; - }; - recipe = fetchurl { - url = "https://raw.githubusercontent.com/milkypostman/melpa/3cfa28c7314fa57fa9a3aaaadf9ef83f8ae541a9/recipes/emacsql-sqlite"; - sha256 = "1y81nabzzb9f7b8azb9giy23ckywcbrrg4b88gw5qyjizbb3h70x"; - name = "recipe"; - }; - preBuild = '' - cd sqlite - make - ''; - stripDebugList = [ "share" ]; - packageRequires = [ emacs emacsql ]; - meta = { - homepage = "https://melpa.org/#/emacsql-sqlite"; - license = lib.licenses.free; - }; - }; - - elpy = melpaBuild rec { - pname = "elpy"; - version = external.elpy.version; - src = fetchFromGitHub { - owner = "jorgenschaefer"; - repo = pname; - rev = "39ea47c73f040ce8dcc1c2d2639ebc0eb57ab8c8"; - sha256 = "0q3av1qv4m6aj4bil608f688hjpr5px8zqnnrdqx784nz98rpjrs"; - }; - recipe = writeText "recipe" '' - (elpy :repo "jorgenschaefer/elpy" :fetcher github) - ''; - - patchPhase = '' - for file in elpy.el elpy-pkg.el; do - substituteInPlace $file \ - --replace "company \"0.8.2\"" "company \"${company.version}\"" \ - --replace "find-file-in-project \"3.3\"" "find-file-in-project \"${(melpaPackages self).find-file-in-project.version}\"" \ - --replace "highlight-indentation \"0.5.0\"" "highlight-indentation \"${highlight-indentation.version}\"" \ - --replace "pyvenv \"1.3\"" "pyvenv \"${pyvenv.version}\"" \ - --replace "yasnippet \"0.8.0\"" "yasnippet \"${yasnippet.version}\"" - done - ''; - - packageRequires = [ - company find-file-in-project highlight-indentation pyvenv yasnippet - ]; - - propagatedUserEnvPkgs = [ external.elpy ] ++ packageRequires; - - meta = { - description = "Emacs Python Development Environment"; - longDescription = '' - Elpy is an Emacs package to bring powerful Python editing to Emacs. - It combines a number of other packages, both written in Emacs Lisp as - well as Python. + emacsql-sqlite = melpaBuild rec { + pname = "emacsql-sqlite"; + ename = "emacsql-sqlite"; + version = "20180128.1252"; + src = fetchFromGitHub { + owner = "skeeto"; + repo = "emacsql"; + rev = "62d39157370219a1680265fa593f90ccd51457da"; + sha256 = "0ghl3g8n8wlw8rnmgbivlrm99wcwn93bv8flyalzs0z9j7p7fdq9"; + }; + recipe = fetchurl { + url = "https://raw.githubusercontent.com/milkypostman/melpa/3cfa28c7314fa57fa9a3aaaadf9ef83f8ae541a9/recipes/emacsql-sqlite"; + sha256 = "1y81nabzzb9f7b8azb9giy23ckywcbrrg4b88gw5qyjizbb3h70x"; + name = "recipe"; + }; + preBuild = '' + cd sqlite + make ''; - license = gpl3Plus; + stripDebugList = [ "share" ]; + packageRequires = [ emacs emacsql ]; + meta = { + homepage = "https://melpa.org/#/emacsql-sqlite"; + license = lib.licenses.free; + }; }; - }; - emacs-libvterm = callPackage ../applications/editors/emacs-modes/emacs-libvterm { }; + elpy = melpaBuild rec { + pname = "elpy"; + version = external.elpy.version; + src = fetchFromGitHub { + owner = "jorgenschaefer"; + repo = pname; + rev = "39ea47c73f040ce8dcc1c2d2639ebc0eb57ab8c8"; + sha256 = "0q3av1qv4m6aj4bil608f688hjpr5px8zqnnrdqx784nz98rpjrs"; + }; + recipe = writeText "recipe" '' + (elpy :repo "jorgenschaefer/elpy" :fetcher github) + ''; - evil-jumper = melpaBuild rec { - pname = "evil-jumper"; - version = "20151017"; - src = fetchFromGitHub { - owner = "bling"; - repo = pname; - rev = "fcadf2d93aaea3ba88a2ae63a860b9c1f0568167"; - sha256 = "0axx6cc9z9c1wh7qgm6ya54dsp3bn82bnb0cwj1rpv509qqmwgsj"; + patchPhase = '' + for file in elpy.el elpy-pkg.el; do + substituteInPlace $file \ + --replace "company \"0.8.2\"" "company \"${company.version}\"" \ + --replace "find-file-in-project \"3.3\"" "find-file-in-project \"${(melpaPackages self).find-file-in-project.version}\"" \ + --replace "highlight-indentation \"0.5.0\"" "highlight-indentation \"${highlight-indentation.version}\"" \ + --replace "pyvenv \"1.3\"" "pyvenv \"${pyvenv.version}\"" \ + --replace "yasnippet \"0.8.0\"" "yasnippet \"${yasnippet.version}\"" + done + ''; + + packageRequires = [ + company find-file-in-project highlight-indentation pyvenv yasnippet + ]; + + propagatedUserEnvPkgs = [ external.elpy ] ++ packageRequires; + + meta = { + description = "Emacs Python Development Environment"; + longDescription = '' + Elpy is an Emacs package to bring powerful Python editing to Emacs. + It combines a number of other packages, both written in Emacs Lisp as + well as Python. + ''; + license = gpl3Plus; + }; }; - recipe = writeText "recipe" '' - (evil-jumper :repo "bling/evil-jumper" :fetcher github) - ''; - packageRequires = [ evil ]; - meta = { - description = "Jump across buffer boundaries and revive dead buffers if necessary"; - license = gpl3Plus; + + emacs-libvterm = callPackage ../applications/editors/emacs-modes/emacs-libvterm { }; + + evil-jumper = melpaBuild rec { + pname = "evil-jumper"; + version = "20151017"; + src = fetchFromGitHub { + owner = "bling"; + repo = pname; + rev = "fcadf2d93aaea3ba88a2ae63a860b9c1f0568167"; + sha256 = "0axx6cc9z9c1wh7qgm6ya54dsp3bn82bnb0cwj1rpv509qqmwgsj"; + }; + recipe = writeText "recipe" '' + (evil-jumper :repo "bling/evil-jumper" :fetcher github) + ''; + packageRequires = [ evil ]; + meta = { + description = "Jump across buffer boundaries and revive dead buffers if necessary"; + license = gpl3Plus; + }; }; - }; - ess-R-object-popup = - callPackage ../applications/editors/emacs-modes/ess-R-object-popup { }; + ess-R-object-popup = + callPackage ../applications/editors/emacs-modes/ess-R-object-popup { }; - filesets-plus = callPackage ../applications/editors/emacs-modes/filesets-plus { }; + filesets-plus = callPackage ../applications/editors/emacs-modes/filesets-plus { }; - font-lock-plus = callPackage ../applications/editors/emacs-modes/font-lock-plus { }; + font-lock-plus = callPackage ../applications/editors/emacs-modes/font-lock-plus { }; - ghc-mod = melpaBuild rec { - pname = "ghc"; - version = external.ghc-mod.version; - src = external.ghc-mod.src; - packageRequires = [ haskell-mode ]; - propagatedUserEnvPkgs = [ external.ghc-mod ]; - recipe = writeText "recipe" '' - (ghc-mod :repo "DanielG/ghc-mod" :fetcher github :files ("elisp/*.el")) - ''; - fileSpecs = [ "elisp/*.el" ]; - meta = { - description = "An extension of haskell-mode that provides completion of symbols and documentation browsing"; - license = bsd3; + ghc-mod = melpaBuild rec { + pname = "ghc"; + version = external.ghc-mod.version; + src = external.ghc-mod.src; + packageRequires = [ haskell-mode ]; + propagatedUserEnvPkgs = [ external.ghc-mod ]; + recipe = writeText "recipe" '' + (ghc-mod :repo "DanielG/ghc-mod" :fetcher github :files ("elisp/*.el")) + ''; + fileSpecs = [ "elisp/*.el" ]; + meta = { + description = "An extension of haskell-mode that provides completion of symbols and documentation browsing"; + license = bsd3; + }; }; - }; - haskell-unicode-input-method = melpaBuild rec { - pname = "emacs-haskell-unicode-input-method"; - version = "20110905.2307"; - src = fetchFromGitHub { - owner = "roelvandijk"; - repo = "emacs-haskell-unicode-input-method"; - rev = "d8d168148c187ed19350bb7a1a190217c2915a63"; - sha256 = "09b7bg2s9aa4s8f2kdqs4xps3jxkq5wsvbi87ih8b6id38blhf78"; + haskell-unicode-input-method = melpaBuild rec { + pname = "emacs-haskell-unicode-input-method"; + version = "20110905.2307"; + src = fetchFromGitHub { + owner = "roelvandijk"; + repo = "emacs-haskell-unicode-input-method"; + rev = "d8d168148c187ed19350bb7a1a190217c2915a63"; + sha256 = "09b7bg2s9aa4s8f2kdqs4xps3jxkq5wsvbi87ih8b6id38blhf78"; + }; + recipe = writeText "recipe" '' + (haskell-unicode-input-method + :repo "roelvandijk/emacs-haskell-unicode-input-method" + :fetcher github) + ''; + packageRequires = []; + meta = { + homepage = "https://melpa.org/#haskell-unicode-input-method/"; + license = lib.licenses.free; + }; }; - recipe = writeText "recipe" '' - (haskell-unicode-input-method - :repo "roelvandijk/emacs-haskell-unicode-input-method" - :fetcher github) - ''; - packageRequires = []; - meta = { - homepage = "https://melpa.org/#haskell-unicode-input-method/"; - license = lib.licenses.free; + + hexrgb = callPackage ../applications/editors/emacs-modes/hexrgb { }; + + header2 = callPackage ../applications/editors/emacs-modes/header2 { }; + + helm-words = callPackage ../applications/editors/emacs-modes/helm-words { }; + + icicles = callPackage ../applications/editors/emacs-modes/icicles { }; + + irony = melpaBuild rec { + pname = "irony"; + ename = "irony"; + version = "20190516"; + src = fetchFromGitHub { + owner = "Sarcasm"; + repo = "irony-mode"; + rev = "c3ae899b61124a747ebafc705086345e460ac08e"; + sha256 = "06ld83vzyklfmrfi6pp893mvlnhacv9if75c9pbipjvy6nwfb63r"; + }; + recipe = fetchurl { + url = "https://raw.githubusercontent.com/milkypostman/melpa/3cfa28c7314fa57fa9a3aaaadf9ef83f8ae541a9/recipes/irony"; + sha256 = "1xcxrdrs7imi31nxpszgpaywq4ivni75hrdl4zzrf103xslqpl8a"; + name = "recipe"; + }; + preConfigure = '' + cd server + ''; + preBuild = '' + make + ''; + postInstall = '' + mkdir -p $out + mv $out/share/emacs/site-lisp/elpa/*/server/bin $out + rm -rf $out/share/emacs/site-lisp/elpa/*/server + ''; + preCheck = '' + cd source/server + ''; + dontUseCmakeBuildDir = true; + doCheck = true; + packageRequires = [ emacs ]; + nativeBuildInputs = [ external.cmake external.llvmPackages.llvm external.llvmPackages.clang ]; + meta = { + homepage = "https://melpa.org/#/irony"; + license = lib.licenses.gpl3; + }; }; - }; - hexrgb = callPackage ../applications/editors/emacs-modes/hexrgb { }; + redshank = callPackage ../applications/editors/emacs-modes/redshank { }; - header2 = callPackage ../applications/editors/emacs-modes/header2 { }; + rtags = melpaBuild rec { + pname = "rtags"; + version = "2.12"; + src = external.rtags.src; - helm-words = callPackage ../applications/editors/emacs-modes/helm-words { }; + dontConfigure = true; - icicles = callPackage ../applications/editors/emacs-modes/icicles { }; - - irony = melpaBuild rec { - pname = "irony"; - ename = "irony"; - version = "20190516"; - src = fetchFromGitHub { - owner = "Sarcasm"; - repo = "irony-mode"; - rev = "c3ae899b61124a747ebafc705086345e460ac08e"; - sha256 = "06ld83vzyklfmrfi6pp893mvlnhacv9if75c9pbipjvy6nwfb63r"; + propagatedUserEnvPkgs = [ external.rtags ]; + recipe = writeText "recipe" '' + (rtags + :repo "andersbakken/rtags" :fetcher github + :files ("src/*.el")) + ''; + inherit (external.rtags) meta; }; - recipe = fetchurl { - url = "https://raw.githubusercontent.com/milkypostman/melpa/3cfa28c7314fa57fa9a3aaaadf9ef83f8ae541a9/recipes/irony"; - sha256 = "1xcxrdrs7imi31nxpszgpaywq4ivni75hrdl4zzrf103xslqpl8a"; - name = "recipe"; + + lcs = melpaBuild rec { + pname = "lcs"; + version = circe.version; + src = circe.src; + recipe = writeText "recipe" '' + (lcs :repo "jorgenschaefer/circe" :fetcher github :files ("lcs.el")) + ''; + meta = { + description = "Longest Common Sequence (LCS) library for Emacs"; + license = gpl3Plus; + }; }; - preConfigure = '' - cd server - ''; - preBuild = '' - make - ''; - postInstall = '' - mkdir -p $out - mv $out/share/emacs/site-lisp/elpa/*/server/bin $out - rm -rf $out/share/emacs/site-lisp/elpa/*/server - ''; - preCheck = '' - cd source/server - ''; - dontUseCmakeBuildDir = true; - doCheck = true; - packageRequires = [ emacs ]; - nativeBuildInputs = [ external.cmake external.llvmPackages.llvm external.llvmPackages.clang ]; - meta = { - homepage = "https://melpa.org/#/irony"; - license = lib.licenses.gpl3; + + lib-requires = + callPackage ../applications/editors/emacs-modes/lib-requires { }; + + lui = melpaBuild rec { + pname = "lui"; + version = circe.version; + src = circe.src; + packageRequires = [ tracking ]; + recipe = writeText "recipe" '' + (lcs :repo "jorgenschaefer/circe" :fetcher github :files ("lui*.el")) + ''; + meta = { + description = "User interface library for Emacs"; + license = gpl3Plus; + }; }; - }; - redshank = callPackage ../applications/editors/emacs-modes/redshank { }; - - rtags = melpaBuild rec { - pname = "rtags"; - version = "2.12"; - src = external.rtags.src; - - dontConfigure = true; - - propagatedUserEnvPkgs = [ external.rtags ]; - recipe = writeText "recipe" '' - (rtags - :repo "andersbakken/rtags" :fetcher github - :files ("src/*.el")) - ''; - inherit (external.rtags) meta; - }; - - lcs = melpaBuild rec { - pname = "lcs"; - version = circe.version; - src = circe.src; - recipe = writeText "recipe" '' - (lcs :repo "jorgenschaefer/circe" :fetcher github :files ("lcs.el")) - ''; - meta = { - description = "Longest Common Sequence (LCS) library for Emacs"; - license = gpl3Plus; + nyan-mode = callPackage ../applications/editors/emacs-modes/nyan-mode { + inherit lib; }; - }; - lib-requires = - callPackage ../applications/editors/emacs-modes/lib-requires { }; + org-mac-link = + callPackage ../applications/editors/emacs-modes/org-mac-link { }; - lui = melpaBuild rec { - pname = "lui"; - version = circe.version; - src = circe.src; - packageRequires = [ tracking ]; - recipe = writeText "recipe" '' - (lcs :repo "jorgenschaefer/circe" :fetcher github :files ("lui*.el")) - ''; - meta = { - description = "User interface library for Emacs"; - license = gpl3Plus; + perl-completion = + callPackage ../applications/editors/emacs-modes/perl-completion { }; + + railgun = callPackage ../applications/editors/emacs-modes/railgun { }; + + gn = callPackage ../applications/editors/emacs-modes/gn { }; + + shorten = melpaBuild rec { + pname = "shorten"; + version = circe.version; + src = circe.src; + recipe = writeText "recipe" '' + (shorten :repo "jorgenschaefer/circe" :fetcher github :files ("shorten.el")) + ''; + meta = { + description = "String shortening to unique prefix library for Emacs"; + license = gpl3Plus; + }; }; - }; - nyan-mode = callPackage ../applications/editors/emacs-modes/nyan-mode { - inherit lib; - }; + stgit = callPackage ../applications/editors/emacs-modes/stgit { }; - org-mac-link = - callPackage ../applications/editors/emacs-modes/org-mac-link { }; + structured-haskell-mode = self.shm; + shm = (melpaPackages self).shm.overrideAttrs (attrs: { + propagatedUserEnvPkgs = [ external.structured-haskell-mode ]; + }); - perl-completion = - callPackage ../applications/editors/emacs-modes/perl-completion { }; + thingatpt-plus = callPackage ../applications/editors/emacs-modes/thingatpt-plus { }; - railgun = callPackage ../applications/editors/emacs-modes/railgun { }; + tramp = callPackage ../applications/editors/emacs-modes/tramp { }; - gn = callPackage ../applications/editors/emacs-modes/gn { }; + yaoddmuse = callPackage ../applications/editors/emacs-modes/yaoddmuse { }; - shorten = melpaBuild rec { - pname = "shorten"; - version = circe.version; - src = circe.src; - recipe = writeText "recipe" '' - (shorten :repo "jorgenschaefer/circe" :fetcher github :files ("shorten.el")) - ''; - meta = { - description = "String shortening to unique prefix library for Emacs"; - license = gpl3Plus; + zeitgeist = callPackage ../applications/editors/emacs-modes/zeitgeist { }; + + zmq = melpaBuild rec { + pname = "zmq"; + ename = "zmq"; + version = "0.10.10"; + src = fetchFromGitHub { + owner = "dzop"; + repo = "emacs-zmq"; + rev = "v0.10.10"; + sha256 = "0ngxm5mm0kqgvn8977ryrngamx0khzlw86d8vz5s0jhm2kgwnqp8"; + }; + recipe = fetchurl { + url = "https://raw.githubusercontent.com/milkypostman/melpa/72f4dcc2723de826bf1af7235ac6d9119a243c63/recipes/zmq"; + sha256 = "14bbh00a58xgxyxl8zjxl57rf6351fnwsnk4cvvy341fvf86dklc"; + name = "recipe"; + }; + stripDebugList = [ "share" ]; + packageRequires = [ emacs ]; + nativeBuildInputs = [ + external.autoconf external.automake external.pkgconfig external.libtool + (external.zeromq.override { enableDrafts = true; }) + ]; + preBuild = '' + make + ''; + postInstall = '' + mv $out/share/emacs/site-lisp/elpa/zmq-*/src/.libs/emacs-zmq.so $out/share/emacs/site-lisp/elpa/zmq-* + rm -r $out/share/emacs/site-lisp/elpa/zmq-*/src + rm $out/share/emacs/site-lisp/elpa/zmq-*/Makefile + ''; + meta = { + homepage = "https://melpa.org/#/zmq"; + description = "Emacs bindings to ØMQ"; + license = lib.licenses.gpl2; + }; }; - }; - - stgit = callPackage ../applications/editors/emacs-modes/stgit { }; - - structured-haskell-mode = self.shm; - shm = (melpaPackages self).shm.overrideAttrs (attrs: { - propagatedUserEnvPkgs = [ external.structured-haskell-mode ]; - }); - - thingatpt-plus = callPackage ../applications/editors/emacs-modes/thingatpt-plus { }; - - tramp = callPackage ../applications/editors/emacs-modes/tramp { }; - - yaoddmuse = callPackage ../applications/editors/emacs-modes/yaoddmuse { }; - - zeitgeist = callPackage ../applications/editors/emacs-modes/zeitgeist { }; - - zmq = melpaBuild rec { - pname = "zmq"; - ename = "zmq"; - version = "0.10.10"; - src = fetchFromGitHub { - owner = "dzop"; - repo = "emacs-zmq"; - rev = "v0.10.10"; - sha256 = "0ngxm5mm0kqgvn8977ryrngamx0khzlw86d8vz5s0jhm2kgwnqp8"; - }; - recipe = fetchurl { - url = "https://raw.githubusercontent.com/milkypostman/melpa/72f4dcc2723de826bf1af7235ac6d9119a243c63/recipes/zmq"; - sha256 = "14bbh00a58xgxyxl8zjxl57rf6351fnwsnk4cvvy341fvf86dklc"; - name = "recipe"; - }; - stripDebugList = [ "share" ]; - packageRequires = [ emacs ]; - nativeBuildInputs = [ - external.autoconf external.automake external.pkgconfig external.libtool - (external.zeromq.override { enableDrafts = true; }) - ]; - preBuild = '' - make - ''; - postInstall = '' - mv $out/share/emacs/site-lisp/elpa/zmq-*/src/.libs/emacs-zmq.so $out/share/emacs/site-lisp/elpa/zmq-* - rm -r $out/share/emacs/site-lisp/elpa/zmq-*/src - rm $out/share/emacs/site-lisp/elpa/zmq-*/Makefile - ''; - meta = { - homepage = "https://melpa.org/#/zmq"; - description = "Emacs bindings to ØMQ"; - license = lib.licenses.gpl2; - }; - }; };