Snakemake conda env 路径和 Homer annotatePeaks.pl
Snakemake conda env path and Homer annotatePeaks.pl
我想使用我自己定义的 yaml 环境中的 HOMER annotatePeaks.pl (http://homer.ucsd.edu/homer/ngs/annotation.html)。
我需要获取此 Perl 脚本:
perl /home/rj/miniconda3/envs/metylace/share/homer/.//configureHomer.pl -install hg19
我的 miniconda3 路径将是 conda env 路径。
可能吗?
有没有办法匹配当前规则和conda env hash?
长话短说:
有一个包装器,但我对其他方式很好奇。
包装器使用选项来指定 fasta 文件,但 HOMER 能够自行下载引用。
但是,在此之前我调用了一个 perl 脚本并下载了它。但是这个 Perl 脚本位于 conda env 路径中的某个地方,并且 conda 不使用名称,而是使用哈希。
怎么做?
由于Snakemake会激活环境,所以应该可以使用CONDA_PREFIX
环境变量来定位目录。另一个问题是 share/homer/
目录似乎是特定于版本的。例如,我看到 share/homer-4.11-0
。只要只有一个——我认为这是一个合理的假设——你应该能够逃脱:
perl $CONDA_PREFIX/share/homer*/configureHomer.pl -install hg19
我想使用我自己定义的 yaml 环境中的 HOMER annotatePeaks.pl (http://homer.ucsd.edu/homer/ngs/annotation.html)。 我需要获取此 Perl 脚本:
perl /home/rj/miniconda3/envs/metylace/share/homer/.//configureHomer.pl -install hg19
我的 miniconda3 路径将是 conda env 路径。 可能吗? 有没有办法匹配当前规则和conda env hash?
长话短说: 有一个包装器,但我对其他方式很好奇。 包装器使用选项来指定 fasta 文件,但 HOMER 能够自行下载引用。 但是,在此之前我调用了一个 perl 脚本并下载了它。但是这个 Perl 脚本位于 conda env 路径中的某个地方,并且 conda 不使用名称,而是使用哈希。 怎么做?
由于Snakemake会激活环境,所以应该可以使用CONDA_PREFIX
环境变量来定位目录。另一个问题是 share/homer/
目录似乎是特定于版本的。例如,我看到 share/homer-4.11-0
。只要只有一个——我认为这是一个合理的假设——你应该能够逃脱:
perl $CONDA_PREFIX/share/homer*/configureHomer.pl -install hg19