As LRR is a server app first and foremost, its setup is a bit more complex than your usual Desktop application. However, a lot of work as been done behind the scenes to make it easy!
Look at the methods below for something that fits your OS and usage.
Homebrew allows you to quickly setup LRR on Unix systems without relying on containers or modifying your preinstalled system libaries. The package manager is mostly designed for macOS, but it can also be used to install the server on Linux machines. 🐧
This method works on 64-bit editions of Windows 10 only.
Versions under v1809 (October 2018 Update) will probably not work properly. v1803 might work, but you're wading uncharted waters.
I provide a dedicated installer for Windows machines as of 0.6.0, complete with a GUI and autostart.
Taking a page from sysadmin books, you can easily install LRR as a container with Docker. They're lightweight, easy to update, and automatically built/tested. I recommend this for NAS setups!
Installing from source is a more involved procedure, but it does put you in full control and able to hack up the app's files as you wish.
Ready-to-install packages provided by voluntary maintainers or by a linux distribution itself.
At this point the only solutions I have to give you are basically glorified VMs.
You can either download the Legacy Docker Toolbox and follow the Docker tutorial linked above, or try Vagrant. I provide no support for either of these methods.
A common post-install setup is to make requests to the app transit through a gateway server such as Apache or nginx. If you do so, please note that archive uploads through LRR will likely not work out of the box due to maximum sizes on uploads those servers can enforce. The example below is for nginx:
http {client_max_body_size 0; <----------------------- This line here}server {listen 80;server_name lanraragi.[REDACTED].net;return 301 https://$host$request_uri;}server {listen 443 ssl;index index.php index.html index.htm;server_name lanraragi.[REDACTED].net;client_max_body_size 0; <----------------------- And this line here# Cert Stuff Omittedlocation / {proxy_pass http://0.0.0.0:3000;proxy_http_version 1.1;<----- The two following lines are needed for batch tagger support with SSL ----->proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection $connection_upgrade;}}