Merge pull request #255403 from RaitoBezarius/uboot
buildUBoot: supports Python scripts with their own environment
This commit is contained in:
commit
9b5d456802
@ -15,6 +15,7 @@
|
||||
, openssl
|
||||
, swig
|
||||
, which
|
||||
, python3
|
||||
, armTrustedFirmwareAllwinner
|
||||
, armTrustedFirmwareAllwinnerH6
|
||||
, armTrustedFirmwareAllwinnerH616
|
||||
@ -44,6 +45,7 @@ let
|
||||
version ? null
|
||||
, src ? null
|
||||
, filesToInstall
|
||||
, pythonScriptsToInstall ? { }
|
||||
, installDir ? "$out"
|
||||
, defconfig
|
||||
, extraConfig ? ""
|
||||
@ -63,6 +65,10 @@ let
|
||||
] ++ extraPatches;
|
||||
|
||||
postPatch = ''
|
||||
${lib.concatMapStrings (script: ''
|
||||
substituteInPlace ${script} \
|
||||
--replace "#!/usr/bin/env python3" "#!${pythonScriptsToInstall.${script}}/bin/python3"
|
||||
'') (builtins.attrNames pythonScriptsToInstall)}
|
||||
patchShebangs tools
|
||||
patchShebangs scripts
|
||||
'';
|
||||
@ -110,12 +116,12 @@ let
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p ${installDir}
|
||||
cp ${lib.concatStringsSep " " filesToInstall} ${installDir}
|
||||
cp ${lib.concatStringsSep " " (filesToInstall ++ builtins.attrNames pythonScriptsToInstall)} ${installDir}
|
||||
|
||||
mkdir -p "$out/nix-support"
|
||||
${lib.concatMapStrings (file: ''
|
||||
echo "file binary-dist ${installDir}/${builtins.baseNameOf file}" >> "$out/nix-support/hydra-build-products"
|
||||
'') filesToInstall}
|
||||
'') (filesToInstall ++ builtins.attrNames pythonScriptsToInstall)}
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
@ -128,7 +134,7 @@ let
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ bartsch dezgeg samueldr lopsided98 ];
|
||||
} // extraMeta;
|
||||
} // removeAttrs args [ "extraMeta" ]));
|
||||
} // removeAttrs args [ "extraMeta" "pythonScriptsToInstall" ]));
|
||||
in {
|
||||
inherit buildUBoot;
|
||||
|
||||
@ -154,6 +160,10 @@ in {
|
||||
"tools/mkenvimage"
|
||||
"tools/mkimage"
|
||||
];
|
||||
|
||||
pythonScriptsToInstall = {
|
||||
"tools/efivar.py" = (python3.withPackages (ps: [ ps.pyopenssl ]));
|
||||
};
|
||||
};
|
||||
|
||||
ubootA20OlinuxinoLime = buildUBoot {
|
||||
|
Loading…
Reference in New Issue
Block a user