Commit 62da641
committed
fix: Remove global LD_LIBRARY_PATH to restore SSL certificate verification for email
Fixes SSL certificate verification failure when sending books to Kindle via email.
Users were getting "[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed:
unable to get local issuer certificate (_ssl.c:1032)" errors after recent updates.
Root Cause:
Commit 8638224 (feat: FTS management) added global LD_LIBRARY_PATH=/app/calibre/lib
environment variable to force Calibre binaries to use their bundled libraries for
FTS functionality. However, setting this globally caused Python's SSL/TLS module to
load SSL libraries from Calibre's bundle instead of system OpenSSL, breaking cert
verification for SMTP connections.
Changes:
- Removed `ENV LD_LIBRARY_PATH=/app/calibre/lib` from Dockerfile
- Removed `export LD_LIBRARY_PATH=/app/calibre/lib` from s6 service run script
- Kept per-subprocess LD_LIBRARY_PATH settings in cps/cwa_functions.py (lines 2083,
2151, 2198, 2274) which correctly isolate the variable to calibredb calls only
Impact:
- Email/SMTP functionality restored with proper SSL verification
- FTS and all Calibre tool operations continue working correctly via subprocess env
- No side effects on other functionality
Reported by user on Discord who found issue present in dev branch but not in
dev-auto-hardcover image (commit 297968d).1 parent bc86850 commit 62da641
2 files changed
Lines changed: 0 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
286 | 286 | | |
287 | 287 | | |
288 | 288 | | |
289 | | - | |
290 | 289 | | |
291 | 290 | | |
292 | 291 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
6 | 5 | | |
7 | 6 | | |
8 | 7 | | |
| |||
0 commit comments