33 lines
1.1 KiB
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; };
|
|
}
|