Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

3 customizable Calibre-Web URL's: http://box/books, http://box/libros, http://box/livres #1865

Merged
merged 13 commits into from
Jul 14, 2019
6 changes: 4 additions & 2 deletions roles/calibre-web/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,11 @@
# calibreweb_install: False
# calibreweb_enabled: False

# calibreweb_port: 8083 # PORT VARIABLE HAS NO EFFECT (as of January 2019)
# calibreweb_port: 8083 # PORT VARIABLE HAS NO EFFECT (as of January 2019)

# calibreweb_url: /books # FOR SHORT URL http://box/books -- add {box/libros, box/livres, box/livros, box/liv} etc?
# calibreweb_url1: /books # For SHORT URL http://box/books (English)
# calibreweb_url2: /libros # For SHORT URL http://box/libros (Spanish)
# calibreweb_url3: /livres # For SHORT URL http://box/livres (French)

# calibreweb_home: "{{ content_base }}/calibre-web" # /library/calibre-web for books, metadata.db & config/app.db

Expand Down
14 changes: 9 additions & 5 deletions roles/calibre-web/tasks/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@
dest: "{{ calibreweb_venv_path }}/vendor"
state: link

- name: Install unit file /etc/systemd/system/calibre-web.service & /etc/apache2/sites-available/calibre-web.conf for http://box{{ calibreweb_url }}, from templates
- name: Install unit file /etc/systemd/system/calibre-web.service & /etc/apache2/sites-available/calibre-web.conf for http://box{{ calibreweb_url1 }}, http://box{{ calibreweb_url2 }}, http://box{{ calibreweb_url3 }} from templates
template:
src: "{{ item.src }}"
dest: "{{ item.dest }}"
Expand Down Expand Up @@ -110,7 +110,7 @@

# Default: http://box/books
# SEE ALSO: https://github.com/janeczku/calibre-web/wiki/Setup-Reverse-Proxy
- name: Enable http://box{{ calibreweb_url }} with Apache
- name: Enable http://box{{ calibreweb_url1 }}, http://box{{ calibreweb_url2 }}, http://box{{ calibreweb_url3 }} with Apache
command: a2ensite calibre-web.conf
when: calibreweb_enabled | bool

Expand All @@ -126,7 +126,7 @@
state: stopped
when: not calibreweb_enabled

- name: Disable http://box{{ calibreweb_url }} with Apache
- name: Disable http://box{{ calibreweb_url1 }}, http://box{{ calibreweb_url2 }}, http://box{{ calibreweb_url3 }} with Apache
command: a2dissite calibre-web.conf
when: not calibreweb_enabled

Expand All @@ -150,8 +150,12 @@
value: calibre-web
- option: description
value: '"calibre-web is a web app providing a clean interface for browsing, reading and downloading e-books."'
- option: calibreweb_url
value: "{{ calibreweb_url }}"
- option: calibreweb_url1
value: "{{ calibreweb_url1 }}"
- option: calibreweb_url2
value: "{{ calibreweb_url2 }}"
- option: calibreweb_url3
value: "{{ calibreweb_url3 }}"
- option: calibreweb_path
value: "{{ calibreweb_venv_path }}"
- option: calibreweb_home
Expand Down
13 changes: 9 additions & 4 deletions roles/calibre-web/templates/calibre-web.conf.j2
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,22 @@
# Unnec when "{{ calibreweb_url }}" is added to Proxy* directive(s) further below
# <Location "{{ calibreweb_url }}" >

RequestHeader set X-SCRIPT-NAME {{ calibreweb_url }}
# 2019-07-14: this line remains necessary (page barely renders without it!)
RequestHeader set X-SCRIPT-NAME {{ calibreweb_url1 }}

# Appears unnec:
RequestHeader set X-SCHEME http
#RequestHeader set X-SCHEME http

