# 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` directive 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`.