refactor(packages): expose mkEmacs function
This commit is contained in:
parent
dd521cb170
commit
0c281f506d
4 changed files with 55 additions and 48 deletions
3
.editorconfig
Normal file
3
.editorconfig
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
[*.nix]
|
||||||
|
indent_style = space
|
||||||
|
indent_size = 2
|
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -7,3 +7,5 @@
|
||||||
!/.gitignore
|
!/.gitignore
|
||||||
!/README.org
|
!/README.org
|
||||||
!/media
|
!/media
|
||||||
|
!/.editorconfig
|
||||||
|
!/lib.nix
|
||||||
|
|
31
flake.nix
31
flake.nix
|
@ -11,25 +11,24 @@
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
outputs =
|
outputs = inputs: let
|
||||||
inputs:
|
lib = inputs.nixpkgs.lib.extend (import ./lib.nix);
|
||||||
inputs.parts.lib.mkFlake { inherit inputs; } {
|
in
|
||||||
|
inputs.parts.lib.mkFlake {
|
||||||
|
inherit inputs;
|
||||||
|
specialArgs.lib = lib;
|
||||||
|
} {
|
||||||
systems = [
|
systems = [
|
||||||
"x86_64-linux"
|
"x86_64-linux"
|
||||||
];
|
];
|
||||||
|
|
||||||
perSystem =
|
perSystem = {
|
||||||
{
|
|
||||||
pkgs,
|
pkgs,
|
||||||
self',
|
self',
|
||||||
config,
|
config,
|
||||||
system,
|
system,
|
||||||
...
|
...
|
||||||
}:
|
}: {
|
||||||
let
|
|
||||||
inherit (import ./emacs/mkEmacs.nix pkgs) mkEmacs;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
_module.args.pkgs = import inputs.nixpkgs {
|
_module.args.pkgs = import inputs.nixpkgs {
|
||||||
inherit system;
|
inherit system;
|
||||||
overlays = [
|
overlays = [
|
||||||
|
@ -37,12 +36,16 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
packages = {
|
packages = builtins.mapAttrs (_: v:
|
||||||
pankomacs = mkEmacs pkgs.emacs30-pgtk;
|
lib.mkEmacs {
|
||||||
pankomacs-x11 = mkEmacs pkgs.emacs30-gtk3;
|
inherit pkgs;
|
||||||
|
emacs = v;
|
||||||
|
}) {
|
||||||
|
pankomacs = pkgs.emacs30-pgtk;
|
||||||
|
pankomacs-x11 = pkgs.emacs30-gtk3;
|
||||||
};
|
};
|
||||||
|
|
||||||
formatter = pkgs.nixfmt-rfc-style;
|
formatter = pkgs.alejandra;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,9 @@
|
||||||
{ pkgs, ... }:
|
final: prev: {
|
||||||
let
|
mkEmacs = {
|
||||||
mkEmacsPackage =
|
pkgs,
|
||||||
{
|
emacs,
|
||||||
|
}: let
|
||||||
|
mkEmacsPackage = {
|
||||||
epkgs,
|
epkgs,
|
||||||
pname,
|
pname,
|
||||||
version,
|
version,
|
||||||
|
@ -17,17 +19,14 @@ let
|
||||||
}
|
}
|
||||||
) {inherit (epkgs) trivialBuild;};
|
) {inherit (epkgs) trivialBuild;};
|
||||||
in
|
in
|
||||||
{
|
|
||||||
mkEmacs =
|
|
||||||
emacs:
|
|
||||||
pkgs.emacsWithPackagesFromUsePackage {
|
pkgs.emacsWithPackagesFromUsePackage {
|
||||||
package = emacs;
|
package = emacs;
|
||||||
defaultInitFile = true;
|
defaultInitFile = true;
|
||||||
config = ./config.el;
|
config = ./config.el;
|
||||||
extraEmacsPackages =
|
extraEmacsPackages = epkgs:
|
||||||
epkgs:
|
|
||||||
builtins.attrValues {
|
builtins.attrValues {
|
||||||
inherit (epkgs)
|
inherit
|
||||||
|
(epkgs)
|
||||||
spacious-padding
|
spacious-padding
|
||||||
mood-line
|
mood-line
|
||||||
which-key
|
which-key
|
Loading…
Add table
Add a link
Reference in a new issue