zig-overlay/default.nix

33 lines
859 B
Nix
Raw Normal View History

{ pkgs ? import <nixpkgs> {},
system ? builtins.currentSystem }:
let
inherit (pkgs) lib;
2022-08-22 16:04:10 -07:00
releases = builtins.fromJSON (lib.strings.fileContents ./sources.json);
2022-08-22 17:50:25 -07:00
mkDerivation = { url, version, sha256 }: pkgs.stdenv.mkDerivation {
inherit version;
pname = "zig";
src = pkgs.fetchurl { inherit url sha256; };
dontConfigure = true;
dontBuild = true;
dontFixup = true;
installPhase = ''
mkdir -p $out/{doc,bin,lib}
[ -d docs ] && cp -r docs/* $out/doc
[ -d doc ] && cp -r doc/* $out/doc
cp -r lib/* $out/lib
cp zig $out/bin/zig
'';
};
in lib.attrsets.mapAttrs (k: v:
if k == "master" then
2022-08-22 17:50:25 -07:00
lib.attrsets.mapAttrs (k: v: (mkDerivation {
inherit (v.${system}) version url sha256;
})) v
else
2022-08-22 17:50:25 -07:00
mkDerivation {
inherit (v.${system}) version url sha256;
})
releases