ProxyPass {{ calibreweb_url }} http://localhost:{{ calibreweb_port }}/
ProxyPass {{ calibreweb_url1 }} http://localhost:{{ calibreweb_port }}/
ProxyPass {{ calibreweb_url2 }} http://localhost:{{ calibreweb_port }}/
ProxyPass {{ calibreweb_url3 }} http://localhost:{{ calibreweb_port }}/

# Possibly unnec? (ProxyPassReverse rewrites internal links, that come back
# from Apache proxy. Whereas e.g. kiwix.conf doesn't need this, as kiwix itself
# prefixes URLs, thanks to --urlRootLocation=/kiwix/ in its systemd file.)
ProxyPassReverse {{ calibreweb_url }} http://localhost:{{ calibreweb_port }}/
ProxyPassReverse {{ calibreweb_url1 }} http://localhost:{{ calibreweb_port }}/
ProxyPassReverse {{ calibreweb_url2 }} http://localhost:{{ calibreweb_port }}/
ProxyPassReverse {{ calibreweb_url3 }} http://localhost:{{ calibreweb_port }}/

# </Location>

Expand Down
2 changes: 1 addition & 1 deletion roles/calibre/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
# http://box:8080 & http://box:8080/mobile WORK FOR NOW, but short/mnemonic
# URL's like http://box/calibre DON'T YET WORK -- BOOKS RARELY DISPLAY:
# calibre_web_path: calibre # NEEDS WORK: https://github.com/iiab/iiab/issues/529
# Avoid URL collisions with calibreweb_url !
# Avoid URL collisions w/ calibreweb_url1, calibreweb_url2, calibreweb_url3 below!

# All above are set in: github.com/iiab/iiab/blob/master/vars/default_vars.yml
# If nec, change them by editing /etc/iiab/local_vars.yml prior to installing!
Expand Down
8 changes: 5 additions & 3 deletions vars/default_vars.yml
Original file line number Diff line number Diff line change
Expand Up @@ -486,17 +486,19 @@ calibre_port: 8080
# http://box:8080 & http://box:8080/mobile WORK FOR NOW, but short/mnemonic
# URL's like http://box/calibre DON'T YET WORK -- BOOKS RARELY DISPLAY:
calibre_web_path: calibre # NEEDS WORK: https://github.com/iiab/iiab/issues/529
# Avoid URL collisions with calibreweb_url: below!
# Avoid URL collisions w/ calibreweb_url1, calibreweb_url2, calibreweb_url3 below!

# WARNING: Calibre-Web (below) depends on Calibre's own /usr/bin/ebook-convert
# program, so we recommend you also install Calibre (above!)

# Calibre-Web alternative to Calibre, offers a clean/modern UX
calibreweb_install: False
calibreweb_enabled: False
calibreweb_port: 8083 # PORT VARIABLE HAS NO EFFECT (as of January 2019)
calibreweb_port: 8083 # PORT VARIABLE HAS NO EFFECT (as of January 2019)
# http://box/books works. Add {box/libros, box/livres, box/livros, box/liv} etc?
calibreweb_url: /books
calibreweb_url1: /books # For SHORT URL http://box/books (English)
calibreweb_url2: /libros # For SHORT URL http://box/libros (Spanish)
calibreweb_url3: /livres # For SHORT URL http://box/livres (French)
calibreweb_home: "{{ content_base }}/calibre-web" # /library/calibre-web

# Internet Archive Decentralized Web - create your own offline version box:4244
Expand Down
8 changes: 5 additions & 3 deletions vars/local_vars_big.yml
Original file line number Diff line number Diff line change
Expand Up @@ -306,17 +306,19 @@ calibre_enabled: False
calibre_port: 8080
# Change calibre to XYZ to add your own mnemonic URL like: http://box/XYZ
calibre_web_path: calibre #NEEDS WORK: https://github.com/iiab/iiab/issues/529
# Avoid collisions with calibreweb_url: below!
# Avoid URL collisions w/ calibreweb_url1, calibreweb_url2, calibreweb_url3 below!

# WARNING: Calibre-Web (below) depends on Calibre's own /usr/bin/ebook-convert
# program, so we recommend you also install Calibre (above!)

