2.0.0-rc (#9)
Some checks failed
BlockStorage/repertory_osx/pipeline/head This commit looks good
BlockStorage/repertory_windows/pipeline/head This commit looks good
BlockStorage/repertory/pipeline/head There was a failure building this commit
BlockStorage/repertory_linux_builds/pipeline/head This commit looks good
BlockStorage/repertory_osx_builds/pipeline/head There was a failure building this commit

### Issues

* \#1 \[bug\] Unable to mount S3 due to 'item_not_found' exception
* \#2 Require bucket name for S3 mounts
* \#3 \[bug\] File size is not being updated in S3 mount
* \#4 Upgrade to libfuse-3.x.x
* \#5 Switch to renterd for Sia support
* \#6 Switch to cpp-httplib to further reduce dependencies
* \#7 Remove global_data and calculate used disk space per provider
* \#8 Switch to libcurl for S3 mount support

### Changes from v1.x.x

* Added read-only encrypt provider
  * Pass-through mount point that transparently encrypts source data using `XChaCha20-Poly1305`
* Added S3 encryption support via `XChaCha20-Poly1305`
* Added replay protection to remote mounts
* Added support base64 writes in remote FUSE
* Created static linked Linux binaries for `amd64` and `aarch64` using `musl-libc`
* Removed legacy Sia renter support
* Removed Skynet support
* Fixed multiple remote mount WinFSP API issues on \*NIX servers
* Implemented chunked read and write
  * Writes for non-cached files are performed in chunks of 8Mib
* Removed `repertory-ui` support
* Removed `FreeBSD` support
* Switched to `libsodium` over `CryptoPP`
* Switched to `XChaCha20-Poly1305` for remote mounts
* Updated `GoogleTest` to v1.14.0
* Updated `JSON for Modern C++` to v3.11.2
* Updated `OpenSSL` to v1.1.1w
* Updated `RocksDB` to v8.5.3
* Updated `WinFSP` to 2023
* Updated `boost` to v1.78.0
* Updated `cURL` to v8.3.0
* Updated `zlib` to v1.3
* Use `upload_manager` for all providers
  * Adds a delay to uploads to prevent excessive API calls
  * Supports re-upload after mount restart for incomplete uploads
  * NOTE: Uploads for all providers are full file (no resume support)
    * Multipart upload support is planned for S3

Reviewed-on: #9
This commit is contained in:
2023-10-29 06:55:59 +00:00
parent 3ff46723b8
commit f43c41f88a
839 changed files with 98214 additions and 92959 deletions

45
docker/64_bit/alpine Normal file
View File

@ -0,0 +1,45 @@
FROM alpine:latest
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
RUN apk update
RUN apk upgrade
RUN apk add \
autoconf \
automake \
bash \
binutils \
binutils-dev \
cmake \
diffutils \
fuse \
fuse-dev \
fuse-static \
fuse3 \
fuse3-dev \
fuse3-static \
g++ \
gcc \
git \
libtool \
libunwind \
libunwind-static \
libunwind-dev \
linux-headers \
make \
musl-dev \
patch \
perl \
pkgconfig \
wget \
zlib \
zlib-dev \
zlib-static \
zstd \
zstd-dev \
zstd-libs \
zstd-static \
xz \
xz-dev \
xz-libs \
xz-static

View File

@ -1,26 +0,0 @@
FROM archlinux:base
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
# Required system packages
RUN pacman -Syy --noconfirm && pacman -Su --noconfirm && pacman --noconfirm -S \
automake \
autoconf \
m4 \
perl \
base-devel \
autoconf \
automake \
libtool \
nano \
cmake \
make \
fuse2 \
gcc \
gnupg \
git \
diffutils \
tar \
wget \
zip \
pkgconf

View File

@ -1,36 +0,0 @@
FROM centos:7 AS env
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
USER 0
RUN yum update -y
RUN yum install -y centos-release-scl
RUN yum install -y devtoolset-8
RUN yum -y install \
wget \
curl \
make \
git \
fuse \
fuse-devel \
autoconf \
automake \
libtool \
patch \
pkgconfig \
zip \
zlib-devel \
zlib-static
RUN git config --system user.name "Scott E. Graves"
RUN git config --system user.email "scott.e.graves@protonmail.com"
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:/opt/rh/devtoolset-8/root/usr/bin:${PATH}"

View File

@ -1,34 +0,0 @@
FROM debian:buster
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN apt-get update && apt-get -y install \
apt-utils \
build-essential \
curl \
pkg-config \
autoconf \
automake \
libtool \
wget \
make \
gcc \
g++ \
libfuse-dev \
libstdc++-8-dev \
diffutils \
git \
tar \
zlib1g-dev \
zip
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

View File

@ -1,34 +0,0 @@
FROM debian:bullseye
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN apt-get update && apt-get -y install \
apt-utils \
build-essential \
curl \
pkg-config \
autoconf \
automake \
libtool \
make \
gcc \
g++ \
libfuse-dev \
libstdc++-10-dev \
diffutils \
git \
tar \
wget \
zlib1g-dev \
zip
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

View File

@ -1,34 +0,0 @@
FROM debian:stretch
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN apt-get update && apt-get -y install \
apt-utils \
build-essential \
curl \
pkg-config \
autoconf \
automake \
libtool \
make \
wget \
gcc \
g++ \
libfuse-dev \
libstdc++-6-dev \
diffutils \
git \
tar \
zlib1g-dev \
zip
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

View File

@ -1,32 +0,0 @@
FROM fedora:29
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN dnf -y update && dnf -y install \
curl \
make \
git \
fuse \
fuse-devel \
pkgconfig \
patch \
zlib-devel \
zlib-static \
autoconf \
automake \
libtool \
wget \
zip \
gcc \
gcc-c++
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

View File

@ -1,33 +0,0 @@
FROM fedora:30
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN dnf -y update && dnf -y install \
curl \
make \
git \
fuse \
fuse-devel \
pkgconfig \
patch \
zip \
file \
autoconf \
automake \
libtool \
wget \
zlib-devel \
zlib-static \
gcc \
gcc-c++
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

View File

@ -1,33 +0,0 @@
FROM fedora:31
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN dnf -y update && dnf -y install \
curl \
make \
git \
fuse \
fuse-devel \
pkgconfig \
patch \
zip \
file \
autoconf \
automake \
libtool \
wget \
zlib-devel \
zlib-static \
gcc \
gcc-c++
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

View File

@ -1,33 +0,0 @@
FROM fedora:32
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN dnf -y update && dnf -y install \
curl \
make \
git \
fuse \
fuse-devel \
pkgconfig \
patch \
zip \
autoconf \
automake \
libtool \
file \
wget \
zlib-devel \
zlib-static \
gcc \
gcc-c++
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

View File

@ -1,34 +0,0 @@
FROM fedora:33
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN dnf -y update && dnf -y install \
curl \
make \
git \
fuse \
fuse-devel \
pkgconfig \
patch \
zip \
autoconf \
automake \
libtool \
file \
wget \
zlib-devel \
zlib-static \
gcc \
gcc-c++ \
cpan
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

View File

@ -1,34 +0,0 @@
FROM fedora:34
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN dnf -y update && dnf -y install \
curl \
make \
git \
fuse \
fuse-devel \
pkgconfig \
patch \
zip \
autoconf \
automake \
libtool \
file \
wget \
zlib-devel \
zlib-static \
gcc \
gcc-c++ \
cpan
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

View File

@ -1,24 +0,0 @@
FROM fedora:35
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
# Required system packages
RUN dnf -y update && dnf -y install \
cmake \
curl \
make \
git \
fuse \
fuse-devel \
pkgconfig \
patch \
zip \
autoconf \
automake \
libtool \
file \
zlib-devel \
zlib-static \
gcc \
gcc-c++ \
cpan

184
docker/64_bit/mingw64 Normal file
View File

@ -0,0 +1,184 @@
# https://github.com/mmozeiko/docker-mingw-w64
FROM ubuntu:22.04
WORKDIR /mnt
ENV MINGW=/mingw
ARG PKG_CONFIG_VERSION=0.29.2
ARG CMAKE_VERSION=3.27.1
ARG BINUTILS_VERSION=2.41
ARG MINGW_VERSION=11.0.1
ARG GCC_VERSION=13.2.0
ARG NASM_VERSION=2.16.01
ARG NVCC_VERSION=12.2.1
SHELL [ "/bin/bash", "-c" ]
RUN set -ex \
\
&& apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get upgrade --no-install-recommends -y \
&& DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y \
ca-certificates \
gcc \
g++ \
zlib1g-dev \
libssl-dev \
libgmp-dev \
libmpfr-dev \
libmpc-dev \
libisl-dev \
libssl3 \
libgmp10 \
libmpfr6 \
libmpc3 \
libisl23 \
xz-utils \
ninja-build \
texinfo \
meson \
gnupg \
bzip2 \
patch \
gperf \
bison \
file \
flex \
make \
yasm \
wget \
zip \
git \
\
&& wget -q https://pkg-config.freedesktop.org/releases/pkg-config-${PKG_CONFIG_VERSION}.tar.gz -O - | tar -xz \
&& wget -q https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}.tar.gz -O - | tar -xz \
&& wget -q https://ftp.gnu.org/gnu/binutils/binutils-${BINUTILS_VERSION}.tar.xz -O - | tar -xJ \
&& wget -q https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/mingw-w64-v${MINGW_VERSION}.tar.bz2 -O - | tar -xj \
&& wget -q https://ftp.gnu.org/gnu/gcc/gcc-${GCC_VERSION}/gcc-${GCC_VERSION}.tar.xz -O - | tar -xJ \
&& wget -q https://www.nasm.us/pub/nasm/releasebuilds/${NASM_VERSION}/nasm-${NASM_VERSION}.tar.xz -O - | tar -xJ \
\
&& mkdir -p ${MINGW}/include ${MINGW}/lib/pkgconfig \
&& chmod 0777 -R /mnt ${MINGW} \
\
&& cd pkg-config-${PKG_CONFIG_VERSION} \
&& ./configure \
--prefix=/usr/local \
--with-pc-path=${MINGW}/lib/pkgconfig \
--with-internal-glib \
--disable-shared \
--disable-nls \
&& make -j`nproc` \
&& make install \
&& cd .. \
\
&& cd cmake-${CMAKE_VERSION} \
&& ./configure \
--prefix=/usr/local \
--parallel=`nproc` \
&& make -j`nproc` \
&& make install \
&& cd .. \
\
&& cd binutils-${BINUTILS_VERSION} \
&& ./configure \
--prefix=/usr/local \
--target=x86_64-w64-mingw32 \
--disable-shared \
--enable-static \
--disable-lto \
--disable-plugins \
--disable-multilib \
--disable-nls \
--disable-werror \
--with-system-zlib \
&& make -j`nproc` \
&& make install \
&& cd .. \
\
&& mkdir mingw-w64 \
&& cd mingw-w64 \
&& ../mingw-w64-v${MINGW_VERSION}/mingw-w64-headers/configure \
--prefix=/usr/local/x86_64-w64-mingw32 \
--host=x86_64-w64-mingw32 \
--enable-sdk=all \
&& make install \
&& cd .. \
\
&& mkdir gcc \
&& cd gcc \
&& ../gcc-${GCC_VERSION}/configure \
--prefix=/usr/local \
--target=x86_64-w64-mingw32 \
--enable-languages=c,c++ \
--disable-shared \
--enable-static \
--enable-threads=posix \
--with-system-zlib \
--enable-libgomp \
--enable-libatomic \
--enable-graphite \
--disable-libstdcxx-pch \
--disable-libstdcxx-debug \
--disable-multilib \
--disable-lto \
--disable-nls \
--disable-werror \
&& make -j`nproc` all-gcc \
&& make install-gcc \
&& cd .. \
\
&& cd mingw-w64 \
&& ../mingw-w64-v${MINGW_VERSION}/mingw-w64-crt/configure \
--prefix=/usr/local/x86_64-w64-mingw32 \
--host=x86_64-w64-mingw32 \
--enable-wildcard \
--disable-lib32 \
--enable-lib64 \
&& (make || make || make || make) \
&& make install \
&& cd .. \
\
&& cd mingw-w64 \
&& ../mingw-w64-v${MINGW_VERSION}/mingw-w64-libraries/winpthreads/configure \
--prefix=/usr/local/x86_64-w64-mingw32 \
--host=x86_64-w64-mingw32 \
--enable-static \
--disable-shared \
&& make -j`nproc` \
&& make install \
&& cd .. \
\
&& cd gcc \
&& make -j`nproc` \
&& make install \
&& cd .. \
\
&& cd nasm-${NASM_VERSION} \
&& ./configure --prefix=/usr/local \
&& make -j`nproc` \
&& make install \
&& cd .. \
\
&& rm -r pkg-config-${PKG_CONFIG_VERSION} \
&& rm -r cmake-${CMAKE_VERSION} \
&& rm -r binutils-${BINUTILS_VERSION} \
&& rm -r mingw-w64 mingw-w64-v${MINGW_VERSION} \
&& rm -r gcc gcc-${GCC_VERSION} \
&& rm -r nasm-${NASM_VERSION} \
\
&& apt-get remove --purge -y file gcc g++ zlib1g-dev libssl-dev libgmp-dev libmpfr-dev libmpc-dev libisl-dev \
\
&& apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/3bf863cc.pub \
&& echo "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/ /" > /etc/apt/sources.list.d/cuda.list \
&& apt-get update \
\
&& DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y \
cuda-nvcc-${NVCC_VERSION:0:2}-${NVCC_VERSION:3:1} \
\
&& ln -s /usr/bin/gcc /usr/local/cuda/bin/gcc \
&& ln -s /usr/bin/g++ /usr/local/cuda/bin/g++ \
\
&& apt-get remove --purge -y gnupg \
&& apt-get autoremove --purge -y \
&& apt-get clean

