bootstrap-toolchain/default.nix

33 lines
1.1 KiB
Nix

{
nixPkgsVersion ? "3e52e76b70d5508f3cec70b882a29199f4d1ee85"
}:
let
getNixPkgs = args: import (builtins.fetchGit {
name = "nixpkg-serene-${nixPkgsVersion}";
url = "https://github.com/nixos/nixpkgs/";
# Commit hash for nixos-unstable as of 2018-09-12
# `git ls-remote https://github.com/nixos/nixpkgs nixos-unstable`
ref = "refs/heads/nixos-unstable";
rev = nixPkgsVersion;
}) args;
nixpkgs = getNixPkgs {};
system = import ./system.nix { pkgs = nixpkgs; };
staticMuslPkgs = getNixPkgs system;
llvm = staticMuslPkgs.llvmPackages_16.override { stdenv = staticMuslPkgs.llvmPackages_16.libcxxClang; };
SereneOverlay = final: prev:
{
sereneToolchain = llvm.libcxxClang;
};
createPkgSet = _: # It has to be the nixpkgs instance
getNixPkgs (system // { overlays = [ SereneOverlay ]; });
#pkgs = getNixPkgs nixVersion (system // { overlays = [ libcxxClangOverlay ]; });
in {
inherit SereneOverlay createPkgSet;
# setupToolchain = nixpkgs:
#pkgs.stdenv.override { stdenv = llvm.libcxxClang; };
}