···66, fetchzip
77, autoPatchelfHook
88, gtk3
99+, flutterVersion
910, unzip
1111+, stdenvNoCC
1012}:
11131214let
1315 hashes = (import ./hashes.nix).${engineVersion} or
1416 (throw "There are no known artifact hashes for Flutter engine version ${engineVersion}.");
1717+ noticeText = stdenvNoCC.mkDerivation (finalAttrs: {
1818+ pname = "flutter-notice";
1919+ version = engineVersion;
2020+ dontUnpack = true;
2121+ src = fetchurl {
2222+ url = "https://raw.githubusercontent.com/flutter/engine/${engineVersion}/sky/packages/sky_engine/LICENSE";
2323+ sha256 = hashes.skyNotice;
2424+ };
2525+ flutterNotice = fetchurl {
2626+ url = "https://raw.githubusercontent.com/flutter/flutter/${flutterVersion}/LICENSE";
2727+ sha256 = hashes.flutterNotice;
2828+ };
2929+ installPhase =
3030+ ''
3131+ SRC_TEXT="$(cat $src)"
3232+ FLUTTER_NOTICE_TEXT="$(cat $flutterNotice)"
3333+ cat << EOF > $out
3434+ This artifact is from the Flutter SDK's engine.
3535+ This file carries third-party notices for its dependencies.
3636+ See also other files, that have LICENSE in the name, in the artifact directory.
15373838+ Appendix 1/2: merged sky_engine LICENSE file (also found at ${finalAttrs.src.url})
3939+ $SRC_TEXT
4040+4141+ Appendix 2/2: Flutter license (also found at ${finalAttrs.flutterNotice.url})
4242+ $FLUTTER_NOTICE_TEXT
4343+ EOF
4444+ '';
4545+ });
1646 artifacts =
1747 {
1848 common = {
···165195 destination = "$out/${if subdirectory == true then archiveBasename else if subdirectory != null then subdirectory else "."}";
166196 in
167197 ''
198198+ # ship the notice near all artifacts. if the artifact directory is / multiple directories are nested in $src, link it there. If there isn't a directory, link it in root
199199+ # this *isn't the same as the subdirectory variable above*
200200+ DIR_CNT="$(echo */ | wc -w)"
201201+ if [[ "$DIR_CNT" == 0 ]]; then
202202+ ln -s ${noticeText} LICENSE.README
203203+ else
204204+ for dir in */
205205+ do
206206+ ln -s ${noticeText} "$dir/LICENSE.README"
207207+ done
208208+ fi
168209 mkdir -p "${destination}"
169210 cp -r . "${destination}"
170211 '';
···3333 ];
34343535 doCheck = true;
3636+ # The package expect to find an `example-robot-data/robots` folder somewhere
3737+ # either in install prefix or in the sources
3838+ # where it can find the meshes for unit tests
3939+ preCheck = "ln -s source ../../${finalAttrs.pname}";
3640 pythonImportsCheck = [
3741 "example_robot_data"
3842 ];
···8080 cozy = throw "cozy was removed because it was not actually https://pypi.org/project/Cozy/."; # added 2022-01-14
8181 cryptography_vectors = "cryptography_vectors is no longer exposed in python*Packages because it is used for testing cryptography only."; # Added 2022-03-23
8282 cx_Freeze = cx-freeze; # added 2023-08-02
8383+ d2to1 = throw "d2to1 is archived and no longer works with setuptools v68"; # added 2023-07-30
8384 dask-xgboost = throw "dask-xgboost was removed because its features are available in xgboost"; # added 2022-05-24
8485 dateutil = python-dateutil; # added 2021-07-03
8586 demjson = throw "demjson has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2022-01-18