mirror of
https://github.com/bookorbit/bookorbit.git
synced 2026-11-03 08:21:39 -06:00
feat(book-requests): add automated request fulfillment
Let users request books, route approvals, search configured sources, and import fulfilled releases through the Book Dock. Include scoped permissions, automation, download-client integrations, plugin support, requester visibility, and one consolidated schema migration. Closes #248 Ref #1115
This commit is contained in:
@@ -26,6 +26,19 @@ APP_DATA_PATH=../local/data
|
||||
# Set this to the server-visible folder where users should create libraries.
|
||||
# LIBRARY_BROWSE_ROOT=../local/books
|
||||
|
||||
# Staging area a fulfilled book request is filed through. Defaults to <APP_DATA_PATH>/book-dock.
|
||||
#
|
||||
# Put this inside the same mount as your download client's completed directory. A finished
|
||||
# download is hardlinked into the dock so the torrent keeps seeding from the same bytes, and two
|
||||
# separate bind mounts of one filesystem still refuse the link even though they report the same
|
||||
# device: under Docker or Kubernetes that means every fulfilment silently copies and uses the
|
||||
# space twice. Linux fs.protected_hardlinks=1 also requires the BookOrbit process user to own the
|
||||
# completed source file or be able to write it. Run BookOrbit and the download client with the same
|
||||
# UID, or use a shared group that grants BookOrbit write access to completed files. The per-mapping
|
||||
# test under Settings > System > Requests creates a BookOrbit-owned file, so it validates the mount
|
||||
# and paths but cannot prove that a differently-owned completed file is linkable.
|
||||
# BOOK_DOCK_PATH=../local/data/book-dock
|
||||
|
||||
# File write scheduler and concurrency tuning (optional)
|
||||
# FILE_WRITE_DEBOUNCE_MS=3000
|
||||
# FILE_WRITE_MAX_CONCURRENT_WRITES=2
|
||||
@@ -63,6 +76,12 @@ APP_URL=http://localhost:5173
|
||||
# Generate with: openssl rand -hex 32
|
||||
# MIGRATION_ENCRYPTION_KEY=
|
||||
|
||||
# Book request encryption key (required before a download client or indexer can be saved).
|
||||
# Unlike the two keys above, credentials are refused rather than stored in the clear when this
|
||||
# is unset. 64-char hex string for AES-256.
|
||||
# Generate with: openssl rand -hex 32
|
||||
# BOOK_REQUEST_ENCRYPTION_KEY=
|
||||
|
||||
# Server-side root containing migration backup files (optional).
|
||||
# Use a dedicated read-only mount. Backup paths submitted through the migration API
|
||||
# must be absolute and resolve inside this root.
|
||||
|
||||
Reference in New Issue
Block a user