Jump to content

Recommended Posts

Posted (edited)

https://github.com/alanneverland/flibgolite-keenetic-aarch64/tree/master

FLibGoLite-Al — OPDS-сервер, который запустится даже на вашем Keenetic (aarch64)

FLibGoLite-Al — это оптимизированный форк оригинального проекта, специально адаптированный для стабильной работы на роутерах Keenetic и других встраиваемых системах с ограниченными ресурсами.

Внимание: Данный форк не совместим с оригинальным проектом на уровне конфигов, локализации и БД! Внимание: Для запуска на роутерах Keenetic обязательно читайте раздел "Установка на Keenetic"!

Оригинальный проект и полная документация:

Возможности

  • Рекурсивное сканирование всех вложенных каталогов.
  • Слежение за файловой системой: физически удаленные файлы автоматически удаляются из БД, а новые — индексируются.
  • Обработка форматов: fb2, fb2.zip, fb3, epub, prc, mobi, azw, azw3, pdf (для формата PDF характерна крайне плохая поддержка чтения метаданных).
  • Чтение серий: извлекаются все серии из fb2, epub (в том числе calibre:series) и fb3.
  • Прекрасная, унаследованная от оригинала, каталогизация по жанрам.
  • Отслеживание новых поступлений по авторам, жанрам, сериям и языкам.
  • Режим папок: если вы не доверяете средствам каталогизации, можно сформировать удобную вам систему папок в основном каталоге сканирования, и библиотека будет отдавать книги с учетом их расположения в файловой системе.
  • Фильтрация по жанрам: позволяет отсеивать лишнее при сканировании. Если вам нужны только фантастика или детективы — не обязательно хранить в БД и отдавать клиентам остальные книги. Примечание: использование имеет смысл, только если ваша библиотека состоит из файлов fb2/fb3. В других поддерживаемых форматах жанры, как правило, не прописываются или представляют собой отсебятину.
  • Фильтрация по языкам: аналогичный отсев при сканировании. Если вам нужны только книги на русском — остальные будут проигнорированы. Примечание: актуально только для форматов fb2/fb3/epub/mobi. Определение языка в файлах PDF весьма условно.
  • Управление ресурсами: внедрена система семафоров для ограничения использования CPU и RAM во время сканирования книг, генерации обложек и конвертации файлов.
  • Оптимизация БД: улучшена производительность и конфигурация SQLite для плавной обработки огромных библиотек (сотни тысяч книг) на маломощном оборудовании.
  • Переработка локализации: выдача книг теперь не зависит от языка интерфейса, что обеспечивает единообразную навигацию в различных OPDS-клиентах.
  • Высокая скорость работы: сканирование библиотеки из ~700 тыс. книг занимает около 2 часов на роутере Keenetic 1012

    Установка на Keenetic

    Для работы требуется корректно настроенная среда Entware на вашем роутере.

  • Скачайте архив flibgolite-al-keenetic.tar и скрипт автозапуска S99flibgolite.
  • Скопируйте flibgolite-al-keenetic.tar в директорию /opt/bin/ на вашем роутере.
  • Распакуйте архив (это извлечет исполняемый файл и файл конфигурации):
    tar -xpvf /opt/bin/flibgolite-al-keenetic.tar -C /opt/
     
  • В качестве меры предосторожности явно задайте права на выполнение для извлеченного бинарного файла:
    chmod +x /opt/bin/flibgolite
     
  • Откройте извлеченный конфигурационный файл (/opt/bin/config/config-al.yml), найдите строку STOCK: в разделе library: и введите точный путь к вашей папке с книгами.

    Пример: STOCK: "/tmp/mnt/YOUR_DISK_ID/Books"

  • Скопируйте скрипт автозапуска S99flibgolite в директорию /opt/etc/init.d/.
  • Задайте права на выполнение для скрипта автозапуска:
    chmod +x /opt/etc/init.d/S99flibgolite
     
  • Запустите сервис:
    /opt/etc/init.d/S99flibgolite start
     
  • Подождите 60 секунд и убедитесь, что процесс успешно запущен, выполнив команду:
    ps | grep flibgolite
     
  • В приложении вашей читалки настройте новый OPDS-каталог (сервер), используя следующий адрес: http://192.168.1.1:8087/opds

    Примечание: Замените 192.168.1.1 на фактический IP-адрес вашего роутера, если он отличается.

  • Сканирование начнется примерно через 60 секунд. Как только индексация завершится, ваша библиотека будет готова к использованию.


    Совместимость и системные требования

  • Протестировано на: Keenetic KN-1012
  • Проверенные клиенты: AlReaderX, FBReader, Cool Reader.
  • Важное замечание: Для стабильной работы при индексации больших библиотек настоятельно рекомендуется создать SWAP-раздел на накопителе с Entware!

flibgolite-al-keenetic.tar S99flibgolite

Edited by alanneverland
  • Upvote 1
  • 2 months later...
Posted

К сожалению проблема в том, что modernc.org/sqlite, которая используется в коде, доступна только под aarch64. Варианта под mips и под mipsel - увы, нет. Переход же на mattn/go-sqlite3 (CGO) я не осилю, слишком там много танцев с бубном со сборкой

Posted

если у вас библиотека на пару тысяч книг, то да, жалко. Если как и у меня - зеркало одной известной библиотеки с ~700к книг, то не жалко. 1910 с ней не справится ни по памяти, ни по usb2. Собственно я 3810 на 1012 из-за этого и поменял :)

  • Upvote 1
Posted

Если у Вас постоянно включен ПК или NAS, а библиотека это известные раздачи с содержащие inpx файлы, то можно попробовать альтернативу inpx-web (fork). Сейчас на Synology разворачиваю. Вдруг кому будет полезно.

  • Thanks 1

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

This site uses cookies. By clicking "I accept" or continuing to browse the site, you authorize their use in accordance with the Privacy Policy.