flake.nix and default.nix

This commit is contained in:
Mitchell Hashimoto 2022-08-22 17:50:25 -07:00
parent 5fc48d57ca
commit a7f900d90f
No known key found for this signature in database
GPG key ID: 523D5DC389D273BC
2 changed files with 22 additions and 31 deletions

View file

@ -4,6 +4,14 @@
let let
inherit (pkgs) lib; inherit (pkgs) lib;
releases = builtins.fromJSON (lib.strings.fileContents ./sources.json); releases = builtins.fromJSON (lib.strings.fileContents ./sources.json);
mkDerivation = { url, version, sha256 }: pkgs.stdenv.mkDerivation {
inherit version;
pname = "zig";
src = pkgs.fetchurl { inherit url sha256; };
dontConfigure = true;
dontBuild = true;
dontFixup = true;
installPhase = '' installPhase = ''
mkdir -p $out/{doc,bin,lib} mkdir -p $out/{doc,bin,lib}
[ -d docs ] && cp -r docs/* $out/doc [ -d docs ] && cp -r docs/* $out/doc
@ -11,31 +19,14 @@ let
cp -r lib/* $out/lib cp -r lib/* $out/lib
cp zig $out/bin/zig cp zig $out/bin/zig
''; '';
};
in lib.attrsets.mapAttrs (k: v: in lib.attrsets.mapAttrs (k: v:
if k == "master" then if k == "master" then
lib.attrsets.mapAttrs (k: v: lib.attrsets.mapAttrs (k: v: (mkDerivation {
(pkgs.stdenv.mkDerivation { inherit (v.${system}) version url sha256;
pname = "zig"; })) v
inherit (v.${system}) version;
src = pkgs.fetchurl {
inherit (v.${system}) url sha256;
};
dontConfigure = true;
dontBuild = true;
dontFixup = true;
installPhase = installPhase;
}))
v
else else
pkgs.stdenv.mkDerivation { mkDerivation {
pname = "zig"; inherit (v.${system}) version url sha256;
inherit (v.${system}) version;
src = pkgs.fetchurl {
inherit (v.${system}) url sha256;
};
dontConfigure = true;
dontBuild = true;
dontFixup = true;
installPhase = installPhase;
}) })
releases releases

View file

@ -14,7 +14,7 @@
let pkgs = nixpkgs.legacyPackages.${system}; let pkgs = nixpkgs.legacyPackages.${system};
in rec { in rec {
packages = import ./default.nix { inherit system pkgs; }; packages = import ./default.nix { inherit system pkgs; };
defaultPackage = packages."0.7.1"; defaultPackage = packages."0.9.1";
apps.zig = flake-utils.lib.mkApp { drv = defaultPackage; }; apps.zig = flake-utils.lib.mkApp { drv = defaultPackage; };
defaultApp = apps.zig; defaultApp = apps.zig;
}); });