Automatically add prefixed flake inputs as emacs packages
This commit is contained in:
parent
570734c9f0
commit
044db098ce
4 changed files with 166 additions and 333 deletions
316
flake.lock
generated
316
flake.lock
generated
|
@ -1,70 +1,9 @@
|
||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
"agenix-el": {
|
|
||||||
"inputs": {
|
|
||||||
"bash-strict-mode": "bash-strict-mode",
|
|
||||||
"flake-parts": "flake-parts",
|
|
||||||
"home-manager": "home-manager_2",
|
|
||||||
"nixpkgs": "nixpkgs"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1687197914,
|
|
||||||
"narHash": "sha256-GsgBDopvhE0v7SNNJv+PYVJDgs7SMbDIrlexdszlQuI=",
|
|
||||||
"owner": "t4ccer",
|
|
||||||
"repo": "agenix.el",
|
|
||||||
"rev": "775eeedbd2b5b6a023d307cb08db5f8ec74eab00",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "t4ccer",
|
|
||||||
"repo": "agenix.el",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"bash-strict-mode": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-utils": "flake-utils",
|
|
||||||
"home-manager": "home-manager",
|
|
||||||
"nixpkgs": [
|
|
||||||
"agenix-el",
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"shellcheck-nix-attributes": "shellcheck-nix-attributes"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1673387613,
|
|
||||||
"narHash": "sha256-q5lyL21JBSpuDNNRQt65IzWD1Gra7LNf7nw3KkpSn78=",
|
|
||||||
"owner": "sellout",
|
|
||||||
"repo": "bash-strict-mode",
|
|
||||||
"rev": "4802d968b31bb5c748d3032f299f91a8d6d1280e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "sellout",
|
|
||||||
"repo": "bash-strict-mode",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"combobulate": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1695034590,
|
|
||||||
"narHash": "sha256-YZgYaRVX8cO5W90MUD9CJO8sfiqhDyJDV58hE7utbVI=",
|
|
||||||
"owner": "mickeynp",
|
|
||||||
"repo": "combobulate",
|
|
||||||
"rev": "d51ca57221f8c2689665da4dbe55dc618f0d04e0",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "mickeynp",
|
|
||||||
"repo": "combobulate",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"emacs-overlay": {
|
"emacs-overlay": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_2",
|
"flake-utils": "flake-utils",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs",
|
||||||
"nixpkgs-stable": "nixpkgs-stable"
|
"nixpkgs-stable": "nixpkgs-stable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
|
@ -81,28 +20,72 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-parts": {
|
"extra-package-agenix-el": {
|
||||||
"inputs": {
|
"flake": false,
|
||||||
"nixpkgs-lib": [
|
|
||||||
"agenix-el",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1673362319,
|
"lastModified": 1687197914,
|
||||||
"narHash": "sha256-Pjp45Vnj7S/b3BRpZEVfdu8sqqA6nvVjvYu59okhOyI=",
|
"narHash": "sha256-GsgBDopvhE0v7SNNJv+PYVJDgs7SMbDIrlexdszlQuI=",
|
||||||
"owner": "hercules-ci",
|
"owner": "t4ccer",
|
||||||
"repo": "flake-parts",
|
"repo": "agenix.el",
|
||||||
"rev": "82c16f1682cf50c01cb0280b38a1eed202b3fe9f",
|
"rev": "775eeedbd2b5b6a023d307cb08db5f8ec74eab00",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "hercules-ci",
|
"owner": "t4ccer",
|
||||||
"repo": "flake-parts",
|
"repo": "agenix.el",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-parts_2": {
|
"extra-package-combobulate": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1695034590,
|
||||||
|
"narHash": "sha256-YZgYaRVX8cO5W90MUD9CJO8sfiqhDyJDV58hE7utbVI=",
|
||||||
|
"owner": "mickeynp",
|
||||||
|
"repo": "combobulate",
|
||||||
|
"rev": "d51ca57221f8c2689665da4dbe55dc618f0d04e0",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "mickeynp",
|
||||||
|
"repo": "combobulate",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"extra-package-indent-bars": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1695000820,
|
||||||
|
"narHash": "sha256-qJy9g/tdce74Rh7FyMxCSBZjK6paZrPaL4UpS/uxPSg=",
|
||||||
|
"owner": "jdtsmith",
|
||||||
|
"repo": "indent-bars",
|
||||||
|
"rev": "2b0a4ad16804fb48821f661cd6be4652c0e37d72",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "jdtsmith",
|
||||||
|
"repo": "indent-bars",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"extra-package-nix-ts-mode": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1694965545,
|
||||||
|
"narHash": "sha256-HijDb+2ojDk1Evv/KEIrZ/xW+QXz6IJoUllniTsE3hs=",
|
||||||
|
"owner": "aciceri",
|
||||||
|
"repo": "nix-ts-mode",
|
||||||
|
"rev": "8da9a76cd014d56ee734553a32c9e006e375bce4",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "aciceri",
|
||||||
|
"ref": "improved",
|
||||||
|
"repo": "nix-ts-mode",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": "nixpkgs-lib"
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
},
|
},
|
||||||
|
@ -121,21 +104,6 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
"locked": {
|
|
||||||
"lastModified": 1667395993,
|
|
||||||
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-utils_2": {
|
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
|
@ -153,98 +121,18 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"home-manager": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"agenix-el",
|
|
||||||
"bash-strict-mode",
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"utils": "utils"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1672244468,
|
|
||||||
"narHash": "sha256-xaZb8AZqoXRCSqPusCk4ouf+fUNP8UJdafmMTF1Ltlw=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"rev": "89a8ba0b5b43b3350ff2e3ef37b66736b2ef8706",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"ref": "release-22.11",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"home-manager_2": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"agenix-el",
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"utils": "utils_2"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1672244468,
|
|
||||||
"narHash": "sha256-xaZb8AZqoXRCSqPusCk4ouf+fUNP8UJdafmMTF1Ltlw=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"rev": "89a8ba0b5b43b3350ff2e3ef37b66736b2ef8706",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"ref": "release-22.11",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"indent-bars": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1695000820,
|
|
||||||
"narHash": "sha256-qJy9g/tdce74Rh7FyMxCSBZjK6paZrPaL4UpS/uxPSg=",
|
|
||||||
"owner": "jdtsmith",
|
|
||||||
"repo": "indent-bars",
|
|
||||||
"rev": "2b0a4ad16804fb48821f661cd6be4652c0e37d72",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "jdtsmith",
|
|
||||||
"repo": "indent-bars",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nix-ts-mode": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1694965545,
|
|
||||||
"narHash": "sha256-HijDb+2ojDk1Evv/KEIrZ/xW+QXz6IJoUllniTsE3hs=",
|
|
||||||
"owner": "aciceri",
|
|
||||||
"repo": "nix-ts-mode",
|
|
||||||
"rev": "8da9a76cd014d56ee734553a32c9e006e375bce4",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "aciceri",
|
|
||||||
"ref": "improved",
|
|
||||||
"repo": "nix-ts-mode",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1673391659,
|
"lastModified": 1694422566,
|
||||||
"narHash": "sha256-iz4359AMaEhCIZPaLfOX2jLwMWxbLnKwiAp5l+s06nE=",
|
"narHash": "sha256-lHJ+A9esOz9vln/3CJG23FV6Wd2OoOFbDeEs4cMGMqc=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "9e00bb203130943ea98eb215950bbb42ceeef380",
|
"rev": "3a2786eea085f040a66ecde1bc3ddc7099f6dbeb",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "release-22.11",
|
"ref": "nixos-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
@ -299,47 +187,15 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1694422566,
|
|
||||||
"narHash": "sha256-lHJ+A9esOz9vln/3CJG23FV6Wd2OoOFbDeEs4cMGMqc=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "3a2786eea085f040a66ecde1bc3ddc7099f6dbeb",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"agenix-el": "agenix-el",
|
|
||||||
"combobulate": "combobulate",
|
|
||||||
"emacs-overlay": "emacs-overlay",
|
"emacs-overlay": "emacs-overlay",
|
||||||
"flake-parts": "flake-parts_2",
|
"extra-package-agenix-el": "extra-package-agenix-el",
|
||||||
"indent-bars": "indent-bars",
|
"extra-package-combobulate": "extra-package-combobulate",
|
||||||
"nix-ts-mode": "nix-ts-mode",
|
"extra-package-indent-bars": "extra-package-indent-bars",
|
||||||
"nixpkgs": "nixpkgs_3"
|
"extra-package-nix-ts-mode": "extra-package-nix-ts-mode",
|
||||||
}
|
"flake-parts": "flake-parts",
|
||||||
},
|
"nixpkgs": "nixpkgs_2"
|
||||||
"shellcheck-nix-attributes": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1586929030,
|
|
||||||
"narHash": "sha256-a0WyWaz+nMYFWI43Ip9EUnPuBW0O4EIiTzYZKGqNjss=",
|
|
||||||
"owner": "Fuuzetsu",
|
|
||||||
"repo": "shellcheck-nix-attributes",
|
|
||||||
"rev": "51b49d5fe65ece69eb5e2003396bf096083ec281",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "Fuuzetsu",
|
|
||||||
"repo": "shellcheck-nix-attributes",
|
|
||||||
"type": "github"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
|
@ -356,36 +212,6 @@
|
||||||
"repo": "default",
|
"repo": "default",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"utils": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1667395993,
|
|
||||||
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"utils_2": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1667395993,
|
|
||||||
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": "root",
|
"root": "root",
|
||||||
|
|
14
flake.nix
14
flake.nix
|
@ -5,22 +5,25 @@
|
||||||
flake-parts.url = "github:hercules-ci/flake-parts";
|
flake-parts.url = "github:hercules-ci/flake-parts";
|
||||||
emacs-overlay.url = "github:nix-community/emacs-overlay";
|
emacs-overlay.url = "github:nix-community/emacs-overlay";
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
indent-bars = {
|
extra-package-indent-bars = {
|
||||||
# TODO remove when it lands on (M)ELPA
|
|
||||||
url = "github:jdtsmith/indent-bars";
|
url = "github:jdtsmith/indent-bars";
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
nix-ts-mode = {
|
extra-package-nix-ts-mode = {
|
||||||
url = "github:aciceri/nix-ts-mode/improved";
|
url = "github:aciceri/nix-ts-mode/improved";
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
combobulate = {
|
extra-package-combobulate = {
|
||||||
url = "github:mickeynp/combobulate";
|
url = "github:mickeynp/combobulate";
|
||||||
# url = "github:aciceri/combobulate/nix";
|
# url = "github:aciceri/combobulate/nix";
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
agenix-el.url = "github:t4ccer/agenix.el";
|
extra-package-agenix-el = {
|
||||||
|
url = "github:t4ccer/agenix.el";
|
||||||
|
flake = false;
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
|
||||||
outputs = inputs @ {flake-parts, ...}:
|
outputs = inputs @ {flake-parts, ...}:
|
||||||
flake-parts.lib.mkFlake {inherit inputs;} {
|
flake-parts.lib.mkFlake {inherit inputs;} {
|
||||||
systems = ["x86_64-linux"];
|
systems = ["x86_64-linux"];
|
||||||
|
@ -31,6 +34,7 @@
|
||||||
./diff-closures
|
./diff-closures
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
nixConfig = {
|
nixConfig = {
|
||||||
extra-substituters = [
|
extra-substituters = [
|
||||||
"https://nix-community.cachix.org"
|
"https://nix-community.cachix.org"
|
||||||
|
|
|
@ -14,13 +14,14 @@
|
||||||
}: let
|
}: let
|
||||||
inherit (inputs.emacs-overlay.overlays.default pkgs pkgs) emacsPackagesFor;
|
inherit (inputs.emacs-overlay.overlays.default pkgs pkgs) emacsPackagesFor;
|
||||||
in {
|
in {
|
||||||
|
_module.args.pkgs = inputs.nixpkgs.legacyPackages.${system}.extend (self: super: {
|
||||||
|
extra-package-inputs = lib.mapAttrs' (inputName: input: {
|
||||||
|
name = builtins.head (builtins.match "extra-package-(.*)" inputName);
|
||||||
|
value = input;
|
||||||
|
}) (lib.filterAttrs (inputName: _: ! builtins.isNull (builtins.match "extra-package-.*" inputName)) inputs);
|
||||||
|
|
||||||
# Some tree-sitter grammars in nixpksg are built with a too new ABI
|
# Some tree-sitter grammars in nixpksg are built with a too new ABI
|
||||||
# https://github.com/NixOS/nixpkgs/issues/209114
|
# https://github.com/NixOS/nixpkgs/issues/209114
|
||||||
_module.args.pkgs = inputs.nixpkgs.legacyPackages.${system}.extend (self: super: {
|
|
||||||
indent-bars-source = inputs.indent-bars;
|
|
||||||
nix-ts-mode-source = inputs.nix-ts-mode;
|
|
||||||
combobulate-source = inputs.combobulate;
|
|
||||||
agenix-el-source = inputs.agenix-el;
|
|
||||||
# tree-sitter-grammars =
|
# tree-sitter-grammars =
|
||||||
# super.tree-sitter-grammars
|
# super.tree-sitter-grammars
|
||||||
# // {
|
# // {
|
||||||
|
@ -44,19 +45,9 @@
|
||||||
cp $f $out/"libtree-sitter-$(basename $f)"
|
cp $f $out/"libtree-sitter-$(basename $f)"
|
||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
ccrEmacsWithoutPackages =
|
ccrEmacsWithoutPackages = inputs'.emacs-overlay.packages.emacs-unstable.override {
|
||||||
(inputs'.emacs-overlay.packages.emacs-unstable.override {
|
|
||||||
withPgtk = true;
|
withPgtk = true;
|
||||||
# withNS = false;
|
};
|
||||||
# withX = false;
|
|
||||||
# withGTK2 = false;
|
|
||||||
# withGTK3 = false;
|
|
||||||
# withWebP = false;
|
|
||||||
})
|
|
||||||
.overrideAttrs (old: {
|
|
||||||
name = "ccr-emacs";
|
|
||||||
version = "29";
|
|
||||||
});
|
|
||||||
ccrEmacs = let
|
ccrEmacs = let
|
||||||
emacs =
|
emacs =
|
||||||
(emacsPackagesFor self'.packages.ccrEmacsWithoutPackages).emacsWithPackages
|
(emacsPackagesFor self'.packages.ccrEmacsWithoutPackages).emacsWithPackages
|
||||||
|
|
|
@ -1,5 +1,30 @@
|
||||||
pkgs: epkgs:
|
pkgs: epkgs:
|
||||||
with epkgs; [
|
with epkgs; let
|
||||||
|
inherit (pkgs) lib;
|
||||||
|
|
||||||
|
depsPerPackage = {
|
||||||
|
indent-bars = [compat];
|
||||||
|
};
|
||||||
|
|
||||||
|
# *Attrset* containig extra emacs packages from flake inputs
|
||||||
|
extraPackages = lib.mapAttrs (inputName: input: let
|
||||||
|
deps = depsPerPackage.${inputName} or [];
|
||||||
|
in
|
||||||
|
trivialBuild {
|
||||||
|
pname = inputName;
|
||||||
|
src = input.outPath;
|
||||||
|
version = input.shortRev;
|
||||||
|
propagatedUserEnvPkgs = deps;
|
||||||
|
buildInputs = deps;
|
||||||
|
})
|
||||||
|
pkgs.extra-package-inputs;
|
||||||
|
|
||||||
|
# *List* containing emacs packages from (M)ELPA
|
||||||
|
mainPackages =
|
||||||
|
builtins.filter
|
||||||
|
# if an extra package has the same name then give precedence to it
|
||||||
|
(package: ! builtins.elem package.pname (builtins.attrNames extraPackages))
|
||||||
|
[
|
||||||
meow
|
meow
|
||||||
dracula-theme
|
dracula-theme
|
||||||
solaire-mode
|
solaire-mode
|
||||||
|
@ -32,9 +57,6 @@ with epkgs; [
|
||||||
cape
|
cape
|
||||||
which-key
|
which-key
|
||||||
# nix-mode
|
# nix-mode
|
||||||
(nix-ts-mode.overrideAttrs (_: {
|
|
||||||
src = pkgs.nix-ts-mode-source;
|
|
||||||
}))
|
|
||||||
unisonlang-mode
|
unisonlang-mode
|
||||||
purescript-mode
|
purescript-mode
|
||||||
dhall-mode
|
dhall-mode
|
||||||
|
@ -48,18 +70,8 @@ with epkgs; [
|
||||||
haskell-mode
|
haskell-mode
|
||||||
terraform-mode
|
terraform-mode
|
||||||
diredfl
|
diredfl
|
||||||
(pkgs.callPackage ./indent-bars.nix {
|
|
||||||
src = pkgs.indent-bars-source;
|
|
||||||
inherit (epkgs) trivialBuild compat;
|
|
||||||
})
|
|
||||||
(pkgs.callPackage ./combobulate.nix {
|
|
||||||
src = pkgs.combobulate-source;
|
|
||||||
inherit (epkgs) trivialBuild;
|
|
||||||
})
|
|
||||||
org-roam
|
org-roam
|
||||||
consult-org-roam
|
consult-org-roam
|
||||||
(pkgs.callPackage ./agenix-el.nix {
|
];
|
||||||
src = pkgs.agenix-el-source;
|
in
|
||||||
inherit (epkgs) trivialBuild;
|
mainPackages ++ (builtins.attrValues extraPackages)
|
||||||
})
|
|
||||||
]
|
|
||||||
|
|
Reference in a new issue