All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
v1.3.2 - 2026-08-05
Highlights: Maintenance release. The kickstart files themselves are unchanged, so the LF_KICKSTART_VERSION build stamps stay untouched and installed hosts are unaffected. Nothing to do.
v1.3.1 - 2026-06-29
lf-rhel.cfg: A host installed from this release reports2026062901in/root/lf-install-version
v1.3.0 - 2026-04-27
lf-rhel.cfg: Thenftablespackage is installed on everylftypevariant (cis,cloud,cloud-cis,minimal)
lf-rhel.cfg: A host installed from this release reports2026042701in/root/lf-install-version
v1.2.2 - 2026-04-24
- All three cfg files carry the same stamp again,
2026042401
v1.2.1 - 2026-04-15
Highlights: Changes to the grub configuration reach installed hosts again, cloud installs work on RHEL and Rocky 10, and every installed host records the installer build it came from in /root/lf-install-version.
- A
LF_KICKSTART_VERSIONbuild stamp (formatYYYYMMDDNN) is written to/root/lf-install-versionon every installed host and logged during the install, so a host can be traced back to the installer build that produced it
lf-rhel.cfg: A cloud install on RHEL and Rocky 10 completes, and archivesdynamic.ksand70-install-ssh-keys.ksin/rootthe way it does on 8 and 9lf-rhel.cfg: A cloud install on RHEL and Rocky 10 no longer fails withsed: can't read /etc/systemd/logind.conflf-rhel.cfg: The archiveddynamic.ksnames the target disk in its "Only touch" comment instead of a literal$lfdisklf-rhel.cfg: The console ordering set in/etc/default/grubreaches the generatedgrub.cfg;grub2-mkconfigwas silently skipped on every install so farlf-rhel.cfg: The SELinux relabel runs on RHEL and Rocky 10 and no longer fills the%postlog withOperation not supportedfor the EFI partition
v1.2.0 - 2026-04-15
lf-rhel.cfg: Thedhcp-clientpackage and itsdhclient.conftweak are gone from the cloud variant, which unblocks RHEL 10 cloud installs. NetworkManager has used its internal DHCP client since RHEL 8, so the tweak had no effect anyway
v1.1.1 - 2026-03-20
- An install from a Rocky 10 image no longer fails with a
cperror
v1.1.0 - 2026-03-10
lf-debian.cfg: Debian preseed configuration (Debian 11+) with LVM partitioning, matching the RHEL kickstart's minimal typelf-ubuntu.cfg: Ubuntu autoinstall configuration (Ubuntu 20.04+) with LVM partitioning, matching the RHEL kickstart's minimal type
v1.0.0 - 2026-03-10
Highlights: First release number after nearly four years of unversioned kickstart files, so an installation can be tied to a version of this repository. One generic lf-rhel.cfg replaces the per-distro kickstart files and installs RHEL 8+, Fedora 38+ and compatible, with BIOS and UEFI detection, a CIS hardening mode and a cloud variant. The root account has no password any more.
/backuppartitionnosuidmount option for/homeand/varin CIS mode- Sudoers configuration prepared for Ansible use
- One generic
lf-rhel.cfgkickstart replacing all individual per-distro kickstart files (Fedora 35, Rocky 8, RHEL 8 and their CIS/cloud variants) - Support for RHEL 8+, Fedora 38+ and compatible
- UEFI and BIOS automatic detection
- Automatic
lfdiskdetection - CIS hardening mode
- Cloud variant support with cloud-init integration
- SSH key deployment for users
- Error handling for unknown
lftypevalues
- Network options are no longer set explicitly (#9)
- RHEL 7 and CentOS 7 are no longer supported, the minimum is RHEL 8
- Root account no longer has a password (previously set to "password" with account locked)
- Sudoers entry uses user
linuxfabrikinstead of group%linuxfabrik - systemd units are no longer started in the chroot environment
authorized_keysgets its SELinux contextgrub2-mkconfigis EFI-awaremkdirwithout-pfor.sshdirectories caused failures when multiple SSH keys were deployed for the same user- A failing
%post --nochrootscript aborts the install instead of running on - The
--asprimaryflag is gone from the/bootpartition, it is meaningless on a GPT disk label - The mount point is detected before files are copied
- Sudoers file permissions are set to
0440, instead of taking the default umask - The post-install script no longer fails with a
sederror - The SSH user warning is gone (#8)