simplify overlay.nix

Move pkg definitions to pkgs/default.nix.
This allows us to just import the pkgs in overlay.nix and get rid of
the filtering to exclude the modules.
This commit is contained in:
Erik Arvstedt 2019-11-27 14:04:17 +01:00
parent 07dc3e04ac
commit 7e021a2629
No known key found for this signature in database
GPG Key ID: 33312B944DD97846
3 changed files with 15 additions and 34 deletions

View File

@ -1,16 +1,5 @@
{ pkgs ? import <nixpkgs> {} }:
{
# 'lib', 'modules' and 'overlays' are special, see
# https://github.com/nix-community/NUR for more.
modules = import ./modules; # NixOS modules
nodeinfo = pkgs.callPackage ./pkgs/nodeinfo { };
lightning-charge = pkgs.callPackage ./pkgs/lightning-charge { };
nanopos = pkgs.callPackage ./pkgs/nanopos { };
spark-wallet = pkgs.callPackage ./pkgs/spark-wallet { };
electrs = (pkgs.callPackage ./pkgs/electrs { }).rootCrate.build;
elementsd = pkgs.callPackage ./pkgs/elementsd { withGui = false; };
hwi = pkgs.callPackage ./pkgs/hwi { };
pylightning = pkgs.python3Packages.callPackage ./pkgs/pylightning { };
liquid-swap = pkgs.python3Packages.callPackage ./pkgs/liquid-swap { };
(import ./pkgs { inherit pkgs; }) // {
modules = import ./modules;
}

View File

@ -1,21 +1 @@
# You can use this file as a nixpkgs overlay.
# It's useful in the case where you don't want to add the whole NUR namespace
# to your configuration.
self: super:
let filterSet =
(f: g: s: builtins.listToAttrs
(map
(n: { name = n; value = builtins.getAttr n s; })
(builtins.filter
(n: f n && g (builtins.getAttr n s))
(builtins.attrNames s)
)
)
);
in filterSet
(n: !(n=="lib"||n=="overlays"||n=="modules")) # filter out non-packages
(p: true) # all packages are ok
(import ./default.nix { pkgs = super; })
self: super: import ./pkgs { pkgs = super; }

12
pkgs/default.nix Normal file
View File

@ -0,0 +1,12 @@
{ pkgs ? import <nixpkgs> {} }:
{
nodeinfo = pkgs.callPackage ./nodeinfo { };
lightning-charge = pkgs.callPackage ./lightning-charge { };
nanopos = pkgs.callPackage ./nanopos { };
spark-wallet = pkgs.callPackage ./spark-wallet { };
electrs = (pkgs.callPackage ./electrs { }).rootCrate.build;
elementsd = pkgs.callPackage ./elementsd { withGui = false; };
hwi = pkgs.callPackage ./hwi { };
pylightning = pkgs.python3Packages.callPackage ./pylightning { };
liquid-swap = pkgs.python3Packages.callPackage ./liquid-swap { };
}