Build1 distinct publisher2 min readPublished
The renderer was archived in January 2023 and last packaged in May 2023 for Debian 12 and Ubuntu 22.04. The bill arrives on your next base-image bump, disguised as three unrelated bugs.
The Engineer · Build desk
Compiled by The EngineerSomething wrong?How this is made
The three failure modes in Vitalii's writeup read like three separate bugs, which is why they burn afternoons. On Alpine, the shell reports `not found` for a file `ls` can see. The kernel is refusing to load the binary's interpreter: official builds link glibc, Alpine ships musl, and `/lib64/ld-linux-x86-64.so.2` is not there [4]. A single `ldd` on the binary shows it [4]. Alpine dropped its own wkhtmltopdf package years ago and gcompat shims are a lottery with a binary this large, so the roughly 50 MB the slim base saves is the entire reason anyone is in that hole [5].
The libssl1.1 wall is a different animal, and mostly self-inflicted. The Dockerfiles in circulation fetch `wkhtmltox_0.12.6-1`, which links OpenSSL 1.1, while Debian 12 and Ubuntu 22.04 onward ship OpenSSL 3 and no longer carry libssl1.1 in the archives [6]. The final release, 0.12.6.1-3, was built against OpenSSL 3 for bookworm and jammy [7]. So the most common error is a stale version string in a copied recipe rather than the archival itself [15]. That release also ships amd64 and arm64 for both distros, which is why `dpkg --print-architecture` in the download URL is enough to cover both [8].
What no recipe fixes is the ceiling. Upstream packaging outlived the read-only repository by about four months [17], and the newest targets it ever produced are Debian 12 and Ubuntu 22.04 [14]. Those debs may keep installing on newer bases for as long as the dependency chain happens to line up, and the author's read is that every base-image bump from here is a gamble against a binary from 2023 [16].
Two recurring costs sit underneath. Fonts: the image arrives with almost none, wkhtmltopdf resolves them through fontconfig, and missing glyphs render as tofu, so any non-Latin text needs re-checking after each base change [9]. Security: CVE-2022-35583, an SSRF through rendered content, is permanently unfixed, which is why the guide says to keep untrusted HTML away from it and run the container with no metadata endpoint access and restricted egress [10].
The exits are listed by someone who sells one of them. Vitalii discloses that he founded PDFik, a hosted URL and HTML-to-PDF API [13], and still puts headless Chromium (Puppeteer or Playwright's `page.pdf()`, or Gotenberg as a ready-made sidecar) and WeasyPrint for print-CSS documents that run no JavaScript ahead of the hosted category [12]. The ordering is the useful part: the options that cost nothing come first, and the pitch is narrowed to teams whose actual lock-in is the CLI flags, which PDFik's compatibility mode accepts [13].
Ranked by verification strength, evidence, and original report placement.
The wkhtmltopdf project was archived in January 2023 and its repository is read-only.
The last official wkhtmltopdf packages were built in May 2023, release 0.12.6.1-3, whose newest targets are Debian 12 (bookworm) and Ubuntu 22.04 (jammy).
Container users commonly hit one of three errors: 'not found' for the binary on Alpine, 'wkhtmltox : Depends: libssl1.1 but it is not installable', and 'E: Unable to locate package wkhtmltopdf' on Ubuntu 24.04 / Debian 13; all three share the same root cause.
On Alpine the 'not found' message comes from the kernel failing to load the binary's interpreter: official wkhtmltopdf builds link glibc, Alpine ships musl, and the referenced dynamic loader /lib64/ld-linux-x86-64.so.2 does not exist; ldd on the binary shows it immediately.
Widely-copied Dockerfiles fetch wkhtmltox_0.12.6-1 debs, which link OpenSSL 1.1, while Debian 12, Ubuntu 22.04 and later ship OpenSSL 3 and removed libssl1.1 from the archives, making the dependency unresolvable.
The fix is the last release, 0.12.6.1-3, which was built against OpenSSL 3 for bookworm and jammy.
Follow any of these and your For You feed starts watching them — no settings page required.
Evidence-backed comparisons of source perspectives and observed adoption signals. Read the methodology
Which Builder, Operator, and Investor concerns the observed source mix emphasized—not a truth score.
Evidence, demonstrated adoption, hype gap, incentives, and confidence are assessed independently, each on its own current evidence. How these are measured.
Specific and checkable, but single-source and self-verified
The technical core is unusually concrete for a single item: named error strings, a named missing dynamic loader, a named OpenSSL transition, an exact final release number with architecture coverage, a named CVE, and an explicit 'last verified 2026-08-27' footer — all independently checkable against public package archives. What holds the score down is that every one of these facts comes from one dev.to post written by an interested vendor, with no second publisher, package index citation, or scanner output in the cluster, and the judgement-heavy parts (gcompat unreliability, base-bump risk, replacement shortlist) carry no supporting data.
Artifact-level signals only: supply ended, install base unquantified
Adoption evidence in the cluster is entirely artifact-level: an archived repository, one final release with two distro targets and two architectures, package absence on Alpine, noble and trixie, and an unfixed CVE. Those establish that forward supply has stopped and that the still-working install path is narrow. No usage disclosure, download count, image-pull statistic, or named deployment appears, and the claim that the broken Dockerfile is 'widely copied' is asserted rather than measured, so the size of the affected install base cannot be scored.
Verifiable core, mildly overstated urgency around a product pitch
The factual spine — archived January 2023, last packaged May 2023, no builds beyond bookworm/jammy, unfixed CVE — is stated at roughly the strength the supplied evidence supports, and the article is candid about caveats (hosted options are wrong for air-gapped setups, golden files need re-approval). The overstatement is modest and structural: the framing that every base-image bump is 'a gamble' and the moment to migrate is presented as urgency while the same paragraph concedes the debs may keep installing, and the migration conclusion terminates in the author's own CLI whose flag-coverage claims are unverified. That tilts the story slightly overstated rather than materially inflated.
Strong, plainly disclosed commercial interest
The author opens by disclosing he founded PDFik, a hosted URL/HTML-to-PDF API, repeats the disclosure inside the alternatives list, and closes with a runnable command for his own CLI image — a direct commercial stake in readers concluding that wkhtmltopdf must be replaced. The incentive is high but handled transparently: it is flagged up front, competing non-commercial options (Puppeteer/Playwright, Gotenberg, WeasyPrint) are recommended alongside, and the drawbacks of hosted rendering are stated. The score reflects strength of interest, not concealment.
Moderate: precise claims, one interested source
Confidence is capped by cluster shape rather than by vagueness. One publisher, one item, one commercially interested author, and no independent corroboration means every fact rests on a single account; but the claims are specific, dated, mechanism-level, and cheap for a reader to verify against public package archives and CVE records, and the article separates verified status from opinion. That combination supports moderate confidence in the abandonment and packaging facts and low confidence in the forward-looking and product claims.
build
wkhtmltopdf has been read-only since 2023, and your scanner will only accept migration1 distinct publisher
build
Cloudflare's agent browser makes a cost argument and skips the cost1 distinct publisher
build
Anthropic's Browser Use hands Claude element refs, and hands you the browser1 distinct publisher
product
OpenFactory promises prompt-to-ISO golden images. One alpha review is not evidence.1 distinct publisher
Distinct publishers with included, body-backed reporting in this cluster.
dev.to
1 article · August 27, 2026