diff --git a/pkgs/applications/science/biology/paml/default.nix b/pkgs/applications/science/biology/paml/default.nix index 871c76dc6e31..c593b5ed3d34 100644 --- a/pkgs/applications/science/biology/paml/default.nix +++ b/pkgs/applications/science/biology/paml/default.nix @@ -1,23 +1,28 @@ -{stdenv, fetchurl}: +{ lib +, stdenv +, fetchFromGitHub +}: -stdenv.mkDerivation rec { - version = "4.9j"; +stdenv.mkDerivation (finalAttrs: { pname = "paml"; - src = fetchurl { - url = "http://abacus.gene.ucl.ac.uk/software/paml${version}.tgz"; - sha256 = "0qflf3i27x6jwks3c6q560m1q8r043ja96syah145113iz5wdalp"; + version = "4.10.7"; + + src = fetchFromGitHub { + owner = "abacus-gene"; + repo = "paml"; + rev = "refs/tags/${finalAttrs.version}"; + hash = "sha256-P/oHaLxoQzjFuvmHyRdShHv1ayruy6O/I9w8aTyya2s="; }; - # Workaround build failure on -fno-common toolchains like upstream - # gcc-10. Otherwise build fails as: - # ld: /build/ccKomtcd.o:(.bss+0x4544): multiple definition of `SeqTypes'; - # /build/ccx7EsgU.o:(.bss+0x2a0dfdc): first defined here - env.NIX_CFLAGS_COMPILE = "-fcommon"; + env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-D_POSIX_C_SOURCE"; preBuild = '' cd ./src/ ''; + installPhase = '' + runHook preInstall + mkdir -pv $out/bin cp -v codeml $out/bin cp -v baseml $out/bin @@ -28,12 +33,16 @@ stdenv.mkDerivation rec { cp -v mcmctree $out/bin cp -v pamp $out/bin cp -v yn00 $out/bin + + runHook postInstall ''; meta = { description = "Phylogenetic Analysis by Maximum Likelihood (PAML)"; longDescription = "PAML is a package of programs for phylogenetic analyses of DNA or protein sequences using maximum likelihood. It is maintained and distributed for academic use free of charge by Ziheng Yang. ANSI C source codes are distributed for UNIX/Linux/Mac OSX, and executables are provided for MS Windows. PAML is not good for tree making. It may be used to estimate parameters and test hypotheses to study the evolutionary process, when you have reconstructed trees using other programs such as PAUP*, PHYLIP, MOLPHY, PhyML, RaxML, etc."; - license = "non-commercial"; + license = lib.licenses.gpl3Only; homepage = "http://abacus.gene.ucl.ac.uk/software/paml.html"; + changelog = "https://github.com/abacus-gene/paml/releases/tag/${finalAttrs.src.rev}"; + platforms = lib.platforms.unix; }; -} +})