From 51deb46482e312afb92504791fa1092bfa0645ee Mon Sep 17 00:00:00 2001 From: natsukium Date: Fri, 3 Jan 2025 11:12:40 +0900 Subject: [PATCH 1/5] hmmer: enable aarch64 support hmmer supports aarch64 since v3.4 --- pkgs/by-name/hm/hmmer/package.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/by-name/hm/hmmer/package.nix b/pkgs/by-name/hm/hmmer/package.nix index 81d0cdb1ec81..9a3d0a364082 100644 --- a/pkgs/by-name/hm/hmmer/package.nix +++ b/pkgs/by-name/hm/hmmer/package.nix @@ -25,7 +25,6 @@ stdenv.mkDerivation rec { changelog = "https://github.com/EddyRivasLab/hmmer/blob/hmmer-${version}/release-notes/RELEASE-${version}.md"; license = licenses.gpl3; maintainers = [ maintainers.iimog ]; - # at least SSE is *required* - platforms = platforms.x86_64; + platforms = lib.platforms.unix; }; } From 9e00c8a8519bf11c7f58e765daf0279d68c5723b Mon Sep 17 00:00:00 2001 From: natsukium Date: Fri, 3 Jan 2025 11:18:55 +0900 Subject: [PATCH 2/5] hmmer: change license from gpl3 to bsd3 --- pkgs/by-name/hm/hmmer/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/hm/hmmer/package.nix b/pkgs/by-name/hm/hmmer/package.nix index 9a3d0a364082..c05ccd065d04 100644 --- a/pkgs/by-name/hm/hmmer/package.nix +++ b/pkgs/by-name/hm/hmmer/package.nix @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { ''; homepage = "http://hmmer.org/"; changelog = "https://github.com/EddyRivasLab/hmmer/blob/hmmer-${version}/release-notes/RELEASE-${version}.md"; - license = licenses.gpl3; + license = licenses.bsd3; maintainers = [ maintainers.iimog ]; platforms = lib.platforms.unix; }; From 0890b8133312e2aeef7e3d5529ad7e8e692cae20 Mon Sep 17 00:00:00 2001 From: natsukium Date: Fri, 3 Jan 2025 12:22:09 +0900 Subject: [PATCH 3/5] easel: init at 0.49 --- pkgs/by-name/ea/easel/package.nix | 49 +++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 pkgs/by-name/ea/easel/package.nix diff --git a/pkgs/by-name/ea/easel/package.nix b/pkgs/by-name/ea/easel/package.nix new file mode 100644 index 000000000000..d172f891eb69 --- /dev/null +++ b/pkgs/by-name/ea/easel/package.nix @@ -0,0 +1,49 @@ +{ + lib, + stdenv, + fetchFromGitHub, + autoreconfHook, + perl, + python3, + versionCheckHook, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "easel"; + version = "0.49"; + + src = fetchFromGitHub { + owner = "EddyRivasLab"; + repo = "easel"; + tag = "easel-${finalAttrs.version}"; + hash = "sha256-NSKy7ptNYR0K/VFJNv+5TGWdC1ZM4Y5i/3L+3Coj/sg="; + }; + + nativeBuildInputs = [ autoreconfHook ]; + + enableParallelBuilding = true; + + doCheck = true; + + nativeCheckInputs = [ + perl + python3 + ]; + + preCheck = '' + patchShebangs devkit/sqc + ''; + + doInstallCheck = true; + + nativeInstallCheckInputs = [ versionCheckHook ]; + + meta = { + description = "Sequence analysis library used by Eddy/Rivas lab code"; + homepage = "https://github.com/EddyRivasLab/easel"; + license = lib.licenses.bsd2; + mainProgram = "easel"; + maintainers = with lib.maintainers; [ natsukium ]; + platforms = lib.platforms.unix; + }; +}) From e3f9d35315ccb2cff631a8f3c0cbf536e8ef9135 Mon Sep 17 00:00:00 2001 From: natsukium Date: Fri, 3 Jan 2025 13:43:07 +0900 Subject: [PATCH 4/5] hmmer: enable tests --- pkgs/by-name/hm/hmmer/package.nix | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/pkgs/by-name/hm/hmmer/package.nix b/pkgs/by-name/hm/hmmer/package.nix index c05ccd065d04..941a59068b32 100644 --- a/pkgs/by-name/hm/hmmer/package.nix +++ b/pkgs/by-name/hm/hmmer/package.nix @@ -2,6 +2,10 @@ lib, stdenv, fetchurl, + easel, + perl, + python3, + versionCheckHook, }: stdenv.mkDerivation rec { @@ -13,6 +17,28 @@ stdenv.mkDerivation rec { sha256 = "sha256-ynDZT9DPJxvXBjQjqrsRbULeUzEXNDqbJ6ZcF/8G+/M="; }; + enableParallelBuilding = true; + + doCheck = true; + + nativeCheckInputs = [ + perl + python3 + ]; + + preCheck = '' + install -Dm755 ${easel.src}/devkit/sqc easel/devkit/sqc + patchShebangs easel/devkit/sqc testsuite/* src/hmmpress.itest.pl + ''; + + doInstallCheck = true; + + nativeInstallCheckInputs = [ versionCheckHook ]; + + versionCheckProgram = "${placeholder "out"}/bin/hmmalign"; + + versionCheckProgramArg = [ "-h" ]; + meta = with lib; { description = "Biosequence analysis using profile hidden Markov models"; longDescription = '' From 2e4f197e17d4651a1b293f36f92148b05b8422e2 Mon Sep 17 00:00:00 2001 From: natsukium Date: Fri, 3 Jan 2025 13:46:25 +0900 Subject: [PATCH 5/5] hmmer: refactor --- pkgs/by-name/hm/hmmer/package.nix | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/by-name/hm/hmmer/package.nix b/pkgs/by-name/hm/hmmer/package.nix index 941a59068b32..ef70f6d37ca9 100644 --- a/pkgs/by-name/hm/hmmer/package.nix +++ b/pkgs/by-name/hm/hmmer/package.nix @@ -8,13 +8,13 @@ versionCheckHook, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { version = "3.4"; pname = "hmmer"; src = fetchurl { - url = "http://eddylab.org/software/hmmer/${pname}-${version}.tar.gz"; - sha256 = "sha256-ynDZT9DPJxvXBjQjqrsRbULeUzEXNDqbJ6ZcF/8G+/M="; + url = "http://eddylab.org/software/hmmer/hmmer-${finalAttrs.version}.tar.gz"; + hash = "sha256-ynDZT9DPJxvXBjQjqrsRbULeUzEXNDqbJ6ZcF/8G+/M="; }; enableParallelBuilding = true; @@ -39,7 +39,7 @@ stdenv.mkDerivation rec { versionCheckProgramArg = [ "-h" ]; - meta = with lib; { + meta = { description = "Biosequence analysis using profile hidden Markov models"; longDescription = '' HMMER is used for searching sequence databases for sequence homologs, and for making sequence alignments. It implements methods using probabilistic models called profile hidden Markov models (profile HMMs). @@ -48,9 +48,9 @@ stdenv.mkDerivation rec { HMMER can be downloaded and installed as a command line tool on your own hardware, and now it is also more widely accessible to the scientific community via new search servers at the European Bioinformatics Institute. ''; homepage = "http://hmmer.org/"; - changelog = "https://github.com/EddyRivasLab/hmmer/blob/hmmer-${version}/release-notes/RELEASE-${version}.md"; - license = licenses.bsd3; - maintainers = [ maintainers.iimog ]; + changelog = "https://github.com/EddyRivasLab/hmmer/blob/hmmer-${finalAttrs.version}/release-notes/RELEASE-${finalAttrs.version}.md"; + license = lib.licenses.bsd3; + maintainers = [ lib.maintainers.iimog ]; platforms = lib.platforms.unix; }; -} +})