2025-03-16 20:04:03 +00:00
|
|
|
inputs:
|
|
|
|
let
|
|
|
|
mkEmacsPackage =
|
|
|
|
{
|
2024-10-21 14:58:11 +01:00
|
|
|
epkgs,
|
|
|
|
pname,
|
|
|
|
version,
|
|
|
|
src,
|
2025-03-16 20:04:03 +00:00
|
|
|
deps ? (epkgs: [ ]),
|
2024-10-21 14:58:11 +01:00
|
|
|
}:
|
2025-03-16 20:04:03 +00:00
|
|
|
epkgs.trivialBuild {
|
|
|
|
inherit pname version src;
|
|
|
|
buildInputs = deps epkgs;
|
|
|
|
propagatedUserEnvPkgs = deps epkgs;
|
|
|
|
};
|
2025-02-04 15:09:03 +00:00
|
|
|
|
2025-03-16 20:04:03 +00:00
|
|
|
mkPankomacs =
|
|
|
|
{
|
2025-02-04 15:09:03 +00:00
|
|
|
pkgs,
|
|
|
|
emacs,
|
|
|
|
}:
|
2025-03-16 20:04:03 +00:00
|
|
|
(pkgs.appendOverlays [ inputs.emacs.overlays.default ]).emacsWithPackagesFromUsePackage {
|
|
|
|
package = emacs;
|
|
|
|
defaultInitFile = true;
|
|
|
|
config = ./config.el;
|
|
|
|
extraEmacsPackages =
|
|
|
|
epkgs:
|
|
|
|
builtins.attrValues {
|
|
|
|
inherit (epkgs)
|
|
|
|
spacious-padding
|
|
|
|
mood-line
|
|
|
|
helm
|
|
|
|
base16-theme
|
|
|
|
nix-mode
|
|
|
|
rust-mode
|
|
|
|
haskell-mode
|
|
|
|
qml-mode
|
|
|
|
envrc
|
|
|
|
eat
|
|
|
|
notmuch
|
|
|
|
;
|
|
|
|
treesit-grammars = epkgs.treesit-grammars.with-all-grammars;
|
|
|
|
};
|
|
|
|
override =
|
|
|
|
_: prev:
|
|
|
|
builtins.listToAttrs (
|
|
|
|
map
|
|
|
|
(name: {
|
2025-02-25 20:34:43 +00:00
|
|
|
inherit name;
|
|
|
|
value = prev.emacs;
|
2025-03-16 20:04:03 +00:00
|
|
|
})
|
|
|
|
[
|
2025-02-25 20:34:43 +00:00
|
|
|
"use-package"
|
|
|
|
"savehist"
|
|
|
|
"which-key"
|
2025-03-16 20:04:03 +00:00
|
|
|
]
|
|
|
|
);
|
|
|
|
};
|
|
|
|
in
|
|
|
|
{
|
|
|
|
inherit mkPankomacs mkEmacsPackage;
|
2024-09-11 18:43:37 +01:00
|
|
|
}
|