Mir ist noch eingefallen, mit LibreOffice geht das ohne grafische Umgebung:
libreoffice --headless --convert-to pdf input.html
Zusätzlich kann man unoconv verwenden, dass zwar auf eine LO-Installation zurückgreift, aber meiner Meinung nach etwas sauberere Ergebnisse liefert.
Damit man nicht alle benötigten und empfohlenen Pakete installiert, müsste man versuchen die Installation beider Programme weitesgehend zu reduzieren. Muss man mal durchprobieren, was man wirklich für eine Headless-Installation benötigt:
apt-cache show libreoffice apt-get -s --no-install-recommends install libreoffice apt-cache show libreoffice-core apt-get -s --no-install-recommends install libreoffice-core apt-cache show unoconv apt-get -s --no-install-recommends install unoconv
Andere Alternative wäre ggf. xhtml2pdf.
Wo ich gerade noch mal auf der Projektseite von wkhtmltopdf 🇬🇧 schaue, sollte das Ding eigentlich doch headless laufen:
> wkhtmltopdf and wkhtmltoimage are open source (LGPLv3) command line tools to render HTML into PDF and various image formats using the Qt WebKit rendering engine. These run entirely "headless" and do not require a display or display service.
Eventuell braucht es lediglich eine aktuellere Version als in den Paketquellen vorhanden.
Und dann schauste unter Downloads und da steht, dass die Linux Build alle X brauchen … Screw it!
Ansonsten stände für mich noch die Frage im Raum, ob es unbedingt eine HTML-Eingabedatei sein muss? Kann man das vielleicht auch anders lösen?