diff --git a/pkgs/applications/science/biology/paml/default.nix b/pkgs/applications/science/biology/paml/default.nix index 871c76dc6e3..c593b5ed3d3 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; }; -} +})