Release notes
Upcoming coreos-installer 0.24.0 (unreleased)
Major changes:
Minor changes:
Internal changes:
Packaging changes:
coreos-installer 0.23.0 (2024-11-12)
Major changes:
- Add Fedora 42 signing key; drop Fedora 39 signing key
Internal changes:
- osmet: Use blkid to get partition information if udev is unavailable
Packaging changes:
- Drop Packit support for c9s packaging
coreos-installer 0.22.1 (2024-07-24)
Packaging changes:
- add downstream_package_name for each package in packit.yaml
coreos-installer 0.22.0 (2024-07-23)
Internal changes:
- rootmap: Fix support for LUKS on multipath
Packaging changes:
- Require Rust ≥ 1.75.0
- Update packit’s downstream targets to be
fedora-rawhide
- Add Packit support for c9s packaging
- Update container to Fedora 40
coreos-installer 0.21.0 (2024-02-22)
Major changes:
- Add Fedora 41 signing key; drop Fedora 38 signing key
- Switch alternative grub console config location to grub2/console.cfg
Internal changes:
- zipl: Directly pass kernel, initrd and kargs instead of BLS entry
Packaging changes:
- Update container to Fedora 39
coreos-installer 0.20.0 (2023-12-19)
Major changes:
- Support alternative grub2/30_console.cfg location for grub console configuration
Packaging changes:
- Fix Packit changelog entry generation
coreos-installer 0.19.0 (2023-12-11)
Major changes:
- install: Add z/VM Secure IPL support
Internal changes:
- rootmap/bind-boot: Support root devices using composefs
Packaging changes:
- Add Packit support for Fedora packaging
coreos-installer 0.18.0 (2023-08-24)
Major changes:
- iso: Support kargs modification on s390x by using
kargs.json
if present - Add Fedora 40 signing key; drop Fedora 37 signing key
Minor changes:
- install: Verify that Ignition config is valid JSON
- install: Add long help for several options
- download/install: Clarify help text for
--insecure
Internal changes:
- verify-unique-fs-label: Run
blkid
with a clean cache to avoid stale devices
Packaging changes:
- Require
clap
≥ 4.1 - Update container to Fedora 38
coreos-installer 0.17.0 (2023-03-10)
Major changes:
- Add Fedora 39 signing key; drop Fedora 36 signing key
- iso: Support Ignition embedding on s390x by using
igninfo.json
if present
Minor changes:
- customize: Support Ignition config spec 3.4.0
- customize: Avoid disabling ISO autologin when only changing live kargs
- customize: Warn when customized PXE image requires Ignition kargs
- install: Avoid network fetch timeout when low-level formatting ECKD DASD
Internal changes:
- verify-unique-fs-label: Use
-p
when callingblkid
to avoid stale cache
Packaging changes:
- Require Rust ≥ 1.66.0
- Require
base64
≥ 0.21.0 - Require
ignition-config
≥ 0.3.0 - Require
mbrman
≥ 0.5.0 (on s390x) - Require
nmstate
≥ 2.2.3 - Update container to Fedora 37
coreos-installer 0.16.1 (2022-09-19)
Packaging changes:
- Fix directory layout of vendor archive
coreos-installer 0.16.0 (2022-09-14)
Major changes:
- install: Add
--console
for configuring kernel and bootloader console - customize: Add
--dest-console
for configuring kernel and bootloader console - customize: Support configuring network with Nmstate via
--network-nmstate
- Support reading initrd images compressed with zstd
- Add Fedora 38 signing key; drop Fedora 35 signing key
Minor changes:
- install: Fail if
--save-partindex
specified on MBR disk, to avoid data loss - Detect truncated xz archives
- iso: Fix corrupt
extract minimal-iso
output when writing to stdout - Fix unlikely decompression error reading initrd
- iso: Detect incomplete ISO files
- Warn if console kargs could have used
--console
/--dest-console
instead - Add release notes to documentation
Internal changes:
- rootmap: Support devices with LUKS integrity protection enabled
- zipl: Deprecate
--kargs
in favor of new--append-karg
, which supports multiple instances - zipl: Support Secure Execution systems without LUKS for coreos-assembler
- zipl: Add
--append-file
for adding files to an SE image - zipl: Remove obsolete
--rootfs
- Only open BLS configs in write mode when modifying
Packaging changes:
- Require Rust ≥ 1.58.0
- Install example installer config file in
/usr/share/coreos-installer
- Add dependencies on
nmstate
,textwrap
, andzstd
crates - Add dependency on
libzstd
shared library - Support
serde_yaml
0.9 - Remove non-Linux dependencies from vendor archive
coreos-installer 0.15.0 (2022-06-17)
Major changes:
- Add support for Secure Execution on s390x
- install: Perform platform-specific console configuration when
--platform
is specified and the OS supports it
Minor changes:
- Makefile: Don’t build during
make install
; install rdcore only if it was built
Internal changes:
- Add
zipl
command to reconfigure bootloader on s390x
Packaging changes:
- Update container to Fedora 36
- Require
nix
≥ 0.24.0 - Remove all static libraries from vendor archive
coreos-installer 0.14.0 (2022-04-27)
Major changes:
- Add aarch64 support to container image
- Add generated manpages
Minor changes:
- Silence error from reporting commands like
iso ignition show
andpxe ignition unwrap
if output pipe is closed - docs: Document
dest-device
config file field - docs: Document
iso/pxe customize
commands - docs: Drop documentation of pre/post installation hooks in favor of
customize
commands
Internal changes:
- bind-boot: Fix EFI vendor directory detection
- verify-unique-fs-label: Use
blkid
instead oflsblk
to make filesystem label querying more reliable - Delete legacy aliases for
osmet
andminimal-iso
pack commands used by coreos-assembler
Packaging changes:
- Require Rust ≥ 1.56.0
- Migrate from
structopt
toclap
3 - Drop
openat-ext
dependency - Remove Windows binaries from vendor archive
coreos-installer 0.13.1 (2022-02-13)
Major changes:
- Add Fedora 37 signing key; drop Fedora 34 signing key
Minor changes:
- install: Drop support for
COREOS_INSTALLER_NO_MOUNT_NAMESPACE
- install: Eliminate partition table reread delay on busy block devices
Internal changes:
- Fix packing minimal ISO with empty files
- Move build-time packing commands to new
pack
subcommand - Move developer-related commands to new
dev
subcommand - Add
dev show initrd
anddev extract initrd
subcommands - verify-unique-fs-label: Add
--rereadpt
to reread partition tables first
Packaging changes:
- Disable LTO
- Disable debug symbols in container
- Require Rust ≥ 1.51.0
coreos-installer 0.12.0 (2021-12-17)
Major changes:
- Add high-level
iso customize
andpxe customize
subcommands for flexibly customizing a live image - install: Add
--config-file
to specify install options via a YAML config file - systemd: Automatically install if config files exist in
/etc/coreos/installer.d
- Add
iso network
andpxe network
subcommands to embed NetworkManager configs in an ISO or wrap them in an initrd
Minor changes:
- Add
iso reset
subcommand to reset an ISO image to pristine state - Differentiate
-h
and--help
.--help
will produce longer-form documentation, similar to a man page. Add long help toinstall
andiso/pxe customize
. - pxe: Have
ignition unwrap
read from stdin if no filename specified - pxe: Support
ignition unwrap
from concatenated initrds - systemd: Print deprecation warning on
coreos.inst=yes
- systemd: Print deprecation warning if
coreos.inst.install_dev
value omits/dev
- docs: Autogenerate subcommand pages from help text
- docs: Remove instructions for replacing
coreos-installer.service
, in favor ofinstaller.d
config files
Internal changes:
- Fix packing minimal ISO with hard-linked files
- bind-boot: Ignore ESPs not colocated with the boot filesystem
- rootmap: Properly handle linear RAID devices
Packaging changes:
- Add
base64
,ignition-config
,serde_with
, andserde_yaml
dependencies - Enable
structopt
wrap_help
feature
coreos-installer 0.11.0 (2021-11-18)
Major changes:
- Drop Fedora 33 signing key
- iso: Add
extract pxe
subcommand to extract PXE artifacts from ISO - iso: Add
extract minimal-iso
subcommand to extract netboot ISO image from ISO
Minor changes:
- download: Ignore
--decompress
for artifacts that are meant to be used compressed - download: Report the selected artifacts before starting download
- download/install: Avoid printing GPG verification result when we’re ignoring it
- install: Report automatically selected OS, architecture, platform when downloading install image
- install: Report if multiple filesystems are labeled
boot
- iso: Find Ignition embed area by directly parsing ISO filesystem
- iso: Find kargs embed areas by directly reading
kargs.json
from ISO, if available - Add
-a
short option for--architecture
- Enable optimization for xz code in dev builds to speed up testing
- Fix build on s390x
- docs: Avoid using privileged container for
download
subcommand
Internal changes:
- Add support for packing minimal ISO
- rdcore: Add
bind-boot
subcommand to bind root and boot filesystems on first boot - rdcore: Add
verify-unique-fs-label
subcommand to check if multiple filesystems share a label - kargs: Add
--current
to do a dry run on the booted kargs - osmet: Drop support for RHCOS unencrypted LUKS container
Packaging changes:
- Include debug symbols in release builds
- Add
bytes
,structopt
, andthiserror
dependencies - Drop
clap
dependency - Require
nix
≥ 0.22 - dracut: Install
zipl_helper.device-mapper
on s390x - Update container to Fedora 35
- Use Fedora build of liblzma in container
coreos-installer 0.10.1 (2021-10-11)
Security fixes:
- Fix GPG signature check when decompressing gzipped images (GHSA-3r3g-g73x-g593, CVE-2021-20319)
Major changes:
- Add Fedora 36 signing key
coreos-installer 0.10.0 (2021-08-05)
Major changes:
- install: Support IBM Z virtio DASD target devices
- install, download: Support retrying fetches with new
--fetch-retries
option
Minor changes:
- install: Restrict access permissions on
/boot/ignition
(GHSA-862g-9h5m-m3qv, CVE-2021-3917) - install: Retry reading partition table on device mapper target devices
- systemd: Persist
coreos.force_persist_ip
kernel argument when installing withcoreos.inst.*
- List subcommands of a command even without
-h
- Mount filesystems in a separate mount namespace
- Refactor bootloader installation on s390x
- Enable optimization for gzip code in dev builds to speed up testing
- docs: Document
coreos-installer iso kargs
commands
Internal changes:
- kargs: Run
zipl
if necessary on s390x - kargs: Don’t fail
--create-if-changed
if the file already exists
Packaging changes:
- Require Rust ≥ 1.49.0
- Support OpenSSL 3.0
coreos-installer 0.9.1 (2021-05-14)
Major changes:
- Add Fedora 35 signing key; drop Fedora 32 signing key
Minor changes:
- install: Fix block device path in error message when disk is busy
- install: Ignore corrupt GPT on target disk unless saving partitions
Internal changes:
- rootmap: Ignore multipath devices
coreos-installer 0.9.0 (2021-04-08)
Major changes:
- iso: Support writing output file to stdout with
-o -
Minor changes:
- blockdev: Fix RHEL
lsblk
ordering bug by using--nodeps
option - blockdev: Strengthen device mapper path detection
Internal changes:
- osmet: Drop support for
--real-rootdev
option - Add
--override-options
tordcore kargs
to make it easier to test kernel argument changes - Optionally create a file if kernel arguments are modified
- Add declarative semantics for kernel argument modification
Packaging changes:
- Switch from
error-chain
toanyhow
library
coreos-installer 0.8.0 (2021-01-12)
Major changes:
- Add
iso kargs
subcommand for modifying kernel arguments in live ISO images - Support IBM Z FBA DASD target devices
Minor changes:
- Fix race condition causing
fdasd
failure when formatting ECKD DASD - Fix sector size selection on unformatted ECKD DASD
Internal changes:
- rdcore: Add
kargs
subcommand for modifying BLS configurations
Packaging changes:
- Add
lazy_static
dependency - Add
mbrman
andrand
dependencies on s390x - Require
regex
≥ 1.4
coreos-installer 0.7.2 (2020-10-22)
Major changes:
- Add Fedora 33 and 34 signing keys; drop Fedora 30 signing key
Minor changes:
- systemd: Start coreos-installer service after systemd-resolved
Packaging changes:
- Update container to Fedora 33
coreos-installer 0.7.0 (2020-09-21)
Minor changes:
- iso: Use filesystem copy-on-write mechanism for
-o
output file if available - install: Remember to update MBR from install image when restoring saved partitions
- install: Update size of protective MBR partition when restoring saved partitions
- install: Clear MBR boot code on install failure
- install: Revert insufficient s390x segfault avoidance change
- docs: Restructure for web publishing
- docs: Add initial command-line reference
Internal changes:
- rootmap: Configure LUKS root to wait on network if needed
Packaging changes:
- Require
openat-ext
≥ 0.1.4
coreos-installer 0.6.0 (2020-08-26)
Major changes:
- Add
pxe ignition
subcommands to generate or show an Ignition config wrapped in an appendable initrd - iso: Move
iso
subcommands toiso ignition
and deprecate the former - iso: Rename
iso ignition embed -c
/--config
to-i
/--ignition-file
Minor changes:
- install: Fix kernel ignoring saved partitions after install failure
- install: Fix loss of saved partitions if original partition table is invalid
- install: Retain saved partitions in partition table at all times during install
- install: Clear partition table on failure by writing empty GPT rather than zeroes, except on DASD
- install: Reread kernel partition table after restoring partitions on failure
- install: Make
--preserve-on-error
saved partition stash file the same size as the target disk - install: Properly activate first-boot kernel arguments on s390x
- install: Avoid segfault due to miscompilation in s390x release build
- iso: Compress Ignition config with XZ to increase capacity
- systemd: Suppress reboot after failure of a hook unit
- Document hooking install via an Ignition config
Internal changes:
- rootmap: Fix failure on unmodified rootfs
- rootmap: Inject
rootflags
kernel argument
Packaging changes:
- Require
gptman
≥ 0.7
coreos-installer 0.5.0 (2020-08-01)
Major changes:
- install: Add
--save-partlabel
and--save-partindex
options to preserve specified partitions - systemd: Add
coreos.inst.save_partlabel
andcoreos.inst.save_partindex
kargs
Minor changes:
- install: Fix installing to DASD via symlink
- systemd: Fix intermittent failure disabling MD-RAID and DM device activation
- systemd: Sequence
reboot
/noreboot
services aftercoreos-installer.target
- Increase I/O block size when copying data, correctly
Internal changes:
- rdcore: Add
rootmap
subcommand to generate kargs for root device dependencies
Packaging changes:
- Don’t build
rdcore
binary unlessrdcore
feature is enabled - Add
glob
anduuid
dependencies - Drop
progress-streams
dependency - Depend on
gptman
on all CPU architectures
coreos-installer 0.4.0 (2020-07-24)
Minor changes:
- install: Support
sha256
hashes in--ignition-hash
Internal changes:
- rdcore: Add new program and Dracut module for internal use in the CoreOS initramfs
- rdcore: Add
stream-hash
subcommand for streaming verification of downloads - osmet: Add
pack --fast
option for use in development builds - osmet: Fix packing root filesystem wrapped in a
crypto_LUKS
container
Packaging changes:
- Allow
byte-unit
3.x or 4.x - Drop
sha2
dependency
coreos-installer 0.3.0 (2020-07-13)
Major changes:
- install: Support remote Ignition configs with
--ignition-url
- install: Support kernel argument modification with
--append-karg
and--delete-karg
- install: Support device-mapper target devices
- install: Support IBM Z DASD target devices
Minor changes:
- install: Deprecate
--firstboot-args
- install: Report busy partitions if the target device is busy
- install: Correctly clear first MiB of target disk while copy is in progress
- install: Detect unreadable Ignition config before writing disk
- Increase I/O block size when copying data
- systemd: Correctly fail boot on systemd ≥ 245 if install fails
- systemd: Disable activation of MD-RAID and DM devices before install via new
coreos-installer-pre.target
Packaging changes:
- Update container to Fedora 32
- Require bincode ≥ 1.3
- Require sha2 ≥ 0.9
- Require gptman on s390x
- Relax patchlevel version requirements on dependencies
coreos-installer 0.2.1 (2020-05-30)
Major changes:
- Add Fedora 32 signing key; drop Fedora 30 signing key
Minor changes:
- Support creating offline image from RHCOS LUKS volume
- Add
coreos.inst
forwarding ofnet.ifnames
andnet.naming-scheme
kargs
coreos-installer 0.2.0 (2020-04-30)
Major changes:
- By default, install from an offline image shipped with the running system, if available
- When installing from a Fedora CoreOS stream, automatically select 4Kn image if needed
- Add
--copy-network
and--network-dir
to copy network configs from the running system - Add
--ignition-hash
to verify the hash of the specified Ignition config
Minor changes:
- Fix
coreos.inst
forwarding of repeated network kargs - Fix
coreos.inst
forwarding of network kargs without a value - Get block device path from
lsblk
rather than constructing it - Stop overriding locked root account when launching emergency shell
- Redirect systemd generator’s stdout to kmsg
coreos-installer 0.1.3 (2020-03-20)
Major changes:
- Rename
--ignition
to--ignition-file
.--ignition
is still accepted for compatibility. - Don’t discard disk contents before installing, so we don’t delete data partitions when reprovisioning
- Add
--preserve-on-error
debug option to skip clearing partition table on error
Minor changes:
- Fail install early if image sector size doesn’t match destination
- Ensure specified Ignition config exists before starting install
- Improve error message when mounting
/boot
if no partitions found - Ignore HTTP errors on signature fetch if
--insecure
is specified - Simplify download progress reporting if stderr is not a tty
- Retry when downloading
coreos.inst.ignition_url
- Add upper-bound timeout to HTTP requests
coreos-installer 0.1.2 (2020-01-08)
This is release v0.1.2 of coreos-installer.
Thanks to the following contributors for patches during this release:
- Benjamin Gilbert (2):
- dracut: drop dracut modules
- systemd: add scripts and systemd units for running at boot
- Colin Walters (1):
- systemd: Add After=network-online.target
- Dusty Mabe (16):
- systemd: service: fix calls to get commandline arg values
- systemd: generator: rename cmdline_arg() to karg()
- systemd: installer: indicate we want the network
- systemd: reboot service: fix path to systemctl
- systemd: generator: mv reboot flag file creation to generator
- systemd: service: Make reboot service run after installer
- systemd: services: log more to the console
- systemd: use OnFailureJobMode=replace-irreversibly
- systemd: add coreos-installer-noreboot.service
- systemd: set SYSTEMD_SULOGIN_FORCE=1 for emergency.service
- Remove coreos.inst.stream_base_url karg
- systemd: make “network up” checking more robust
- systemd: remove rudimentary network checking code
- Cargo.toml: remove package.metadata.release.upload-doc option
- Cargo.toml: use default tag prefix
- Cargo.toml: replace deprecated option with new version
- Jonathan Lebon (1):
- Add Makefile
coreos-installer 0.1.1 (2019-12-18)
Changes:
- Improve error messages when rereading partition table
- Fix mounting boot device on CentOS 7.6
- verify: Explicitly trust imported keys
- verify: Switch to
always
trust model - main: get rid of wildcard imports
- Packaging and release fixes
- docs: add technical details about iso-embedding
- README: Rewrite for Rust implementation
- docs: fix typo in release-checklist
coreos-installer 0.1.0 (2019-11-08)
Changes:
- Initial release