"In my opinion Calibre is a marvelous tool but is too big and has too much dependencies to be used for its content server. That's the main reason why I coded this OPDS server. I needed a simple tool to be installed on a small server (Seagate Dockstar in my case).
I initially thought of Calibre2OPDS but as it generate static file no search was possible.
Later I added an simple HTML catalog that should be usable on my Kobo.
So COPS's main advantages are :
# COPS doesn't work with php8
# Install php7
opkg install php7 php7-cgi php7-cli
opkg install php7-mod-dom php7-mod-gd php7-mod-json php7-mod-pdo php7-mod-pdo-sqlite php7-mod-sqlite3 php7-mod-xml php7-mod-xmlreader php7-mod-xmlwriter php7-mod-zip php7-mod-mbstring php7-mod-openssl php7-mod-phar php7-mod-intl php7-mod-ctype
opkg install php7-mod-filter php7-mod-curl php7-mod-simplexml php7-mod-tokenizer
opkg install git-http unzip
opkg install zoneinfo-core zoneinfo-southamerica zoneinfo-northamerica
ln -sf /usr/share/zoneinfo/Brazil/East /etc/localtime
git clone https://github.com/seblucas/cops.git
mv cops www2
# Composer download as stated on https://getcomposer.org/download/
# COPS demands fxp/composer-asset-plugin that doesn't work with composer 2.x
php-cli -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php-cli composer-setup.php --version=1.10.23
php-cli -r "unlink('composer-setup.php');"
# Composer installation as stated by seblucas
php-cli composer.phar global require "fxp/composer-asset-plugin:~1.1"
php-cli composer.phar install --no-dev --optimize-autoloader
# It'll be needed to set uhttp specially index_page index_file interpreter
# It'll be needed to set config_local.php and config_default.php