2021-02-24 13:37:34 +00:00
|
|
|
{ lib, pkgs }: self: with self; with lib.licenses; {
|
2019-08-05 00:26:29 +01:00
|
|
|
|
2021-08-03 18:16:20 +01:00
|
|
|
elisp-ffi = let
|
|
|
|
rev = "da37c516a0e59bdce63fb2dc006a231dee62a1d9";
|
|
|
|
in melpaBuild {
|
2019-08-05 00:26:29 +01:00
|
|
|
pname = "elisp-ffi";
|
2021-08-03 18:16:20 +01:00
|
|
|
version = "20170518.0";
|
|
|
|
|
|
|
|
commit = rev;
|
2021-06-06 08:55:55 +01:00
|
|
|
|
2019-08-05 00:26:29 +01:00
|
|
|
src = pkgs.fetchFromGitHub {
|
|
|
|
owner = "skeeto";
|
|
|
|
repo = "elisp-ffi";
|
2021-08-03 18:16:20 +01:00
|
|
|
inherit rev;
|
|
|
|
sha256 = "sha256-StOezQEnNTjRmjY02ub5FRh59aL6gWfw+qgboz0wF94=";
|
2019-08-05 00:26:29 +01:00
|
|
|
};
|
2021-06-06 08:55:55 +01:00
|
|
|
|
2021-08-03 18:16:20 +01:00
|
|
|
nativeBuildInputs = [ pkgs.pkg-config ];
|
|
|
|
|
2021-02-24 13:37:34 +00:00
|
|
|
buildInputs = [ pkgs.libffi ];
|
2021-06-06 08:55:55 +01:00
|
|
|
|
2021-08-03 18:16:20 +01:00
|
|
|
preBuild = ''
|
|
|
|
mv ffi.el elisp-ffi.el
|
|
|
|
make
|
|
|
|
'';
|
2021-06-06 08:55:55 +01:00
|
|
|
|
2019-08-05 00:26:29 +01:00
|
|
|
recipe = pkgs.writeText "recipe" ''
|
|
|
|
(elisp-ffi
|
|
|
|
:repo "skeeto/elisp-ffi"
|
2021-08-03 18:16:20 +01:00
|
|
|
:fetcher github)
|
2019-08-05 00:26:29 +01:00
|
|
|
'';
|
2021-06-06 08:55:55 +01:00
|
|
|
|
2019-08-05 00:26:29 +01:00
|
|
|
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;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2019-08-13 22:52:01 +01:00
|
|
|
ghc-mod = melpaBuild {
|
2019-08-05 00:26:29 +01:00
|
|
|
pname = "ghc";
|
2021-02-24 13:37:34 +00:00
|
|
|
version = pkgs.haskellPackages.ghc-mod.version;
|
2021-06-06 08:55:55 +01:00
|
|
|
|
2021-02-24 13:37:34 +00:00
|
|
|
src = pkgs.haskellPackages.ghc-mod.src;
|
2021-06-06 08:55:55 +01:00
|
|
|
|
2019-08-05 00:26:29 +01:00
|
|
|
packageRequires = [ haskell-mode ];
|
2021-06-06 08:55:55 +01:00
|
|
|
|
2021-02-24 13:37:34 +00:00
|
|
|
propagatedUserEnvPkgs = [ pkgs.haskellPackages.ghc-mod ];
|
2021-06-06 08:55:55 +01:00
|
|
|
|
2019-08-05 00:26:29 +01:00
|
|
|
recipe = pkgs.writeText "recipe" ''
|
|
|
|
(ghc-mod :repo "DanielG/ghc-mod" :fetcher github :files ("elisp/*.el"))
|
|
|
|
'';
|
2021-06-06 08:55:55 +01:00
|
|
|
|
2019-08-05 00:26:29 +01:00
|
|
|
fileSpecs = [ "elisp/*.el" ];
|
2021-06-06 08:55:55 +01:00
|
|
|
|
2019-08-05 00:26:29 +01:00
|
|
|
meta = {
|
|
|
|
description = "An extension of haskell-mode that provides completion of symbols and documentation browsing";
|
|
|
|
license = bsd3;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2021-08-03 18:24:24 +01:00
|
|
|
haskell-unicode-input-method = let
|
|
|
|
rev = "d8d168148c187ed19350bb7a1a190217c2915a63";
|
|
|
|
in melpaBuild {
|
|
|
|
pname = "haskell-unicode-input-method";
|
2019-08-05 00:26:29 +01:00
|
|
|
version = "20110905.2307";
|
2021-06-06 08:55:55 +01:00
|
|
|
|
2021-08-03 18:24:24 +01:00
|
|
|
commit = rev;
|
|
|
|
|
2019-08-05 00:26:29 +01:00
|
|
|
src = pkgs.fetchFromGitHub {
|
|
|
|
owner = "roelvandijk";
|
|
|
|
repo = "emacs-haskell-unicode-input-method";
|
2021-08-03 18:24:24 +01:00
|
|
|
inherit rev;
|
2019-08-05 00:26:29 +01:00
|
|
|
sha256 = "09b7bg2s9aa4s8f2kdqs4xps3jxkq5wsvbi87ih8b6id38blhf78";
|
|
|
|
};
|
2021-06-06 08:55:55 +01:00
|
|
|
|
2019-08-05 00:26:29 +01:00
|
|
|
recipe = pkgs.writeText "recipe" ''
|
2021-08-03 18:24:24 +01:00
|
|
|
(haskell-unicode-input-method
|
2019-08-05 00:26:29 +01:00
|
|
|
:repo "roelvandijk/emacs-haskell-unicode-input-method"
|
|
|
|
:fetcher github)
|
|
|
|
'';
|
2021-06-06 08:55:55 +01:00
|
|
|
|
2019-08-05 00:26:29 +01:00
|
|
|
packageRequires = [];
|
2021-06-06 08:55:55 +01:00
|
|
|
|
2019-08-05 00:26:29 +01:00
|
|
|
meta = {
|
|
|
|
homepage = "https://melpa.org/#haskell-unicode-input-method/";
|
|
|
|
license = lib.licenses.free;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2021-08-03 18:05:09 +01:00
|
|
|
matrix-client = let
|
|
|
|
rev = "d2ac55293c96d4c95971ed8e2a3f6f354565c5ed";
|
|
|
|
in melpaBuild
|
|
|
|
{
|
2021-02-24 21:56:25 +00:00
|
|
|
pname = "matrix-client";
|
|
|
|
version = "0.3.0";
|
|
|
|
|
2021-08-03 18:05:09 +01:00
|
|
|
commit = rev;
|
|
|
|
|
2021-02-24 21:56:25 +00:00
|
|
|
src = pkgs.fetchFromGitHub {
|
|
|
|
owner = "alphapapa";
|
|
|
|
repo = "matrix-client.el";
|
2021-08-03 18:05:09 +01:00
|
|
|
inherit rev;
|
2021-02-24 21:56:25 +00:00
|
|
|
sha256 = "1scfv1502yg7x4bsl253cpr6plml1j4d437vci2ggs764sh3rcqq";
|
|
|
|
};
|
|
|
|
|
|
|
|
patches = [
|
2021-06-06 08:55:55 +01:00
|
|
|
# Fix: avatar loading when imagemagick support is not available
|
2021-02-24 21:56:25 +00:00
|
|
|
(pkgs.fetchpatch {
|
|
|
|
url = "https://github.com/alphapapa/matrix-client.el/commit/5f49e615c7cf2872f48882d3ee5c4a2bff117d07.patch";
|
|
|
|
sha256 = "07bvid7s1nv1377p5n61q46yww3m1w6bw4vnd4iyayw3fby1lxbm";
|
|
|
|
})
|
|
|
|
];
|
|
|
|
|
|
|
|
packageRequires = [
|
|
|
|
anaphora
|
|
|
|
cl-lib
|
|
|
|
self.map
|
|
|
|
dash-functional
|
|
|
|
esxml
|
|
|
|
f
|
|
|
|
ov
|
|
|
|
tracking
|
|
|
|
rainbow-identifiers
|
|
|
|
dash
|
|
|
|
s
|
|
|
|
request
|
|
|
|
frame-purpose
|
|
|
|
a
|
|
|
|
ht
|
|
|
|
];
|
|
|
|
|
|
|
|
recipe = pkgs.writeText "recipe" ''
|
|
|
|
(matrix-client
|
|
|
|
:repo "alphapapa/matrix-client.el"
|
|
|
|
:fetcher github)
|
|
|
|
'';
|
|
|
|
|
|
|
|
meta = {
|
|
|
|
description = "A chat client and API wrapper for Matrix.org";
|
|
|
|
license = gpl3Plus;
|
|
|
|
};
|
|
|
|
|
|
|
|
};
|
|
|
|
|
2021-09-15 16:27:22 +01:00
|
|
|
agda2-mode = callPackage ./agda2-mode { };
|
|
|
|
|
2021-09-15 16:33:22 +01:00
|
|
|
agda-input = callPackage ./agda-input{ };
|
2021-09-15 16:27:22 +01:00
|
|
|
|
|
|
|
# may be part of MELPA in the future, see
|
|
|
|
# https://github.com/mlochbaum/BQN/issues/10#issuecomment-912982874
|
|
|
|
bqn-mode = self.trivialBuild {
|
|
|
|
pname = "bqn-mode";
|
|
|
|
version = "unstable-2021-09-04";
|
|
|
|
|
|
|
|
src = pkgs.fetchFromGitHub {
|
|
|
|
owner = "mlochbaum";
|
|
|
|
repo = "BQN";
|
|
|
|
rev = "e623a2fcafdf5fd6c8d31570175284805c4f34d9";
|
|
|
|
sha256 = "1a2lpxy3bak4724r0ns4la5d0j6484ngi73kcwp82vgbbpk7lcrp";
|
|
|
|
};
|
|
|
|
|
|
|
|
postUnpack = ''
|
|
|
|
sourceRoot="$sourceRoot/editors/emacs"
|
|
|
|
'';
|
|
|
|
|
|
|
|
meta = {
|
|
|
|
description = "Emacs mode for BQN";
|
|
|
|
license = lib.licenses.gpl3Only;
|
|
|
|
maintainers = [ lib.maintainers.sternenseemann ];
|
|
|
|
homepage = "https://mlochbaum.github.io/BQN/editors/index.html";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
llvm-mode = trivialBuild {
|
|
|
|
pname = "llvm-mode";
|
|
|
|
inherit (pkgs.llvmPackages.llvm) src version;
|
|
|
|
|
|
|
|
dontConfigure = true;
|
|
|
|
buildPhase = ''
|
|
|
|
cp utils/emacs/*.el .
|
|
|
|
'';
|
|
|
|
|
|
|
|
meta = {
|
|
|
|
inherit (pkgs.llvmPackages.llvm.meta) homepage license;
|
|
|
|
description = "Major mode for the LLVM assembler language.";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2021-09-15 16:03:58 +01:00
|
|
|
ott-mode = callPackage ./ott-mode { };
|
2021-01-05 18:40:34 +00:00
|
|
|
|
2021-09-15 06:40:36 +01:00
|
|
|
urweb-mode = callPackage ./urweb-mode { };
|
2021-08-18 00:58:42 +01:00
|
|
|
|
2021-06-06 08:55:55 +01:00
|
|
|
# Packages made the classical callPackage way
|
|
|
|
|
2021-09-10 02:48:31 +01:00
|
|
|
apheleia = callPackage ./apheleia { };
|
|
|
|
|
2021-06-28 14:53:14 +01:00
|
|
|
ebuild-mode = callPackage ./ebuild-mode { };
|
|
|
|
|
2021-09-14 20:49:43 +01:00
|
|
|
evil-markdown = callPackage ./evil-markdown { };
|
|
|
|
|
2021-06-06 08:55:55 +01:00
|
|
|
emacspeak = callPackage ./emacspeak { };
|
|
|
|
|
|
|
|
ess-R-object-popup = callPackage ./ess-R-object-popup { };
|
|
|
|
|
|
|
|
font-lock-plus = callPackage ./font-lock-plus { };
|
|
|
|
|
2021-09-10 05:05:00 +01:00
|
|
|
git-undo = callPackage ./git-undo { };
|
|
|
|
|
2021-06-06 08:55:55 +01:00
|
|
|
helm-words = callPackage ./helm-words { };
|
|
|
|
|
2021-09-10 04:00:52 +01:00
|
|
|
isearch-plus = callPackage ./isearch-plus { };
|
|
|
|
|
2021-09-10 04:15:22 +01:00
|
|
|
isearch-prop = callPackage ./isearch-prop { };
|
|
|
|
|
2021-06-06 08:55:55 +01:00
|
|
|
jam-mode = callPackage ./jam-mode { };
|
|
|
|
|
2021-06-06 08:31:29 +01:00
|
|
|
nano-theme = callPackage ./nano-theme { };
|
|
|
|
|
2021-06-06 08:55:55 +01:00
|
|
|
perl-completion = callPackage ./perl-completion { };
|
2019-08-05 00:26:29 +01:00
|
|
|
|
2019-12-24 23:02:12 +00:00
|
|
|
pod-mode = callPackage ./pod-mode { };
|
|
|
|
|
2021-06-06 09:15:25 +01:00
|
|
|
power-mode = callPackage ./power-mode { };
|
|
|
|
|
2019-08-05 00:26:29 +01:00
|
|
|
railgun = callPackage ./railgun { };
|
|
|
|
|
|
|
|
structured-haskell-mode = self.shm;
|
|
|
|
|
2019-12-18 20:18:41 +00:00
|
|
|
sv-kalender = callPackage ./sv-kalender { };
|
|
|
|
|
2019-08-05 00:26:29 +01:00
|
|
|
tramp = callPackage ./tramp { };
|
|
|
|
|
2020-05-18 19:57:08 +01:00
|
|
|
youtube-dl = callPackage ./youtube-dl { };
|
|
|
|
|
2019-08-07 23:27:27 +01:00
|
|
|
# From old emacsPackages (pre emacsPackagesNg)
|
|
|
|
cedet = callPackage ./cedet { };
|
|
|
|
cedille = callPackage ./cedille { cedille = pkgs.cedille; };
|
2021-05-21 06:37:52 +01:00
|
|
|
color-theme-solarized = callPackage ./color-theme-solarized { };
|
|
|
|
session-management-for-emacs = callPackage ./session-management-for-emacs { };
|
2019-08-30 16:32:52 +01:00
|
|
|
hsc3-mode = callPackage ./hsc3 { };
|
|
|
|
prolog-mode = callPackage ./prolog { };
|
2021-05-21 06:37:52 +01:00
|
|
|
rect-mark = callPackage ./rect-mark { };
|
|
|
|
sunrise-commander = callPackage ./sunrise-commander { };
|
|
|
|
|
|
|
|
# camelCase aliases for some of the kebab-case expressions above
|
|
|
|
colorThemeSolarized = color-theme-solarized;
|
|
|
|
emacsSessionManagement = session-management-for-emacs;
|
|
|
|
rectMark = rect-mark;
|
|
|
|
sunriseCommander = sunrise-commander;
|
2019-08-07 23:27:27 +01:00
|
|
|
|
2019-08-05 00:26:29 +01:00
|
|
|
}
|