refactor(flake): only use lib, reduce imports
This commit is contained in:
parent
322949b010
commit
a4ae97d6da
2 changed files with 40 additions and 57 deletions
31
flake.nix
31
flake.nix
|
@ -11,40 +11,19 @@
|
|||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
outputs = inputs: let
|
||||
lib = inputs.nixpkgs.lib.extend (import ./lib.nix);
|
||||
in
|
||||
outputs = inputs:
|
||||
inputs.parts.lib.mkFlake {
|
||||
inherit inputs;
|
||||
specialArgs.lib = lib;
|
||||
} {
|
||||
systems = [
|
||||
"x86_64-linux"
|
||||
];
|
||||
|
||||
perSystem = {
|
||||
pkgs,
|
||||
self',
|
||||
config,
|
||||
system,
|
||||
...
|
||||
}: {
|
||||
_module.args.pkgs = import inputs.nixpkgs {
|
||||
inherit system;
|
||||
overlays = [
|
||||
(import inputs.emacs)
|
||||
];
|
||||
};
|
||||
|
||||
packages = builtins.mapAttrs (_: v:
|
||||
lib.mkEmacs {
|
||||
inherit pkgs;
|
||||
emacs = v;
|
||||
}) {
|
||||
pankomacs = pkgs.emacs30-pgtk;
|
||||
pankomacs-x11 = pkgs.emacs30-gtk3;
|
||||
};
|
||||
imports = [
|
||||
./lib.nix
|
||||
];
|
||||
|
||||
perSystem = {pkgs, ...}: {
|
||||
formatter = pkgs.alejandra;
|
||||
};
|
||||
};
|
||||
|
|
66
lib.nix
66
lib.nix
|
@ -1,8 +1,5 @@
|
|||
final: prev: {
|
||||
mkEmacs = {
|
||||
pkgs,
|
||||
emacs,
|
||||
}: let
|
||||
{inputs, ...}: {
|
||||
flake.lib = inputs.nixpkgs.lib.extend (_: _: let
|
||||
mkEmacsPackage = {
|
||||
epkgs,
|
||||
pname,
|
||||
|
@ -18,32 +15,39 @@ final: prev: {
|
|||
propagatedUserEnvPkgs = deps;
|
||||
}
|
||||
) {inherit (epkgs) trivialBuild;};
|
||||
in
|
||||
pkgs.emacsWithPackagesFromUsePackage {
|
||||
package = emacs;
|
||||
defaultInitFile = true;
|
||||
config = ./config.el;
|
||||
extraEmacsPackages = epkgs:
|
||||
builtins.attrValues {
|
||||
inherit
|
||||
(epkgs)
|
||||
spacious-padding
|
||||
mood-line
|
||||
which-key
|
||||
helm
|
||||
base16-theme
|
||||
nix-mode
|
||||
rust-mode
|
||||
haskell-mode
|
||||
envrc
|
||||
eat
|
||||
vterm
|
||||
;
|
||||
treesit-grammars = epkgs.treesit-grammars.with-all-grammars;
|
||||
|
||||
mkEmacs = {
|
||||
pkgs,
|
||||
emacs,
|
||||
}:
|
||||
(pkgs.appendOverlays [inputs.emacs.overlays.default]).emacsWithPackagesFromUsePackage {
|
||||
package = emacs;
|
||||
defaultInitFile = true;
|
||||
config = ./config.el;
|
||||
extraEmacsPackages = epkgs:
|
||||
builtins.attrValues {
|
||||
inherit
|
||||
(epkgs)
|
||||
spacious-padding
|
||||
mood-line
|
||||
which-key
|
||||
helm
|
||||
base16-theme
|
||||
nix-mode
|
||||
rust-mode
|
||||
haskell-mode
|
||||
envrc
|
||||
eat
|
||||
vterm
|
||||
;
|
||||
treesit-grammars = epkgs.treesit-grammars.with-all-grammars;
|
||||
};
|
||||
override = _: prev: {
|
||||
use-package = prev.emacs;
|
||||
savehist = prev.emacs;
|
||||
};
|
||||
override = _: prev: {
|
||||
use-package = prev.emacs;
|
||||
savehist = prev.emacs;
|
||||
};
|
||||
};
|
||||
in {
|
||||
inherit mkEmacs mkEmacsPackage;
|
||||
});
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue