/
/
/
Ansible role that provisions my storage server.
1FROM lscr.io/linuxserver/lazylibrarian:latest
2
3# minimal system libs for Calibre on Ubuntu 24.04 (Noble)
4RUN apt-get update && \
5 DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
6 libegl1 libopengl0 libxcb-cursor0 libxkbcommon-x11-0 libxcomposite1 libxrandr2 \
7 libnss3 libasound2t64 xdg-utils curl xz-utils ca-certificates && \
8 update-ca-certificates && rm -rf /var/lib/apt/lists/*
9
10# install calibre
11RUN curl -fsSL https://download.calibre-ebook.com/linux-installer.sh | sh /dev/stdin
12
13# EITHER: let Calibre create its own wrappers in /usr/bin
14RUN /opt/calibre/calibre_postinstall || true
15
16# OR: provide our own simple wrapper (robust in containers)
17RUN printf '%s\n' '#!/bin/sh' \
18 'export LD_LIBRARY_PATH=/opt/calibre/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}' \
19 'export QT_PLUGIN_PATH=/opt/calibre/plugins' \
20 'export QT_QPA_PLATFORM=offscreen' \
21 'exec /opt/calibre/bin/calibredb "$@"' \
22 > /usr/local/bin/calibredb && chmod +x /usr/local/bin/calibredb
23