- Using NGINX for indexing remote files.
- Security relies on HTTPS.
- Using cache.
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 --conf furumi.yml
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;
}
}
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.
[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