# Calibre-Web alternative to Calibre, offers a clean/modern UX
calibreweb_install: True
calibreweb_enabled: True
calibreweb_port: 8083 # PORT VARIABLE HAS NO EFFECT (as of January 2019)
calibreweb_port: 8083 # PORT VARIABLE HAS NO EFFECT (as of January 2019)
# http://box/books works. Add {box/libros, box/livres, box/livros, box/liv} etc?
calibreweb_url: /books
calibreweb_url1: /books # For SHORT URL http://box/books (English)
calibreweb_url2: /libros # For SHORT URL http://box/libros (Spanish)
calibreweb_url3: /livres # For SHORT URL http://box/livres (French)
calibreweb_home: "{{ content_base }}/calibre-web" # /library/calibre-web

# Internet Archive Decentralized Web - create your own offline version box:4244
Expand Down
8 changes: 5 additions & 3 deletions vars/local_vars_medium.yml
Original file line number Diff line number Diff line change
Expand Up @@ -306,17 +306,19 @@ calibre_enabled: False
calibre_port: 8080
# Change calibre to XYZ to add your own mnemonic URL like: http://box/XYZ
calibre_web_path: calibre #NEEDS WORK: https://github.com/iiab/iiab/issues/529
# Avoid collisions with calibreweb_url: below!
# Avoid URL collisions w/ calibreweb_url1, calibreweb_url2, calibreweb_url3 below!

# WARNING: Calibre-Web (below) depends on Calibre's own /usr/bin/ebook-convert
# program, so we recommend you also install Calibre (above!)

# Calibre-Web alternative to Calibre, offers a clean/modern UX
calibreweb_install: True
calibreweb_enabled: True
calibreweb_port: 8083 # PORT VARIABLE HAS NO EFFECT (as of January 2019)
calibreweb_port: 8083 # PORT VARIABLE HAS NO EFFECT (as of January 2019)
# http://box/books works. Add {box/libros, box/livres, box/livros, box/liv} etc?
calibreweb_url: /books
calibreweb_url1: /books # For SHORT URL http://box/books (English)
calibreweb_url2: /libros # For SHORT URL http://box/libros (Spanish)
calibreweb_url3: /livres # For SHORT URL http://box/livres (French)
calibreweb_home: "{{ content_base }}/calibre-web" # /library/calibre-web

# Internet Archive Decentralized Web - create your own offline version box:4244
Expand Down
8 changes: 5 additions & 3 deletions vars/local_vars_min.yml
Original file line number Diff line number Diff line change
Expand Up @@ -306,17 +306,19 @@ calibre_enabled: False
calibre_port: 8080
# Change calibre to XYZ to add your own mnemonic URL like: http://box/XYZ
calibre_web_path: calibre #NEEDS WORK: https://github.com/iiab/iiab/issues/529
# Avoid collisions with calibreweb_url: below!
# Avoid URL collisions w/ calibreweb_url1, calibreweb_url2, calibreweb_url3 below!

# WARNING: Calibre-Web (below) depends on Calibre's own /usr/bin/ebook-convert
# program, so we recommend you also install Calibre (above!)

# Calibre-Web alternative to Calibre, offers a clean/modern UX
calibreweb_install: False
calibreweb_enabled: False
calibreweb_port: 8083 # PORT VARIABLE HAS NO EFFECT (as of January 2019)
calibreweb_port: 8083 # PORT VARIABLE HAS NO EFFECT (as of January 2019)
# http://box/books works. Add {box/libros, box/livres, box/livros, box/liv} etc?
calibreweb_url: /books
calibreweb_url1: /books # For SHORT URL http://box/books (English)
calibreweb_url2: /libros # For SHORT URL http://box/libros (Spanish)
calibreweb_url3: /livres # For SHORT URL http://box/livres (French)
calibreweb_home: "{{ content_base }}/calibre-web" # /library/calibre-web

# Internet Archive Decentralized Web - create your own offline version box:4244
Expand Down