43 lines
1.2 KiB
Nix
43 lines
1.2 KiB
Nix
{
|
|
inputs.nixpkgs.url = "nixpkgs";
|
|
|
|
outputs = { self, nixpkgs, ...}:
|
|
let
|
|
# For now we only support x86
|
|
system = "x86_64-linux";
|
|
pkgs = import nixpkgs {
|
|
inherit system;
|
|
overlays = [ self.overlays.default ];
|
|
};
|
|
in
|
|
{
|
|
bscOverlay = import ./overlay.nix;
|
|
overlays.default = self.bscOverlay;
|
|
# full nixpkgs with our overlay applied
|
|
legacyPackages.${system} = pkgs;
|
|
|
|
# packages added by our overlay
|
|
packages.${system} =
|
|
let
|
|
inherit (builtins) attrNames removeAttrs;
|
|
inherit (nixpkgs.lib) flip filterAttrs getAttrs pipe isDerivation;
|
|
in
|
|
# extract the names of the packages from the overlay, then get the
|
|
# actual packages from the full package set with the overlay applied
|
|
pipe (self.overlays.default null { inherit (nixpkgs) lib; }) [
|
|
attrNames
|
|
(flip getAttrs pkgs)
|
|
(flip removeAttrs [ "bsc" ])
|
|
(filterAttrs (_: isDerivation))
|
|
];
|
|
|
|
hydraJobs = {
|
|
inherit (self.legacyPackages.x86_64-linux.bsc-ci) test;
|
|
packages = self.packages.${system};
|
|
};
|
|
|
|
# propagate nixpkgs lib, so we can do bscpkgs.lib
|
|
inherit (nixpkgs) lib;
|
|
};
|
|
}
|