User:Simon/Trim4/prototypes/calibre service file

From XPUB & Lens-Based wiki

You can easily create a service to run calibre at boot on a modern (systemd) based Linux system. Just create the file /etc/systemd/system/calibre.service with the contents shown below:

   [Unit]
   Description=Calibre.
   After=syslog.target network.target
   
   [Service]
   Type=simple
   User=pi
   Group=pi
   WorkingDirectory=/home/pi/calibre-web
   ExecStart=python cps.py
   Restart=always
   
   [Install]
   WantedBy=multi-user.target

The User and group should be the same ones that own the files in the calibre library directory. Note that it is generally not a good idea to run the server as root. Also change the path to the calibre library directory to suit your system.

Now run:

sudo systemctl start calibre-server

to start the server. Check its status with:

sudo systemctl status calibre-server

To make it start at boot, run:

sudo systemctl enable calibre-server

Note

The calibre server does not need a running X server, but it does need the X libraries installed as some components it uses link against them.

The calibre server also supports systemd socket activation, so you can use that, if needed, as well.