pve-installer/debian/control
Christoph Heiss 332deca65f assistant: add support for splitting ISO into (i)PXE-compatible files
Adds a new flag and option to the `prepare-iso` subcommand; `--pxe`
and `--pxe-loader` respectively.

When enabled with `--pxe`, instead of just creating the usual
auto-installation-capable ISO, additionally `vmlinuz` and `initrd.img`
will be extracted from the ISO and prepared as necessary, which can be
used in combination with the ISO to PXE-boot our installer.

`--pxe-loader` can optionally be used to instruct the assistant to also
generate a configuration file for the given loader; currently only iPXE
(`--pxe-loader ipxe`) is supported.

The iPXE configuration gives a good overlook how the resulting files
must be used, especially what kernel commandline flags must be given to
boot successfully.

Tl;dr is: The `vmlinuz` is directly booted and given the `initrd.img` as
ramdisk, the ISO file must be overlaid as `/proxmox.iso`. This will
cause init to mount & load the rest of the installer from there.

A current limitation is that this approach requires loading the entire
ISO into memory and unpacking the installer root-fs on top of that.
In turn, this requires at least ~6GiB of available memory.

Signed-off-by: Christoph Heiss <c.heiss@proxmox.com>
Link: https://lore.proxmox.com/20260331163353.1955212-1-c.heiss@proxmox.com
 [TL: s/PRODUCT_LONG/PRODUCTLONG/; s/a existing/an existing/]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2026-03-31 22:00:51 +02:00

81 lines
2.7 KiB
Plaintext

Source: proxmox-installer
Section: perl
Priority: optional
Maintainer: Proxmox Support Team <support@proxmox.com>
Build-Depends: cargo:native,
debhelper-compat (= 12),
geoip-bin <!nocheck>,
iproute2,
iso-codes,
libglib2.0-0t64 (>= 2.75.3~~),
libgtk3-perl,
libpve-common-perl,
librsvg2-bin,
librust-anyhow-1-dev,
librust-cursive-0.21+crossterm-backend-dev,
librust-flate2-1.1-dev,
librust-glob-0.3-dev,
librust-hex-0.4-dev,
librust-native-tls-dev,
librust-pico-args-0.5-dev,
librust-pretty-assertions-1.4-dev,
librust-proxmox-sys+crypt-dev,
librust-regex-1+default-dev (>= 1.7~~),
librust-rustls-0.23-dev,
librust-rustls-native-certs-dev,
librust-serde-1+default-dev,
librust-serde-json-1+default-dev,
librust-serde-plain-1+default-dev,
librust-sha2-0.10-dev,
librust-toml-0.8-dev,
librust-ureq-3-dev,
librust-zstd-0.13-dev,
libtest-mockmodule-perl,
patchelf,
perl,
rustc:native,
shellcheck,
tzdata,
Standards-Version: 4.5.1
Homepage: https://www.proxmox.com
Package: proxmox-installer
Architecture: any
Depends: chrony,
e2fsprogs,
geoip-bin,
iproute2,
libgtk3-perl,
libgtk3-webkit2-perl,
libjson-perl,
proxmox-kernel-helper,
squashfs-tools,
util-linux-extra,
${misc:Depends},
${perl:Depends},
${shlibs:Depends},
Breaks: pbs-installer (<< 7~), pve-installer (<< 7~),
Replaces: pbs-installer (<< 7~), pve-installer (<< 7~),
Description: Installer for Proxmox Projects
This package contains the graphical installer for:
* Proxmox VE
* Proxmox Mail Gateway
* Proxmox Backup Server
* Proxmox Datacenter Manager
Package: proxmox-auto-install-assistant
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends},
Recommends: xorriso,
Description: Assistant to help with automated installations
Provides a helper that can assist with creating an answer file for a automated
installation of a Proxmox project, and preparing a official ISO image to use
this answer file.
Package: proxmox-first-boot
Architecture: any
Depends: ${misc:Depends},
Description: Service which runs on the first system boot for additional setup
Provides a service which will run on the first boot if the a script was
configured through the auto-installer.