View File

@ -1,35 +0,0 @@
FROM opensuse/leap:15.0
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN zypper --non-interactive patch;zypper --non-interactive patch;zypper --non-interactive patch;zypper --non-interactive patch;zypper --non-interactive patch;zypper --non-interactive patch;zypper --non-interactive patch;zypper --non-interactive patch;zypper --non-interactive patch;zypper --non-interactive patch && zypper --non-interactive install \
curl \
make \
git \
fuse \
fuse-devel \
pkgconfig \
patch \
autoconf \
automake \
libtool \
zip \
file \
gzip \
which \
wget \
zlib-devel \
zlib-devel-static \
gcc \
gcc-c++
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

View File

@ -1,35 +0,0 @@
FROM opensuse/leap:15.1
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN zypper --non-interactive patch;zypper --non-interactive patch && zypper --non-interactive install \
curl \
make \
git \
fuse \
fuse-devel \
pkgconfig \
patch \
autoconf \
automake \
libtool \
zip \
file \
gzip \
which \
wget \
zlib-devel \
zlib-devel-static \
gcc \
gcc-c++
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

View File

@ -1,35 +0,0 @@
FROM opensuse/leap:15.2
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN zypper --non-interactive patch;zypper --non-interactive patch && zypper --non-interactive install \
curl \
make \
git \
fuse \
fuse-devel \
pkgconfig \
patch \
autoconf \
automake \
libtool \
zip \
file \
gzip \
which \
wget \
zlib-devel \
zlib-devel-static \
gcc \
gcc-c++
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

