diff --git a/pkgs/applications/science/biology/mmseqs2/default.nix b/pkgs/applications/science/biology/mmseqs2/default.nix new file mode 100644 index 000000000000..253f4a43a81c --- /dev/null +++ b/pkgs/applications/science/biology/mmseqs2/default.nix @@ -0,0 +1,50 @@ +{ lib +, stdenv +, fetchFromGitHub +, cmake +, xxd +, perl +, installShellFiles +, enableAvx2 ? stdenv.hostPlatform.avx2Support +, enableSse4_1 ? stdenv.hostPlatform.sse4_1Support +, enableMpi ? false +, mpi +, openmp +, zlib +, bzip2 +}: + +stdenv.mkDerivation rec { + pname = "mmseqs2"; + version = "14-7e284"; + + src = fetchFromGitHub { + owner = "soedinglab"; + repo = pname; + rev = version; + sha256 = "sha256-pVryZGblgMEqJl5M20CHxav269yGY6Y4ci+Gxt6SHOU="; + }; + + nativeBuildInputs = [ cmake xxd perl installShellFiles ]; + cmakeFlags = + lib.optional enableAvx2 "-DHAVE_AVX2=1" + ++ lib.optional enableSse4_1 "-DHAVE_SSE4_1=1" + ++ lib.optional enableMpi "-DHAVE_MPI=1"; + + buildInputs = + lib.optionals stdenv.cc.isClang [ openmp zlib bzip2 ] + ++ lib.optional enableMpi mpi; + + postInstall = '' + installShellCompletion --bash --cmd mmseqs $out/util/bash-completion.sh + rm -r $out/util/ + ''; + + meta = with lib; { + description = "Ultra fast and sensitive sequence search and clustering suite"; + homepage = "https://mmseqs.com/"; + license = licenses.gpl3; + maintainers = with maintainers; [ natsukium ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 762fb599df35..c11c214d5b1a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -35200,6 +35200,10 @@ with pkgs; minimap2 = callPackage ../applications/science/biology/minimap2 { }; + mmseqs2 = callPackage ../applications/science/biology/mmseqs2 { + inherit (llvmPackages) openmp; + }; + mosdepth = callPackage ../applications/science/biology/mosdepth { }; niftyreg = callPackage ../applications/science/biology/niftyreg { };