1 # Instructions:http://www.ensembl.org/info/docs/api/api_installation.html,
2 # Do not use https://github.com/Ensembl/ensembl-vep/archive/release/${version}.zip
3 # We cannot use INSTALL.pl but it’s not that bad:install the dependencies and copies the .pm files should be ok
16 customInstallPhase = ''
17 mkdir -p $out/${perl.libPrefix}/${perl.version}/
18 tests=$(find modules/ -mindepth 1 -maxdepth 1 -type d | grep -v t)
19 cp -r $tests $out/${perl.libPrefix}/${perl.version}/
24 # Copy modules directly
27 src = fetchFromGitHub {
28 inherit sha256 version;
31 rev = "release/${version}";
38 runHook postInstall'';
41 vepPlugins = fetchFromGitHub {
44 rev = "8f271c4848338dc7d504881ff71fdf2892c3d096";
45 sha256 = "sha256-LbaXwLFDP3m1QhRHwO9uh36BEFHE2NzL4xdxTb7/S5Q=";
48 # Install ensembl-xs, faster run using re-implementation in C of some of the Perl subroutines
49 ensembl-xs = perlPackages.buildPerlPackage rec {
52 src = fetchFromGitHub {
57 sha256 = "1qqnski532f4bz32wxbqd9w1sz40rjh81ipp9p02k3rlaf1gp1fa";
61 perl Makefile.PL PREFIX=$out INSTALLDIRS=site
63 # Test do not work -- wrong include path
67 # it contains compiled versions of certain key subroutines used in VEP
68 ensembl = ensemblGit "ensembl" "sha256-ZhI4VNxIY+53RX2uYRNlFeo/ydAmlwGx00WDXaxv6h4=";
69 ensembl-io = ensemblGit "ensembl-io" "sha256-r3RvN5U2kcyghoKM0XuiBRe54t1U4FaZ0QEeYIFiG0w=";
70 ensembl-variation = ensemblGit "ensembl-variation" "sha256-UjrLHF9EqI+Mp+SZR4sLNZUCGiA/UYhoFWtpwiKF8tM=";
71 ensembl-funcgen = ensemblGit "ensembl-funcgen" "sha256-a9hxLBoXJsF5JWuRdpyOac1u033M8ivEjEQecuncghs=";
73 perlPackages.buildPerlModule rec {
95 propagatedBuildInputs = [ htslib ];
96 src = fetchFromGitHub {
98 repo = "ensembl-${pname}";
99 rev = "release/${version}";
100 sha256 = "sha256-6lRdWV2ispl+mpBhkZez/d9PxOw1fkNUWeG8mUIqBJc=";
103 nativeBuildInputs = [ makeWrapper ];
113 install -D -m755 filter_vep vep $out/bin/
115 wrapProgram $out/bin/vep \
116 --prefix PERL5LIB : $out/${perl.libPrefix}/${perl.version}/ \
117 --add-flags "--dir_plugins ${vepPlugins}"
119 wrapProgram $out/bin/filter_vep \
120 --prefix PERL5LIB : $out/${perl.libPrefix}/${perl.version}/
121 ${customInstallPhase}
127 homepage = "https://www.ensembl.org/info/docs/tools/vep/index.html";
128 description = "Annotate genetics variants based on genes, transcripts, and protein sequence, as well as regulatory regions";
129 license = lib.licenses.asl20;
131 maintainers = with lib.maintainers; [ apraga ];
132 platforms = lib.platforms.unix;