clojure-uk

dharrigan 2026-01-23T09:13:10.293109Z

Good Morning!

dharrigan 2026-01-23T11:14:56.273139Z

Does anyone have any good recommendations for HTML to PDF utility for running on Debian (Trixie)?

dharrigan 2026-01-23T11:15:07.114009Z

This one: https://wkhtmltopdf.org/, is no longer active.

seancorfield 2026-01-23T14:05:42.437279Z

That's what I would have suggested. Didn't know it had become inactive:confused:

seancorfield 2026-01-23T14:08:51.992649Z

And... morning! The forecast is warming us of "snowmageddon" - 7-12" on Sunday. But at least we should be some way north of the ice storms...😬

maleghast 2026-01-23T14:09:00.945509Z

@dharrigan - Is this to run headless and programatically or for your desktop / workstation setup?

dharrigan 2026-01-23T14:23:02.470639Z

headless, within a container, for generating PDFs from Hiccup (to HTML)

dharrigan 2026-01-23T14:23:26.447339Z

I'm currently using wkhtmltopdf, but looking around for similar supported tech

maleghast 2026-01-23T14:25:04.773619Z

OK, I will go back and look at my notes, but to be transparent I have not had to solve this problem for a while, so I am going to assume that I am behind the curve. I am curious to see if anyone else who is more current comes up with interesting solutions / tech and even if not I am curious to see what you end up on, as this is something that comes around again and again in my life... 🙂

👍 1
maleghast 2026-01-23T14:32:17.908679Z

I have nothing more current than wkhtmltopdf to offer... I had a little Google sess; have you seen this: https://apitemplate.io/blog/html-to-pdf-on-linux-best-commands-and-tools/ ignore the cloud service that they are selling, and just focus on the using Chromium in headless mode on the command line..? I think that this is what I would do, FWIW, but clearly YMMV

maleghast 2026-01-23T14:33:47.932629Z

There may be mileage in using Weasyprint, possibly via a Clojure / Python bridge...? if you don't want to use Python (could relate)

dharrigan 2026-01-23T14:34:34.492229Z

Thanks, will have a looksee 🙂

maleghast 2026-01-23T14:09:09.889059Z

Morning All 🏴󠁧󠁢󠁳󠁣󠁴󠁿

seancorfield 2026-01-23T14:10:25.368999Z

In case anyone here is not in the #events channel...

dharrigan 2026-01-23T14:25:05.712169Z

As another experiment I'm trying out, I'm deploying customised JREs, built from running jdeps and jlink over the generated uberjars.

dharrigan 2026-01-23T14:25:09.652899Z

So far, seems okay 🙂

🤯 1
dharrigan 2026-01-23T14:26:05.993339Z

Oh, and another thing I'm doing atm is writing "modern" java, with all those vars, streaming and records 😉

dharrigan 2026-01-23T14:26:23.736379Z

to try writing a little internal stress tester for websockets 🙂

seancorfield 2026-01-23T15:41:21.064909Z

@dharrigan Is your employer a Java shop then? Or is this "just for fun"?

dharrigan 2026-01-23T15:43:20.212319Z

Just for fun. I wanted to challenge myself to write modern java, given that it's been years since I wrote any java

seancorfield 2026-01-23T16:13:24.120309Z

Modern Java isn't bad. It's a huge improvement over legacy Java.

dharrigan 2026-01-23T16:15:32.220389Z

Totally agree, it's actually quite terse!

dharrigan 2026-01-23T16:15:50.928709Z

I used to code in Kotlin before Clojure, so it was interesting to see how Java has moved on

seancorfield 2026-01-23T16:17:14.001849Z

Ah, I quite like Kotlin but never did much more than learning the basics... and write this: https://github.com/seancorfield/boot-kotlinc

seancorfield 2026-01-23T16:18:06.988899Z

Hahaha... last update 2017-11-28... over eight years ago!

dharrigan 2026-01-23T16:20:24.465639Z

🙂

dharrigan 2026-01-23T16:20:46.566249Z

I wrote this too: https://github.com/dharrigan/cotlin

dharrigan 2026-01-23T16:20:55.158019Z

haven't visited it in 5 years, no idea if it still works or not

dharrigan 2026-01-23T16:21:06.030339Z

(probably safe on the clojure side, not so sure about the kotlin side)

seancorfield 2026-01-23T16:53:22.502559Z

Yup:

(!2017)-> clojure -T:build run
WARNING: A restricted method in java.lang.System has been called
WARNING: java.lang.System::load has been called by net.rubygrapefruit.platform.internal.NativeLibraryLoader in an unnamed module (file:/home/sean/.gradle/wrapper/dists/gradle-7.2-bin/2dnblmf4td7x66yl1d74lt32g/gradle-7.2/lib/native-platform-0.22-milestone-21.jar)
WARNING: Use --enable-native-access=ALL-UNNAMED to avoid a warning for callers in this module
WARNING: Restricted methods will be blocked in a future release unless native access is enabled


BUILD SUCCESSFUL in 4s
7 actionable tasks: 7 executed

Running task for: run
Hello Clojure World! 25.0.1
Hello Kotlin World! 25.0.1
Good Boy Biscuit
Woof Woof!
HOW MUCH IS THAT DOGGY IN THE WINDOW?
nil

seancorfield 2026-01-23T16:53:59.116489Z

(I added a println of java.version since initially it failed to build with JDK 26 EA)

dharrigan 2026-01-23T16:54:04.175809Z

w00t 😉

dharrigan 2026-01-23T16:54:22.039609Z

We can check again in another 5 years 🙂

thomas 2026-01-23T07:51:43.546709Z

mogge