Merge pull request #25 from th3r00t/development

Update Readme Options
This commit is contained in:
th3r00t
2019-12-19 22:10:14 -05:00
committed by GitHub
6 changed files with 92 additions and 0 deletions

2
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1,2 @@
github: th3r00t
ko_fi: RaelonMasters

0
.github/ISSUE_TEMPLATE.md vendored Normal file
View File

0
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

85
.github/SUPPORT.md vendored Normal file
View File

@@ -0,0 +1,85 @@
## Getting Help With **pyShelf**
If you have issues during initial setup please make sure you have a working Web Server (the pyShelf team recommends [NGINX](https://nginx.com), and that you have correctly setup your webserver to forward cgi requests to [uWSGI](https://uwsgi-docs.readthedocs.io/en/latest/Download.html). Additionaly uWSGI must be setup to serve the application. A sample NGINX config (**pyshelf_nginx.conf**), and (**uwsgi.ini**) are included in the project root.
**<p align=center>Ensure your Webserver has appropriate access to your install directory!</p>**
### pyshelf_nginx.conf
```
# the upstream component nginx needs to connect to
upstream django {
# server unix:///path/to/your/mysite/mysite.sock; # for a file socket
server 127.0.0.1:8001; # for a web port socket (we'll use this first)
}
```
* Set `server 127.0.0.1:8001`, this must match the socket decleration in your uwsgi config **uwsgi.ini**.
```
# configuration of the server
server {
# the port your site will be served on
listen 8000;
# the domain name it will serve for
server_name 127.0.0.1; # substitute your machine's IP address or FQDN
charset utf-8;
# max upload size
client_max_body_size 75M; # adjust to taste
```
* Set `listen 8000;` to the port you want to serve the frontend on
* Set `server_name 127.0.0.1;` to the ip address, or FQDN of your server
```
# Django media
location /media {
alias /home/raelon/Projects/pyShelf/frontend/interface/media; # your Django project's media files - amend as required
}
location /static {
alias /home/raelon/Projects/pyShelf/frontend/interface/static; # your Django project's static files - amend as required
}
location /books {
internal;
alias /home/raelon/Projects/pyShelf/books;
# Absolute location of your ebook files
}
# Finally, send all non-media requests to the Django server.
location / {
uwsgi_pass django;
include /home/raelon/Projects/pyShelf/uwsgi_params; # the uwsgi_params file you installed
}
}
```
* Adjust all the `alias /home/raelon/Project/pyShelf` entries to match your install directory ensure you **do not change** the `/frontend/interface/media` or `/frontend/interface/static` portions
* Adjust `alias /home/raelon/Projects/pyShelf/books` to match the location of your books
### uwsgi.ini
```
[uwsgi]
# chdir = {Full path to pyShelf/frontend}
chdir=/home/raelon/Projects/pyShelf/src
module=frontend.wsgi
master=True
pidfile=/tmp/pyShelf.pid
vacuum=True
socket=127.0.0.1:8001
```
* Set `chdir=/home/raelon/Projects/pyshelf` leaving `/src` **intact** to match your install directory
* Set `socket=127.0.0.1:8001` to match the entry as defined above in `upstream django{`
Now you may restart your webserver to apply the changes, and then either run `uwsgi -i uwsgi.ini` fron the project root, or restart your uwsgi service.
### Import your books
* Run `./importBooks` in your project root
### Access pyShelf's frontend
* Browse to `http://localhost:8000` _substitute ip:port as defined in your webserver_ and you should be greeted by the pyShelf frontend.
### Still Stuck?
Please contact us using any of the options below for support. Please be prepared with your nginx error logs.
### Via Email
* Support Email: [support@pyshelf.com](mailto://support@pyshelf.com)
### Live Support Options
* Discord: [https://discord.gg/H9TbNJS](https://discord.gg/H9TbNJS)
* IRC: [irc.freenode.net/pyShelf](irc://freenode.net/pyshelf)

5
README.md vendored
View File

@@ -2,6 +2,8 @@
<p align="center"><b>Terminal based ebook server. Open source & Lightweight.</b></p>
[![ko-fi](https://www.ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/D1D51ALZH)
Having used Calibre for hosting my eBook collection in the past, I found myself frustrated having to install X on my server, or manage my library externally, Thus I have decided to spin up my own.
## Current Features
@@ -18,6 +20,9 @@ Having used Calibre for hosting my eBook collection in the past, I found myself
* In addition to the above steps you must now also make the requisite changes in config.json to reflect the connection to your postgresql server
<img src="https://raw.githubusercontent.com/th3r00t/pyShelf/development/src/interface/static/img/pyShelf_frontend_0_1_0.png" alt="Server Frontend" align="center" />
## Further Installation & Support Information
* [SUPPORT.md](https://github.com/th3r00t/pyShelf/blob/development/.github/SUPPORT.md)
## 0.3.0 Patch Notes.
### "And now we search."