From ebe5f107942c82386c64e170c001872a85e08ec0 Mon Sep 17 00:00:00 2001 From: Dmitry Kalinkin Date: Mon, 16 Mar 2020 19:27:18 -0400 Subject: [PATCH] kicad: don't build versions with 3d on Hydra The hydraPlatforms have to be set on the kicad package itself, that can be checked using: echo ":p { inherit kicad kicad-small kicad-unstable; }" | nix repl ./pkgs/top-level/release.nix This commit disables build of all kicad variants that require downloading packages3d, which currently fail on hydra with the "Output limit exceeded" status. This leaves Hydra with only building the kicad-small, which will allow us to cache the build of kicad-base as well as all libraries except of packages3d. --- .../science/electronics/kicad/default.nix | 4 ++++ .../science/electronics/kicad/libraries.nix | 17 +++++++---------- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/pkgs/applications/science/electronics/kicad/default.nix b/pkgs/applications/science/electronics/kicad/default.nix index a60f8db388a5..f03a0a0cceff 100644 --- a/pkgs/applications/science/electronics/kicad/default.nix +++ b/pkgs/applications/science/electronics/kicad/default.nix @@ -137,5 +137,9 @@ stdenv.mkDerivation rec { maintainers = with maintainers; [ evils kiwi berce ]; # kicad's cross-platform, not sure what to fill in here platforms = with platforms; linux; + } // optionalAttrs with3d { + # We can't download the 3d models on Hydra - they are a ~1 GiB download and + # they occupy ~5 GiB in store. + hydraPlatforms = []; }; } diff --git a/pkgs/applications/science/electronics/kicad/libraries.nix b/pkgs/applications/science/electronics/kicad/libraries.nix index 53e190d2749b..7cdf9373e087 100644 --- a/pkgs/applications/science/electronics/kicad/libraries.nix +++ b/pkgs/applications/science/electronics/kicad/libraries.nix @@ -12,8 +12,8 @@ # }; with lib; let - mkLib = name: attrs: - stdenv.mkDerivation ( + mkLib = name: + stdenv.mkDerivation { pname = "kicad-${name}"; version = "${version}"; @@ -27,16 +27,13 @@ let ); nativeBuildInputs = [ cmake ]; meta.license = licenses.cc-by-sa-40; - } // attrs - ); + }; in { - symbols = mkLib "symbols" { }; - templates = mkLib "templates" { }; - footprints = mkLib "footprints" { }; - packages3d = mkLib "packages3d" { - hydraPlatforms = []; # this is a ~1 GiB download, occupies ~5 GiB in store - }; + symbols = mkLib "symbols"; + templates = mkLib "templates"; + footprints = mkLib "footprints"; + packages3d = mkLib "packages3d"; # i18n is a special case, not actually a library # more a part of kicad proper, but also optional and separate