Hi everyone,

Here is a status update on the effort to package the modern React-based
Mantine UI for Prometheus.

I recently spent some time attempting to build the new frontend offline using
Debian's native toolchain alongside a vendored NPM source tree. While it seems
to be possible to vendor the java script dependencies, I ran into a hard
blocker regarding `vite` (https://vite.dev/).

The Prometheus UI now relies on Vite 6.x. Starting with version 6, Vite
introduced a hard runtime dependency on `rolldown` (a Rust-based bundler,
https://rolldown.rs/).
Because `rolldown` is a massive Rust project that is not yet packaged in
Debian, and DFSG prohibits shipping the pre-compiled `rolldown.node` binary
blobs in the source package, it is currently impossible to build the modern
UI from source.

To unblock the modern UI in the long term, I have filed an RFP for
`node-vite` (Bug #1141177) and by extension, `rust-rolldown` to kickstart
the packaging of this toolchain in Debian.

However, Prometheus urgently needs an upgrade to 3.5 to address the
unpatched CVEs (CVE-2026-42151, CVE-2026-42154, Bug #1135999) and the
Go 1.26 FTBFS regression (Bugs #1137403, #1114942). Waiting for Vite
and Rolldown to be packaged is not a viable
option.

For the time being, the modern React UI build in the Debian packaging will
be completely disabled. Let's disable the UI completely for now. Maybe we can
either bring the old UI back or preferably get vite and mantine packaged.

I can work on an upload to experimental. I'd really appreciate thoughts and
opinions from the previous prometheus package uploaders and contributors.

-rt

Reply via email to