View File

@ -1,35 +0,0 @@
FROM opensuse/leap:15.3
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN zypper --non-interactive patch;zypper --non-interactive patch && zypper --non-interactive install \
curl \
make \
git \
fuse \
fuse-devel \
pkgconfig \
patch \
autoconf \
automake \
libtool \
zip \
file \
gzip \
which \
wget \
zlib-devel \
zlib-devel-static \
gcc \
gcc-c++
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

View File

@ -1,26 +0,0 @@
FROM opensuse/tumbleweed
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
# Required system packages
RUN zypper --non-interactive patch && zypper --non-interactive install \
cmake \
curl \
make \
git \
fuse \
fuse-devel \
pkgconfig \
patch \
autoconf \
automake \
libtool \
zip \
file \
gzip \
which \
wget \
zlib-devel \
zlib-devel-static \
gcc \
gcc-c++

View File

@ -1,35 +0,0 @@
FROM ubuntu:bionic
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN apt-get update && apt-get -y install \
apt-utils \
build-essential \
curl \
pkg-config \
autoconf \
automake \
libtool \
make \
gcc \
g++ \
libfuse-dev \
libstdc++-6-dev \
diffutils \
git \
tar \
wget \
zip \
zlib1g-dev \
diffutils
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

View File

@ -1,39 +0,0 @@
FROM ubuntu:focal
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN apt-get update
RUN DEBIAN_FRONTEND="noninteractive" apt-get -y install tzdata
RUN ln -fs /usr/share/zoneinfo/America/Chicago /etc/localtime
RUN dpkg-reconfigure --frontend noninteractive tzdata
RUN apt-get -y install \
apt-utils \
build-essential \
curl \
pkg-config \
autoconf \
automake \
libtool \
make \
gcc \
g++ \
libfuse-dev \
libstdc++-9-dev \
diffutils \
git \
tar \
wget \
zip \
zlib1g-dev \
diffutils
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

