# NoBullShit-cloud
A personal cloud without bullshit
## Prerequisites
nbscloud requires `java>=18`
## Install
### systemd service
### `deploy.sh`
## Config
To adjust the default configuration create the file `~/.config/nbscloud/application.properties`. It allows overwriting
properties from every configuration file of nbscloud. To get a full list of existing properties look at the following
files:
|File|Description|
|----|-----------|
|[application.properties](./web-container/src/main/resources/config/application.properties)|Main config file providing general app properties|
|[shared-application.properties](./web-container-config/src/main/resources/config/shared-application.properties)|Properties shared by all apps|
|[files-application.properties](./files/src/main/resources/config/files-application.properties)|Config file for the files app|
|[dashboard-application.properties](./dashboard/src/main/resources/config/dashboard-application.properties)|Config file for the dashboard app|
## Apache httpd config
It is advised to not expose NoBullShit-cloud directly - instead a proxy server like Apache httpd should be used to shield access.
The following config example can be used a blueprint:
```
# CSS, favicon and fonts need to be accesible without auth
# for e.g. the password protected share feature
# If the password protected share feature is not used
# the locations can be omitted to prevent an information leak
# In fact, they can also be ommitted if the password protected
# share feature _is_ used, but then the password entry page
# will not be styled. Pick your poison.
ProxyPass http://localhost:PORT/nbscloud
ProxyPassReverse /nbscloud
allow from all
satisfy any
ProxyPass http://localhost:PORT/nbscloud
ProxyPassReverse /nbscloud
allow from all
satisfy any
ProxyPass http://localhost:PORT/nbscloud
ProxyPassReverse /nbscloud
allow from all
satisfy any
# If shares should not be accessible to unknown clients
# this (and the Location directives above) can be omitted
ProxyPass http://localhost:PORT/nbscloud
ProxyPassReverse /nbscloud
allow from all
satisfy any
ProxyPass http://localhost:PORT/nbscloud
ProxyPassReverse /nbscloud
Require all granted
AuthName "YOUR AUTH"
AuthType Basic
AuthUserFile /var/www/html/.htpasswd
Require valid-user
```