nixpkgs/pkgs/development/tools/apkid/default.nix
stuebinm ff1a94e523 treewide: add meta.mainProgram to packages with a single binary
The nixpkgs-unstable channel's programs.sqlite was used to identify
packages producing exactly one binary, and these automatically added
to their package definitions wherever possible.
2024-03-19 03:14:51 +01:00

49 lines
1005 B
Nix

{ lib
, fetchFromGitHub
, python3
}:
python3.pkgs.buildPythonApplication rec {
pname = "apkid";
version = "2.1.5";
format = "setuptools";
src = fetchFromGitHub {
owner = "rednaga";
repo = "APKiD";
rev = "refs/tags/v${version}";
hash = "sha256-yO3k2kT043/KkiCjDnNUlqxX86kQqMZ+CghD+yon3r4=";
};
propagatedBuildInputs = with python3.pkgs; [
yara-python
];
nativeCheckInputs = with python3.pkgs; [
pytestCheckHook
];
preBuild = ''
# Prepare the YARA rules
${python3.interpreter} prep-release.py
'';
postPatch = ''
# We have dex support enabled in yara-python
substituteInPlace setup.py \
--replace "yara-python-dex>=1.0.1" "yara-python"
'';
pythonImportsCheck = [
"apkid"
];
meta = with lib; {
description = "Android Application Identifier";
mainProgram = "apkid";
homepage = "https://github.com/rednaga/APKiD";
license = with licenses; [ gpl3Only ];
maintainers = with maintainers; [ fab ];
};
}