This repository has been archived on 2025-10-07. You can view files and clone it, but cannot push or open issues or pull requests.
bscpkgs/flake.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;
};
}