aboutsummaryrefslogtreecommitdiff
path: root/lib/references.nix
blob: 498cfd9fa02450c8d4a5c575d93024d51370d053 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
{ bionix, nixpkgs }:

with nixpkgs;
with bionix.types;

rec {
  grch38 = grch38-p12;
  grch38-p12 = rec {
    seq = stdenvNoCC.mkDerivation rec {
      name = "seq-grch38.${version}";
      version = "p12";
      src = fetchurl {
        url = "ftp://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_28/GRCh38.p12.genome.fa.gz";
        sha256 = "0ji2ggpmgnbpwbhq8mirj6h3lyy02nl2rnz7n892iq5cqpsblh4z";
      };
      buildCommand = "gunzip < $src > $out";
      passthru.filetype = filetype.fa {};
    };
    blacklist = stdenvNoCC.mkDerivation {
      name = "blacklist-grch38";
      src = fetchurl {
        url = "http://mitra.stanford.edu/kundaje/akundaje/release/blacklists/hg38-human/hg38.blacklist.bed.gz";
        sha256 = "1lpnqq1mjidbdxj5i6x26rxa8x1rs8q3hlf0z1z49j3jsnkgffky";
      };
      buildCommand = "gunzip < $src > $out";
      passthru.filetype = filetype.bed { ref = seq; };
    };
    dbsnp = stdenvNoCC.mkDerivation {
      name = "dbsnp-b151_GRCh38p7";
      src = fetchurl {
        url = "ftp://ftp.ncbi.nlm.nih.gov/snp/organisms/human_9606_b151_GRCh38p7/VCF/common_all_20180418.vcf.gz";
        sha256 = "0r6m2yrcfw8bbdca515axjls30ssjas6x3qwi5qz07l3prjwmdd4";
      };
      buildInputs = [ gawk ];
      buildCommand = ''
        gunzip < $src | awk '/^[^#]/{print "chr" $0;next}{print}' > $out
      '';
      passthru.filetype = filetype.vcf { ref = seq; };
    };
    cosmic = {coding, noncoding}: stdenvNoCC.mkDerivation rec {
      name = "cosmic-grch38";
      buildInputs = [ gawk ];
      buildCommand = ''
        gunzip < ${coding} | grep '^#' > $out
        cat ${coding} ${noncoding} | gunzip | grep -v '^#' | sed 's/^/chr/' | sort -t$'\t' -k1,1 -k2,2n >> $out
      '';
      passthru.filetype = filetype.vcf { ref = seq; };
    };
  };

  grcm38 = grcm38-p6;
  grcm38-p6 = {
    seq = stdenvNoCC.mkDerivation rec {
      name = "seq-grcm38.${version}";
      version = "p6";
      src = fetchurl {
        url = "ftp://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_mouse/release_M19/GRCm38.${version}.genome.fa.gz";
        sha256 = "0ryiqab5bldpzawylsk2qpjxr2j701q03ww9jqyxhkimqpn9g3mr";
      };
      buildCommand = "gunzip < $src > $out";
      passthru.filetype = filetype.fa {};
    };
  };

  mm10 = mm10-p4;
  mm10-p4 = {
      seq = stdenvNoCC.mkDerivation rec {
          name = "seq-mm10.${version}";
          version = "p4";
          src = fetchurl {
              url = "http://hgdownload.soe.ucsc.edu/goldenPath/mm10/mm10Patch4/mm10Patch4.fa.gz";
              sha256 = "1660d6d05f3aa266c6053cfd1efef1747d9e854836917241d6f47cff7a55340c";
              };
          buildCommand = "gunzip < $src > $out";
          passthru.filetype = filetype.fa {};
      };
  };
}