Files
furumi/README.md
House of Vanity 3f8ec11f95 Update README.md
2020-06-05 23:21:01 +03:00

1.8 KiB

Furumi

Build and publish

Furumi is a FUSE filesystem working over NGINX JSON autoindex. It's written in Rust stable.

Features

  • Using NGINX for indexing remote files.
  • Security relies on HTTPS.
  • Using cache.

Usage

Here is a binary release or compile it yourself. Anyway mind about dependencies listed below. Also there is a systemd unit file for managing service. Place it into ~/.config/systemd/user/furumi.service

# Compile binary
$ cargo build --release

# Create config
cat > furumi.ylm <<EOF
---
server: https://server
mountpoint: /mnt
# Basic auth creds
username: user
password: pass

# Run
$ ./target/release/furumi --config furumi.yml

NGINX config

Example of nginx config:

server {
    listen 80;
    listen [::]:80;
    server_name music;

    root /storage/music;

    location / {
        autoindex on;
        autoindex_format json;
        try_files $uri $uri/ =404;
    }
}

Dependencies

FUSE must be installed to build and run furumi. (i.e. kernel driver and libraries. Some platforms may also require userland utils like fusermount). A default installation of FUSE is usually sufficient.

Linux

[FUSE for Linux][libfuse] is available in most Linux distributions and usually called fuse.

Install on Arch Linux:

sudo pacman -S fuse

Install on Debian based system:

sudo apt-get install fuse

Install on CentOS:

sudo yum install fuse

To build, FUSE libraries and headers are required. The package is usually called libfuse-dev or fuse-devel. Also pkg-config is required for locating libraries and headers.

sudo apt-get install libfuse-dev pkg-config
sudo yum install fuse-devel pkgconfig