Unverified Commit d8303e30 authored by Mihai Maruseac's avatar Mihai Maruseac
Browse files

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: default avatarMihai Maruseac <mihai.maruseac@gmail.com>
parent 7ae84483
Loading
Loading
Loading
Loading
+54 −0
Original line number Diff line number Diff line
{ 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;
  };
}
+2 −0
Original line number Diff line number Diff line
@@ -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 { };
+2 −0
Original line number Diff line number Diff line
@@ -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 { };