aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: 9cbd7d167dc16f06cdd65378ada8f11fed806148 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# cargohold

cargohold lets you distribute and receive files on your own terms.
Create private links that let other people upload files to you, or send them a link
that lets them download or view the files you want them to have.

## Installation

* Install nginx and uwsgi
* Create a directory where cargohold will store the uploaded files
* Set the directory's owner to the user you want uwsgi to run the application under
* Edit `backend/config.py` to match your setup
* Edit `configs/nginx.config` to match your setup
	* Note that the `client_max_body_size` will limit the maximum size of a single uploaded file
* Install `configs/nginx.config` to `/etc/nginx/sites-enabled`
* Edit `configs/uwsgi.ini` to match your setup
	* Note that the `limit-post` option will limit the maximum size of a single uploaded file
* Install `configs/uwsgi.ini` to `/etc/uwsgi/apps-enabled/cargohold.ini`

TBD: Extend this.

## Usage

TBD

## Interface

cargohold integrates somewhat tightly with nginx using the X-Accel-Redirect mechanism.
Other httpds may provide a similar mechanism, which will need to be called out to in the
`playout()` routine in `main.py`.