aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md67
1 files changed, 67 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..f09ebe8
--- /dev/null
+++ b/README.md
@@ -0,0 +1,67 @@
+# README for FUSS
+FUSS is a File Upload and Storage Service.
+Think [0x0](https://github.com/mia-0/0x0) but without the url shortening. This is intended for private use, such as behind password authentication on the web server level.
+
+## Overview
+FUSS runs a web front-end with a little landing page, and some summaries, and you can upload files to the web app. You can download files from it. This project is a demo of the original author's web app skills, and is designed to be relatively bare so you can modify or theme or improve it as you see fit.
+
+## License
+GPL 3.0
+
+## How to use
+Fuss is a wsgi application. You need some basic python3 packages, and then configure the two config files, which are self-explanatory.
+
+* fuss.conf
+* fuss.wsgi.ini
+
+After configuring the files, you can run:
+
+ /usr/sbin/fuss.bin
+
+This short script runs uwsgi within xvfb-run, which is necessary if you want to use mimetype icons (loaded through Gtk). If you omit icons, you can omit the xvfb-run part.
+
+You can run this with the included [init script](extras/fuss.init) if you prefer to have a system service.
+
+### Running on certain distros
+After installing the package, the admin might need to run a helper script that will install the necessary pip packages. Known situations include:
+* CentOS 7: python-flask, python-magic
+
+Run script:
+
+ sudo /usr/libexec/fuss/pip-helper.sh
+
+Add the parameter "PyGObject" if you compiled the rpm with icon support (which pulls in a lot of dependencies).
+
+On Fedora, selinux prevents running /var/www/fuss/fuss.bin by systemd.
+
+## Dependencies
+* python3-flask
+* python3-magic
+* For icon support (optional), which just add mimetype icons to the html view of files.
+ * Xvfb-run
+ * PyGObject
+ * python3-gi
+
+## Alternatives
+[0x0](https://github.com/mia-0/0x0) or my fork of it, [hex-zero](https://gitlab.com/bgstack15/hex-zero)
+
+## References
+### Overall
+Heavily inspired by [0x0](https://github.com/mia-0/0x0) or my fork of it, [hex-zero](https://gitlab.com/bgstack15/hex-zero)
+### Specific code snippets
+* https://code-boxx.com/simple-drag-and-drop-file-upload/
+* entire flask series at https://pythonise.com/series/learning-flask/flask-uploading-files
+* hex_zero.py from https://gitlab.com/bgstack15/hex-zero
+* https://stackoverflow.com/a/65433574/3569534
+* https://werkzeug.palletsprojects.com/en/1.0.x/middleware/proxy_fix/
+* https://uwsgi-docs.readthedocs.io/en/latest/Logging.html
+* Reset stream when reading file from request: https://stackoverflow.com/a/26294982/3569534
+* https://salsa.debian.org/sssd-team/sssd/-/blob/experimental/debian/sssd-common.postinst
+* /home/var/lib/dpkg/info/postfix.prerm
+* bgscripts.spec
+* https://docs.fedoraproject.org/en-US/packaging-guidelines/UsersAndGroups/
+* https://www.digitalocean.com/community/tutorials/css-collapsible
+* viewport in html: https://stackoverflow.com/a/30709473/3569534
+* https://www.thesitewizard.com/css/mobile-friendly-responsive-design.shtml
+* https://www.dotnettricks.com/learn/stylesheet/css-to-force-long-text-and-urls-to-wrap-on-all-browser
+* From https://stackoverflow.com/a/14226807/3569534
bgstack15