In order to build the project, you need to install:
- build-essentials
- make
- rsync
- cargo & rustup with a recent nightly toolchain
- compass (install via rubygems)
- diesel-cli
It is recommended to install diesel-cli via cargo:
cargo install diesel_cli --force --no-default-features --features sqlite
As mentioned, the server requires a nightly toolchain. Configure it globally, or set a local override using:
cd flink/server
rustup override set nightly
The database and file directory are set via environment variables:
export DATABASE_URL="db.sqlite3"
export FLINK_DIR="/path/to/uploads"
When all build-dependencies are installed, run:
$ git clone https://github.com/4nickel/flink
$ cd flink
$ make
$ make service
Once the service is running, navigate to http://localhost:8000
.
You have to add users manually using a command-line interface - flink doesn't provide an admin interface. You can find the flink
binary in server/target/release
.
$ flink user add $username $password
$ flink user del $username
Rocket doesn't support SSL yet, so you'll have to run this upstream of an appropriate reverse-proxy server like nginx or apache. If you don't know what that means please make sure you do before running this service in the wild.