63 lines
1.4 KiB
Nix
63 lines
1.4 KiB
Nix
{
|
|
lib,
|
|
stdenv,
|
|
fetchFromGitHub,
|
|
python3Packages,
|
|
unstableGitUpdater,
|
|
}:
|
|
|
|
python3Packages.buildPythonPackage {
|
|
pname = "edl";
|
|
version = "3.52.1-unstable-2024-10-12";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "bkerler";
|
|
repo = "edl";
|
|
rev = "cef0076e1d4d29c1887c51786eb588503657b907";
|
|
fetchSubmodules = true;
|
|
hash = "sha256-FOsgmM+i++t2MZiJTKV0Et8KXKDKQoFop67P6DdW1EY=";
|
|
};
|
|
|
|
propagatedBuildInputs = with python3Packages; [
|
|
pyusb
|
|
pyserial
|
|
docopt
|
|
pylzma
|
|
pycryptodome
|
|
lxml
|
|
colorama
|
|
capstone
|
|
keystone-engine
|
|
];
|
|
|
|
# No tests set up
|
|
doCheck = false;
|
|
# EDL loaders are ELFs but shouldn't be touched, rest is Python anyways
|
|
dontStrip = true;
|
|
|
|
# edl has a spurious dependency on "usb" which has nothing to do with the
|
|
# project and was probably added by accident trying to add pyusb
|
|
postPatch = ''
|
|
sed -i '/'usb'/d' setup.py
|
|
'';
|
|
|
|
postInstall = ''
|
|
mkdir -p $out/etc/udev/rules.d
|
|
cp $src/Drivers/51-edl.rules $out/etc/udev/rules.d/51-edl.rules
|
|
'';
|
|
|
|
passthru.updateScript = unstableGitUpdater { };
|
|
|
|
meta = with lib; {
|
|
homepage = "https://github.com/bkerler/edl";
|
|
description = "Qualcomm EDL tool (Sahara / Firehose / Diag)";
|
|
# See https://github.com/NixOS/nixpkgs/issues/348931
|
|
license = licenses.unfree;
|
|
maintainers = with maintainers; [
|
|
lorenz
|
|
xddxdd
|
|
];
|
|
# Case-sensitive files in 'Loader' submodule
|
|
broken = stdenv.hostPlatform.isDarwin;
|
|
};
|
|
}
|