Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@

### Added

- HOMER 5.1 (`images/homer/5.1`) with bedtools 2.31.1 and Python 3.12 for
FASTA-mode motif discovery, published as `ghcr.io/yeolab/homer:5.1`.
- skipper-clipper-compare 1.0.0 (`images/skipper-clipper-compare/1.0.0`): the
pinned Python/bedtools environment for skipper-clipper-snakemake's
Skipper-vs-CLIPper comparison, published as
Expand Down
29 changes: 29 additions & 0 deletions images/homer/5.1/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# HOMER 5.1 with bedtools and Python 3 for de novo motif discovery in CLIP
# peaks against region-matched random backgrounds (FASTA mode, -rna). Used by
# skipper-clipper-snakemake's homer_motifs rule, which follows
# yeolab/clip_analysis_legacy's analyze_motifs.

FROM mambaorg/micromamba:2.9.0-debian12-slim@sha256:edce84d758b6c3029cebdf2777d9cdfdd6e44f9eee0a31c6a09a7df14be17fd2

LABEL software="homer"
LABEL software.version="5.1"
LABEL about.summary="HOMER motif discovery with bedtools and Python 3"
LABEL about.url="http://homer.ucsd.edu/homer/"
LABEL about.tags="Genomics,motifs,eCLIP"

COPY --chown=$MAMBA_USER:$MAMBA_USER environment.yml /tmp/environment.yml
RUN micromamba install -y -n base -f /tmp/environment.yml \
&& micromamba clean --all --yes

# Tools resolve on PATH without micromamba's activating entrypoint, as they
# must when Snakemake runs this image through Singularity/Apptainer.
ENV PATH=/opt/conda/bin:$PATH

# Fail the build if HOMER cannot find motifs in FASTA mode.
RUN printf '>a\nACGTACGTTTTTACGT\n>b\nACGTACGTTTTTACGT\n' > /tmp/fg.fa \
&& printf '>c\nGGCCGGCCAAAAGGCC\n>d\nGGCCGGCCAAAAGGCC\n' > /tmp/bg.fa \
&& findMotifs.pl /tmp/fg.fa fasta /tmp/homer-check -rna -len 6 -S 2 -p 1 \
-nofacts -noconvert -nogo -fasta /tmp/bg.fa > /dev/null 2>&1 \
&& test -s /tmp/homer-check/homerMotifs.all.motifs \
&& rm -rf /tmp/fg.fa /tmp/bg.fa /tmp/homer-check \
&& bedtools --version && python3 --version
13 changes: 13 additions & 0 deletions images/homer/5.1/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# HOMER 5.1

[HOMER](http://homer.ucsd.edu/homer/) 5.1 with bedtools 2.31.1 and Python 3.12,
pinned in `environment.yml`. No genome packages are installed: it is meant for
FASTA-mode motif finding (`findMotifs.pl <fg.fa> fasta <out> -fasta <bg.fa>`),
as used by
[skipper-clipper-snakemake](https://github.com/byee4/skipper-clipper-snakemake)'s
`homer_motifs` rule. Everything is on `PATH` without activation, so it runs under
Singularity/Apptainer:

```bash
apptainer exec docker://ghcr.io/yeolab/homer:5.1 findMotifs.pl
```
8 changes: 8 additions & 0 deletions images/homer/5.1/environment.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
name: homer
channels:
- conda-forge
- bioconda
dependencies:
- python=3.12
- homer=5.1
- bedtools=2.31.1
Loading