Releases: donge/clickfs
Release list
clickfs v0.4.2
Install
curl -fsSL https://donge.github.io/clickfs/install.sh | shOr with cargo:
cargo install clickfs
# or, prebuilt:
cargo binstall clickfsAssets
Each platform has a .tar.gz containing the clickfs binary, plus a .sha256 checksum file.
| platform | asset |
|---|---|
| Linux x86_64 | clickfs-v0.4.2-linux-x86_64.tar.gz |
| Linux aarch64 | clickfs-v0.4.2-linux-aarch64.tar.gz |
| macOS arm64 | clickfs-v0.4.2-macos-arm64.tar.gz |
clickfs v0.4.1
Install
curl -fsSL https://donge.github.io/clickfs/install.sh | shOr with cargo:
cargo install clickfs
# or, prebuilt:
cargo binstall clickfsAssets
Each platform has a .tar.gz containing the clickfs binary, plus a .sha256 checksum file.
| platform | asset |
|---|---|
| Linux x86_64 | clickfs-v0.4.1-linux-x86_64.tar.gz |
| Linux aarch64 | clickfs-v0.4.1-linux-aarch64.tar.gz |
| macOS arm64 | clickfs-v0.4.1-macos-arm64.tar.gz |
clickfs v0.4.0
Install
curl -fsSL https://donge.github.io/clickfs/install.sh | shOr with cargo:
cargo install clickfs
# or, prebuilt:
cargo binstall clickfsAssets
Each platform has a .tar.gz containing the clickfs binary, plus a .sha256 checksum file.
| platform | asset |
|---|---|
| Linux x86_64 | clickfs-v0.4.0-linux-x86_64.tar.gz |
| Linux aarch64 | clickfs-v0.4.0-linux-aarch64.tar.gz |
| macOS arm64 | clickfs-v0.4.0-macos-arm64.tar.gz |
clickfs v0.3.2
Install
curl -fsSL https://donge.github.io/clickfs/install.sh | shOr with cargo:
cargo install clickfs
# or, prebuilt:
cargo binstall clickfsAssets
Each platform has a .tar.gz containing the clickfs binary, plus a .sha256 checksum file.
| platform | asset |
|---|---|
| Linux x86_64 | clickfs-v0.3.2-linux-x86_64.tar.gz |
| Linux aarch64 | clickfs-v0.3.2-linux-aarch64.tar.gz |
| macOS arm64 | clickfs-v0.3.2-macos-arm64.tar.gz |
clickfs v0.3.1
Install
curl -fsSL https://donge.github.io/clickfs/install.sh | shOr with cargo:
cargo install clickfs
# or, prebuilt:
cargo binstall clickfsAssets
Each platform has a .tar.gz containing the clickfs binary, plus a .sha256 checksum file.
| platform | asset |
|---|---|
| Linux x86_64 | clickfs-v0.3.1-linux-x86_64.tar.gz |
| Linux aarch64 | clickfs-v0.3.1-linux-aarch64.tar.gz |
| macOS arm64 | clickfs-v0.3.1-macos-arm64.tar.gz |
clickfs v0.3.0
Install
curl -fsSL https://donge.github.io/clickfs/install.sh | shOr with cargo:
cargo install clickfs
# or, prebuilt:
cargo binstall clickfsAssets
Each platform has a .tar.gz containing the clickfs binary, plus a .sha256 checksum file.
| platform | asset |
|---|---|
| Linux x86_64 | clickfs-v0.3.0-linux-x86_64.tar.gz |
| Linux aarch64 | clickfs-v0.3.0-linux-aarch64.tar.gz |
| macOS arm64 | clickfs-v0.3.0-macos-arm64.tar.gz |
clickfs v0.2.0
Install
curl -fsSL https://donge.github.io/clickfs/install.sh | shOr with cargo:
cargo install clickfs
# or, prebuilt:
cargo binstall clickfsAssets
Each platform has a .tar.gz containing the clickfs binary, plus a .sha256 checksum file.
| platform | asset |
|---|---|
| Linux x86_64 | clickfs-v0.2.0-linux-x86_64.tar.gz |
| Linux aarch64 | clickfs-v0.2.0-linux-aarch64.tar.gz |
| macOS arm64 | clickfs-v0.2.0-macos-arm64.tar.gz |
clickfs v0.1.1
Install
curl -fsSL https://donge.github.io/clickfs/install.sh | shOr with cargo:
cargo install clickfs
# or, prebuilt:
cargo binstall clickfsAssets
Each platform has a .tar.gz containing the clickfs binary, plus a .sha256 checksum file.
| platform | asset |
|---|---|
| Linux x86_64 | clickfs-v0.1.1-linux-x86_64.tar.gz |
| Linux aarch64 | clickfs-v0.1.1-linux-aarch64.tar.gz |
| macOS arm64 | clickfs-v0.1.1-macos-arm64.tar.gz |
clickfs v0.1.0
First public release of clickfs — mount a ClickHouse server as a
read-only POSIX filesystem so the shell is your client:
clickfs mount http://localhost:8123 /mnt/ch
ls /mnt/ch/db/default/
cat /mnt/ch/db/default/events/all.tsv | head -n 100
wc -l /mnt/ch/db/default/events/2024-01-15.tsv
cat /mnt/ch/db/default/events/.schemaWhat's in v0.1.0
- Path layout:
/db/<database>/<table>/{.schema, all.tsv, <partition_id>.tsv} - Streaming reads via async→sync mpsc bridge; strict-sequential per fd
FOPEN_DIRECT_IOon data files (no kernel readahead surprises)- Read-only by design: every mutating syscall returns
EROFS - HTTP-only ClickHouse driver with rustls
- Clean unmount on
SIGTERM/SIGINT - Cancel via dropped HTTP connection + server
max_execution_time SHOW CREATE TABLEin.schema; partition listing fromsystem.parts
Quality
- 11 unit tests + 26 end-to-end cases (
tests/e2e.sh) - CI:
rustfmt+clippy -D warnings+ tests on Linux and macOS - 0 compiler warnings, 0 clippy warnings on stable Rust
- Validated end-to-end against ClickHouse 25.3 on macOS+macFUSE
(seeTEST_REPORT.md)
Install
From source (any platform)
cargo install clickfsYou need libfuse / libfuse3 (Linux) or macFUSE (macOS).
Pre-built Linux binary (x86_64)
Download clickfs-v0.1.0-x86_64-unknown-linux-gnu.tar.gz below.
SHA-256 in SHA256SUMS.
tar xzf clickfs-v0.1.0-x86_64-unknown-linux-gnu.tar.gz
sudo install -m 0755 clickfs /usr/local/bin/clickfs
clickfs --helpKnown limitations
- HTTP only (no native TCP)
- Read-only (no INSERT)
- Strict-sequential reads —
tail,mmap, random-seek editors will fail withEIO - No directory listing cache (one query per
ls) - Single ClickHouse server (no cluster routing)
See the README and
docs/ for the full design
and the website for a live demo.