fibertools-rs 0.2.4

Fiber-seq toolkit in rust
FROM ubuntu:20.04

# Update default packages
RUN apt-get update

# stop time prompt 
ARG DEBIAN_FRONTEND=noninteractive

# Get Ubuntu packages
RUN apt-get install -y \
    build-essential \
    curl \
    wget \
    zip \
    cmake \
    git \
    autoconf \
    automake \
    make \
    gcc \
    perl \
    zlib1g-dev \
    libbz2-dev \
    liblzma-dev \
    libcurl4-gnutls-dev \
    libssl-dev

# Update new packages
RUN apt-get update

# Install HTSlib
RUN wget https://github.com/samtools/htslib/releases/download/1.17/htslib-1.17.tar.bz2
RUN tar -xjvf htslib-1.17.tar.bz2
WORKDIR /htslib-1.17
RUN ./configure
RUN make
RUN make install

# Install Rust
RUN curl https://sh.rustup.rs -sSf | bash -s -- -y
ENV PATH="/root/.cargo/bin:${PATH}"


# Install libtorch
WORKDIR /src/fibertools-rs
RUN wget https://download.pytorch.org/libtorch/cpu/libtorch-shared-with-deps-2.0.1%2Bcpu.zip
RUN unzip libtorch-shared-with-deps-2.0.1+cpu.zip
ENV LIBTORCH=/src/fibertools-rs/libtorch
ENV LD_LIBRARY_PATH=/src/fibertools-rs/libtorch/lib:$LD_LIBRARY_PATH
ENV LIBTORCH_CXX11_ABI=0

COPY . .

# RUN cargo install --path . --root /usr/local
RUN cargo build --release  
RUN cp ./target/release/ft /usr/local/bin/ft
RUN ft --help