btw, in a pinch you could use docker for macos to accomplish this. here’s an example:
docker-compose.yml
version: "2"
services:
restic:
build: .
cap_add:
- SYS_ADMIN
devices:
- /dev/fuse:/dev/fuse
environment:
- TZ=America/Chicago
- RESTIC_REPOSITORY=<REPO HERE>
- RESTIC_PASSWORD=<PASSWORD_HERE>
ports:
- "8888:8888"
volumes:
- cache:/root/.cache/restic
volumes:
cache:
Dockerfile
FROM ubuntu:focal
ENV RESTIC_VERSION 0.11.0
ENV RESTIC_URL https://github.com/restic/restic/releases/download/v${RESTIC_VERSION}/restic_${RESTIC_VERSION}_linux_amd64.bz2
RUN apt-get update && apt-get install -y curl fuse python3 \
&& curl -L $RESTIC_URL | bzip2 -d >/usr/local/bin/restic \
&& chmod +x /usr/local/bin/restic \
&& mkdir /root/mnt
COPY cmd.sh /root
CMD ["/root/cmd.sh"]
cmd.sh
#!/bin/bash
python3 -m http.server --directory /root/mnt 8888 &
restic mount /root/mnt
And then run docker-compose up --build
and access the mount at http://localhost:8888
. A more complete solution would probably be to start a simple webdav server instead of python http server. Perhaps micromata/dave would be a candidate?