Natsu Kagami
7b7a3ee8a2
We used to duplicate how the `kak-lsp` package in the nixpkgs repo do it, now we just use `crane`.
37 lines
1.1 KiB
Nix
37 lines
1.1 KiB
Nix
{ nixpkgs, nixpkgs-unstable, nur, ... }@inputs:
|
|
let
|
|
overlay-unstable = final: prev: {
|
|
unstable = import nixpkgs-unstable { config.allowUnfree = true; system = prev.system; };
|
|
unfree = import nixpkgs { config.allowUnfree = true; system = prev.system; };
|
|
x86 = import nixpkgs-unstable { system = prev.system; config.allowUnsupportedSystem = true; };
|
|
};
|
|
overlay-needs-unstable = final: prev: {
|
|
# override some packages that needs unstable that cannot be changed in the setup.
|
|
nix-direnv = prev.unstable.nix-direnv;
|
|
};
|
|
overlay-imported = final: prev: {
|
|
rnix-lsp = inputs.rnix-lsp.defaultPackage."${prev.system}";
|
|
|
|
# A list of source-style inputs.
|
|
sources = final.lib.attrsets.filterAttrs (name: f: !(builtins.hasAttr "outputs" f)) inputs;
|
|
};
|
|
|
|
overlay-versioning = final: prev: { };
|
|
|
|
overlay-libs = final: prev: {
|
|
libs.crane = inputs.crane.lib.${prev.system};
|
|
};
|
|
in
|
|
[
|
|
(import ./overlays/openrazer)
|
|
overlay-unstable
|
|
overlay-needs-unstable
|
|
overlay-imported
|
|
overlay-versioning
|
|
overlay-libs
|
|
nur.overlay
|
|
|
|
# Bug fixes
|
|
] # we assign the overlay created before to the overlays of nixpkgs.
|
|
|