ID: 827f05913af5d6be7371f395e1ba9d6d2fa4ca12
50 lines
—
2K —
View raw
| # freepost
This is the code powering [freepost](https://freepo.st), a free
discussion board that allows users to post text and links that other
users can read and comment.
# Development
## Setup Python3 virtual environment
cd freepost-directory
python3 -m venv venv (if this doesn't work, try `virtualenv -p /usr/bin/python3 venv`)
source venv/bin/activate
pip3 install -r requirements.txt
## Run test server
source venv/bin/activate
python3 -m bottle --debug --reload --bind 127.0.0.1:8000 freepost
## Build stylesheets
Build CSS files
stylus --watch --compress --disable-cache --out freepost/static/css/ freepost/static/stylus/freepost.styl
# Deployment
- Build CSS stylesheets (see `Development` above)
- Copy all files to your `public_html` folder
- Make sure `settings.yaml` has restricted permissions, for instance `0600`
- If the SQLite database is located in the same HTML folder, make sure this too has
restricted access
- Rename `.htaccess.wsgi` or `.htaccess.cgi` to `.htaccess` (if you use CGI or WSGI)
- Change settings in `settings.yaml` if needed
- Create Python virtual environment
For tuxfamily only: run `newgrp freepost` before creating the virtenv, for quota reasons
- Create a new empty SQLite database: `cat database.schema.sql | sqlite3 database.sqlite`
Everything should be setup and working. Make sure your CGI or WSGI server is
configured correctly.
## License
freepost is [free software](https://www.gnu.org/philosophy/free-sw.html) licensed
as GNU Affero General Public License, either version 3 or (at your option) any
later version.
`monkey` logo art by iko, released as CC0.
|