python3Packages.magika: init at 0.5.0

Magika is  an AI powered fast and efficient file type identification released
by Google (see
https://opensource.googleblog.com/2024/02/magika-ai-powered-fast-and-efficient-file-type-identification.html).

Signed-off-by: Mihai Maruseac <mihai.maruseac@gmail.com>
This commit is contained in:
Mihai Maruseac 2024-02-25 17:22:49 -08:00
parent 7ae844836e
commit d8303e30f5
No known key found for this signature in database
3 changed files with 58 additions and 0 deletions

View file

@ -0,0 +1,54 @@
{ lib
, buildPythonPackage
, click
, fetchPypi
, magika
, numpy
, onnxruntime
, poetry-core
, python-dotenv
, pythonOlder
, stdenv
, tabulate
, testers
, tqdm
}:
buildPythonPackage rec {
pname = "magika";
version = "0.5.0";
pyproject = true;
disabled = pythonOlder "3.9";
src = fetchPypi {
inherit pname version;
hash = "sha256-r6C7iDCG/o3JEvweQGb4upr+LuHvmNtkwtduZGehCsc=";
};
nativeBuildInputs = [
poetry-core
];
propagatedBuildInputs = [
click
numpy
onnxruntime
python-dotenv
tabulate
tqdm
];
pythonImportsCheck = [ "magika" ];
passthru.tests.version = testers.testVersion { package = magika; };
meta = with lib; {
description = "Magika: Detect file content types with deep learning";
homepage = "https://github.com/google/magika";
license = licenses.asl20;
maintainers = with maintainers; [ mihaimaruseac ];
mainProgram = "magika";
# Currently, disabling on AArch64 as it onnx runtime crashes on ofborg
broken = stdenv.isAarch64 && stdenv.isLinux;
};
}

View file

@ -1085,6 +1085,8 @@ with pkgs;
ruler = callPackage ../tools/security/ruler { };
magika = with python3Packages; toPythonApplication magika;
mblock-mlink = callPackage ../development/tools/mblock-mlink { };
mod = callPackage ../development/tools/mod { };

View file

@ -6911,6 +6911,8 @@ self: super: with self; {
magic-wormhole-transit-relay = callPackage ../development/python-modules/magic-wormhole-transit-relay { };
magika = callPackage ../development/python-modules/magika { };
mahotas = callPackage ../development/python-modules/mahotas { };
mailcap-fix = callPackage ../development/python-modules/mailcap-fix { };