View File

@ -1,39 +0,0 @@
FROM ubuntu:impish
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
ARG CMAKE_VERSION=3.22.2
# Required system packages
RUN apt-get update
RUN DEBIAN_FRONTEND="noninteractive" apt-get -y install tzdata
RUN ln -fs /usr/share/zoneinfo/America/Chicago /etc/localtime
RUN dpkg-reconfigure --frontend noninteractive tzdata
RUN apt-get -y install \
apt-utils \
build-essential \
curl \
pkg-config \
autoconf \
automake \
libtool \
make \
gcc \
g++ \
libfuse-dev \
libstdc++-9-dev \
diffutils \
git \
tar \
wget \
zip \
zlib1g-dev \
diffutils
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.sh \
-q -O /tmp/cmake-install.sh \
&& chmod u+x /tmp/cmake-install.sh \
&& mkdir /cmake \
&& /tmp/cmake-install.sh --skip-license --prefix=/cmake \
&& rm /tmp/cmake-install.sh
ENV PATH="/cmake/bin:${PATH}"

45
docker/aarch64/alpine Normal file
View File

@ -0,0 +1,45 @@
FROM arm64v8/alpine:latest
MAINTAINER Scott E. Graves <scott.e.graves@protonmail.com>
CMD bash
RUN apk update
RUN apk upgrade
RUN apk add \
autoconf \
automake \
bash \
binutils \
binutils-dev \
cmake \
diffutils \
fuse \
fuse-dev \
fuse-static \
fuse3 \
fuse3-dev \
fuse3-static \
g++ \
gcc \
git \
libtool \
libunwind \
libunwind-static \
libunwind-dev \
linux-headers \
make \
musl-dev \
patch \
perl \
pkgconfig \
wget \
zlib \
zlib-dev \
zlib-static \
zstd \
zstd-dev \
zstd-libs \
zstd-static \
xz \
xz-dev \
xz-libs \
xz-static