Requirements
Pre-installed Linux-based distro with a webserver, PHP8 and MySQL Server installed.
You will need to create a new, empty database for this system.
Additional software required:
Instructions
Checkout our repo in the location where you want to host the files:
git clone "https://github.com/MKaterbarg/Booklib.git" .
Install composer packages with:
php composer.phar install
Add the appropriate webserver configuration to your webserver. Please point your document root not to the base directory, but to the "public" subdirectory of our system.
Rename the .env.example file to .env and edit the required values. Make sure you update the following values:
Execute the initialization of the database using the following commands:
mv .env.example .env php artisan key:generate php artisan migrate php artisan db:seed
This will actually create the database tables, set basic settings and add a default user.
Add the cron scheduler to you /etc/crontab file. This cron should run every minute, as the application itself will manage when which command should run. Please add as:
* * * * * root php <path> artisan schedule:run
Due to a security policy in ImageMagick, you may need to update the security policy in /etc/ImageMagick-7/policy.xml. Just before </policymap> tag add:
<policy domain="coder" rights="read | write" pattern="PDF" />
Once this is done, you may login to the system using the URL you specified in your webserver configuration. Login using the initial login details:
Make sure to update this as soon as possible using the top-right settings icon/menu
Add your first library using the top right menu. Make sure the www-data user has read permissions on the directories you're adding.