nixpkgs/pkgs/development/python-modules/pyinstaller/default.nix

77 lines
1.3 KiB
Nix

{
lib,
stdenv,
buildPythonPackage,
fetchPypi,
# build-system
setuptools,
# native dependencies
zlib,
# dependencies
altgraph,
macholib,
packaging,
pyinstaller-hooks-contrib,
# tests
binutils,
glibc,
pyinstaller,
testers,
}:
buildPythonPackage rec {
pname = "pyinstaller";
version = "6.11.0";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-y01DOj2zDZ0Xz18s97tN+Ap4jUk8HWfdgi3FeR2YZK8=";
};
build-system = [ setuptools ];
buildInputs = [ zlib.dev ];
dependencies = [
altgraph
packaging
macholib
pyinstaller-hooks-contrib
];
makeWrapperArgs = lib.optionals stdenv.hostPlatform.isLinux [
"--prefix"
"PATH"
":"
(lib.makeBinPath [
glibc
binutils
])
];
pythonImportsCheck = [ "PyInstaller" ];
passthru.tests.version = testers.testVersion {
package = pyinstaller;
};
meta = {
description = "A tool to bundle a python application with dependencies into a single package";
homepage = "https://pyinstaller.org/";
changelog = "https://pyinstaller.org/en/v${version}/CHANGES.html";
downloadPage = "https://pypi.org/project/pyinstaller/";
license = with lib.licenses; [
mit
asl20
gpl2Plus
];
maintainers = with lib.maintainers; [ h7x4 ];
mainProgram = "pyinstaller";
};
}