Add macOS support #34
All checks were successful
BlockStorage/repertory/pipeline/head This commit looks good

This commit is contained in:
2025-08-01 09:45:54 -05:00
parent 07b6b5fca2
commit 6d456e5a7a

View File

@@ -1,6 +1,6 @@
# Repertory # Repertory
Repertory allows you to mount S3 and Sia via FUSE on Linux/OS X or via WinFSP Repertory allows you to mount S3 and Sia via FUSE on Linux/macOS or via WinFSP
on Windows. on Windows.
## Contents ## Contents
@@ -38,16 +38,16 @@ on Windows.
## Details and Features ## Details and Features
* Optimized for [Plex Media Server](https://www.plex.tv/) * Optimized for [Plex Media Server](https://www.plex.tv/)
* Remote mounting of `repertory` instances between Linux, OS X, and/or Windows * Remote mounting of `repertory` instances between Linux, macOS, and/or Windows
* Securely share your mounts over TCP/IP via `XChaCha20-Poly1305` with other systems on your network or over the internet. * Securely share your mounts over TCP/IP via `XChaCha20-Poly1305` with other systems on your network or over the internet.
* Cross-platform support (Linux, OS X, and Windows) * Cross-platform support (Linux, macOS, and Windows)
* Optionally encrypt file names and file data via `XChaCha20-Poly1305` in S3 mounts * Optionally encrypt file names and file data via `XChaCha20-Poly1305` in S3 mounts
## Minimum Requirements ## Minimum Requirements
* [Sia renterd](https://github.com/SiaFoundation/renterd/releases) v2.0.0+ for Sia support * [Sia renterd](https://github.com/SiaFoundation/renterd/releases) v2.0.0+ for Sia support
* Linux requires `fusermount3`; otherwise, `repertory` must be manually compiled with `libfuse2` support * Linux requires `fusermount3`; otherwise, `repertory` must be manually compiled with `libfuse2` support
* OS X requires the following dependencies to be installed: * macOS requires the following dependencies to be installed:
* [macFUSE 4.10-2](https://github.com/macfuse/macfuse/releases/download/macfuse-4.10.2/macfuse-4.10.2.dmg) * [macFUSE 4.10-2](https://github.com/macfuse/macfuse/releases/download/macfuse-4.10.2/macfuse-4.10.2.dmg)
* Windows requires the following dependencies to be installed: * Windows requires the following dependencies to be installed:
* [WinFSP 2025](https://github.com/winfsp/winfsp/releases/download/v2.1/winfsp-2.1.25156.msi) * [WinFSP 2025](https://github.com/winfsp/winfsp/releases/download/v2.1/winfsp-2.1.25156.msi)
@@ -58,8 +58,8 @@ Only 64-bit operating systems are supported
* Linux `arm64/aarch64` * Linux `arm64/aarch64`
* Linux `x86-64` * Linux `x86-64`
* OS X `arm64/aarch64` * macOS `arm64/aarch64`
* OS X `x86-64` * macOS `x86-64`
* Windows `x86-64` 10, 11 * Windows `x86-64` 10, 11
## GUI ## GUI
@@ -401,12 +401,25 @@ in the `dist/` directory
### Linux Compilation ### Linux Compilation
* Ensure `docker` is installed * Ensure `docker` is installed
* For x86_64: * For `x86-64`:
* RelWithDebInfo: `scripts/make_unix.sh` * RelWithDebInfo: `scripts/make_unix.sh x86_64`
* Release: `scripts/make_unix.sh x86_64 Release` * Release: `scripts/make_unix.sh x86_64 Release`
* Debug: `scripts/make_unix.sh x86_64 Debug` * Debug: `scripts/make_unix.sh x86_64 Debug`
* For aarch64: * For `aarch64`:
* RelWithDebInfo: `scripts/make_unix.sh aarch64`
* Release: `scripts/make_unix.sh aarch64 Release`
* Debug: `scripts/make_unix.sh aarch64 Debug`
### macOS Compilation
* Ensure `Xcode` and `CMake` are installed
* For `x86-64`:
* RelWithDebInfo: `scripts/make_unix.sh x86_64`
* Release: `scripts/make_unix.sh x86_64 Release`
* Debug: `scripts/make_unix.sh x86_64 Debug`
* For `aarch64`:
* RelWithDebInfo: `scripts/make_unix.sh aarch64` * RelWithDebInfo: `scripts/make_unix.sh aarch64`
* Release: `scripts/make_unix.sh aarch64 Release` * Release: `scripts/make_unix.sh aarch64 Release`
* Debug: `scripts/make_unix.sh aarch64 Debug` * Debug: `scripts/make_unix.sh aarch64 Debug`
@@ -415,13 +428,13 @@ in the `dist/` directory
* OFFICIAL: Cross-compiling on Linux * OFFICIAL: Cross-compiling on Linux
* Ensure `docker` is installed * Ensure `docker` is installed
* RelWithDebInfo: `scripts/make_win32.sh` * RelWithDebInfo: `scripts/make_win32.sh x86_64`
* Release: `scripts/make_win32.sh x86_64 Release` * Release: `scripts/make_win32.sh x86_64 Release`
* Debug: `scripts/make_win32.sh x86_64 Debug` * Debug: `scripts/make_win32.sh x86_64 Debug`
* UNOFFICIAL: Compiling on Windows * UNOFFICIAL: Compiling on Windows
* Ensure latest [MSYS2](https://www.msys2.org/) is installed * Ensure latest [MSYS2](https://www.msys2.org/) is installed
* RelWithDebInfo: `scripts\make_win32.cmd` * RelWithDebInfo: `scripts\make_win32.cmd x86_64`
* Release: `scripts\make_win32.cmd x86_64 Release` * Release: `scripts\make_win32.cmd x86_64 Release`
* Debug: `scripts\make_win32.cmd x86_64 Debug` * Debug: `scripts\make_win32.cmd x86_64 Debug`