Unverified Commit 72c9bfc1 authored by Sandro Jäckel's avatar Sandro Jäckel Committed by GitHub
Browse files

python312Packages.facedancer: 2019.3.2 -> 3.0.4 (#353404)

parents bb982410 d4e3e1a3
Loading
Loading
Loading
Loading
+37 −17
Original line number Diff line number Diff line
{
  lib,
  buildPythonPackage,
  fetchPypi,
  isPy3k,
  fetchFromGitHub,
  pythonOlder,
  pyusb,
  pyserial,
  prompt-toolkit,
  libusb1,
  setuptools,
}:

buildPythonPackage rec {
  pname = "facedancer";
  version = "2019.3.2";
  format = "setuptools";
  version = "3.0.4";
  pyproject = true;
  disabled = pythonOlder "3.8";

  src = fetchPypi {
    inherit pname version;
    sha256 = "1zhwnlfksblgp54njd9gjsrr5ibg12cx1x9xxcqkcdfhn3m2kmm0";
  src = fetchFromGitHub {
    owner = "greatscottgadgets";
    repo = "facedancer";
    rev = "refs/tags/${version}";
    hash = "sha256-Cl6cohelJkpr2Nokfwwm7GQIg7ZipPL3v44JVWsHUNI=";
  };

  disabled = !isPy3k;
  postPatch = ''
    substituteInPlace pyproject.toml \
      --replace-fail '"setuptools-git-versioning<2"' "" \
      --replace-fail 'dynamic = ["version"]' 'version = "${version}"'
  '';

  build-system = [
    setuptools
  ];

  propagatedBuildInputs = [
  dependencies = [
    pyusb
    pyserial
    prompt-toolkit
    libusb1
  ];

  preBuild = ''
    echo "$version" > VERSION
  '';
  pythonImportsCheck = [
    "facedancer"
  ];

  meta = with lib; {
    description = "library for emulating usb devices";
    homepage = "https://greatscottgadgets.com/greatfet/";
    license = licenses.bsd3;
    maintainers = with maintainers; [ mog ];
  meta = {
    changelog = "https://github.com/greatscottgadgets/facedancer/releases/tag/${version}";
    description = "Implement your own USB device in Python, supported by a hardware peripheral such as Cynthion or GreatFET";
    homepage = "https://github.com/greatscottgadgets/facedancer";
    license = lib.licenses.bsd3;
    maintainers = with lib.maintainers; [
      mog
      carlossless
    ];
  };
}