public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
From: Thomas Lamprecht <t.lamprecht@proxmox.com>
To: feng liu <dahema@me.com>, pve-devel@lists.proxmox.com
Subject: Re: [RFC] installer web console for headless installs (native text mode + browser front)
Date: Mon, 12 Oct 2026 18:54:08 +0200	[thread overview]
Message-ID: <ebe484ef-45ce-4d81-8f11-595fcc0f9c3f@proxmox.com> (raw)
In-Reply-To: <F2BA5B99-CCFB-42A3-AB88-C6F8E5D8EA1C@me.com>

Hello,

Thx for sending an RFC upfront over just "dumping" some patches here. See my answer below.

Am 12.10.26 um 17:58 schrieb feng liu:
> headless installs currently mean a serial TUI or a pre-authored answer.toml. For one-off boxes both loops feel heavy: no keyboard or monitor on the machine, and writing TOML before touching hardware.
> 
> Proposal: one new installer boot entry - "Install Proxmox VE (web console)" - that boots the native text-mode installer exactly as the serial entry does, and additionally serves the installer's own question flow over plain HTTP on the LAN. Implementation-wise this is a third Proxmox::UI:: backend ("Web") beside the existing Gtk3 and StdIO ones: same questions, same validations, same progress stream, same auto-installer path downstream. One flow, three faces - no parallel wizard to maintain.
> 
> Access is gated by a one-time pairing code printed at boot: a session code on the console/serial, plus an optional machine code drawn by the bootloader from the SMBIOS UUID, so a machine with no screen or serial cable attached can still be paired from a phone. The target machine keeps showing the native text-mode screens throughout.
> 
> Full proposal text (motivation, code mapping to Proxmox::UI::Base / unconfigured.sh, honest security notes, open questions):
> 
> https://github.com/yeungtuzi/pve-installer/tree/web-console-proposal/web-console
> 
> Concept mockups attached - boot menu, pairing page, setup form, progress page and the target machine's native text screen. They are concept art in the corporate palette, not UI code.
> 
> If there is interest I will follow up with an RFC patch series (small HTTP daemon in the initrd + Proxmox::UI::Web). In the meantime I would value the list's opinion - in particular whether the maintained surface of a web front is worth it versus extending the existing auto-install answer tooling.

Note that you can already use PDM for configuring installation answer files via a web UI and then serving these to any Proxmox installation.
This which uses the HTTP-answer-file-source mode to server a answer file. It's also planned to make this interactively, as the system information the installer sends to the answer-file source endpoint is complete for a fully installer, there isn't really anything else required and allows to keep the installer lean and avoids additional attack surface there.
We thought about doing so in the past, but held it off due to it not unlocking a fundamental new method. If we probably would still effectively use this approach (get system info for rendering the installer wizard/UI and let it send a answer file back) over another Proxmox::UI:: impl, as it would require less dependencies.
The PDM/answer-file approach also has trust and auth solved already, as one needs to prepare the ISO, so ISO can validate answer-source endpoint and vice versa, which a pure web based interface would need to solve again.
Also note that this can be a stand-alone tool, and you could already leverage this and create your own independent tooling/wizard in the front that doesn't runs on the installer then if the PDM use case doesn't fit your needs, just needs to prepare the ISO once to point it at your endpoint. Might be still simpler to reused PDM.
If we re-evaluate the directly web UI inside the installer (could also be just to replace Gtk some day), we would in any case (re-)use the rust/yew based proxmox web UI components from PDM's installer integration - where applicable over some other web UI framework.

best regards,
Thomas




      reply	other threads:[~2026-10-12 16:54 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-12 10:57 [RFC] installer web console for headless installs (native text mode + browser front) feng liu
2026-10-12 16:54 ` Thomas Lamprecht [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ebe484ef-45ce-4d81-8f11-595fcc0f9c3f@proxmox.com \
    --to=t.lamprecht@proxmox.com \
    --cc=dahema@me.com \
    --cc=pve-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal