Weekly Changes – 06/01/2025
This is the first release of 2025 and is rather larger than normal due to a lot of ongoing work to support the new Ubuntu Noble platform. Here are the details of all the notable changes…
Kernel
The INF
series kernel has been updated to 5.15.0-130.140
for Ubuntu Focal and Jammy.
There is now support for reducing the number of kernel-related packages that are installed.
You can remove the header packages like this:
!profile.pkgcppopts mADD(-DLCFG_KERNEL_NO_HEADERS)
From Ubuntu Noble onwards the header packages will no longer be included by default.
The extra modules packages can be removed like this:
!profile.pkgcppopts mADD(-DLCFG_KERNEL_MINIMAL)
The standard firmware packages are unlikely to be needed on virtual machines so you can remove them like this:
!profile.pkgcppopts mREMOVE(-DLCFG_OPTIONS_FIRMWARE)
The firmware packages change quite often so removing those will reduce the number of reboot requests.
Also, applying all three of these changes will save something like 1Gb of disk space in the root partition.
If the lcfg/options/dkms.h
header is included in a profile it will ensure the headers are always included.
OpenAFS
The OpenAFS packages now default to version 1.8.13. For details of all the changes since version 1.8.10, see the upstream release notes for 1.8.11, 1.8.12, and 1.8.13. This adds support for newer kernels (up to 6.11 by the looks of it).
network component
The LCFG network component has gained support for automatically selecting the NIC when there is only one active interface available. This option can be enabled by specifying the device for an interface as single
, for example:
!network.device_eth0 mSET(single)
This will work on systems with a single NIC (e.g. a desktop) or a system with multiple (e.g. a server) but only one is actually connected. If multiple NICs are discovered it will throw an error (which will cause an install to fail).
This is currently only installed by default on Ubuntu Noble, it can be tested on other platforms by installing version 2.9.1-1
.
apteryx package manager
The LCFG package manager for Ubuntu has gained support for a new “Keep Current Kernel” feature. When this is enabled it will not remove the package for the current running kernel (based on uname) or any packages which are reverse-dependencies (e.g. modules packages). This should help avoid the catastrophic removal of all kernels when the running kernel is no longer listed in the profile but the newer kernel packages cannot be installed.
This feature can be enabled like this:
LCFG_APT_OPTION(kck,Apteryx::Keep-Current-Kernel,true)
Several minor bugs have also been fixed, in particular, the files which are used to store the list of boot-only packages and the required reboots are no longer updated when apteryx is run in test/dry-run mode.
This is currently only installed by default on Ubuntu Noble, it can be tested on other platforms by installing version 0.8.1-1
.
Package Lists
Some empty package lists for Ubuntu have been removed as they have never been used. They were originally created as copies of the old Enterprise Linux structure and have been cloned for new platforms ever since.
PAM
Support for Noble has been added to the PAM defaults header. The default list of modules has been updated to be more complete on Jammy and Noble.
The PAM tally and tally2 modules which can be used to track login attempts and deny access when excessive failures occur has not been available since Ubuntu Focal. The LCFG header will now throw an error if it is included in profiles for newer platforms. If you need similar functionality take a look at the faillock module.
Debian 11 bullseye
All support for the Debian 11 platform has been removed.
Dell PowerEdge R660
There is a lcfg/hw/dell_poweredge_r660.h header available for this new server model. Mostly it’s just a clone of the header for the previous model, please let us know if it works correctly.
Software
There are quite a few new package options available for Ubuntu, the dependencies have been updated accordingly for some existing options.
LCFG_OPTIONS_CLANG_DEV
– clang library – Development packageLCFG_OPTIONS_CONDA_PACKAGE_HANDLING
– create and extract conda packagesLCFG_OPTIONS_CUPS_CLIENT
– CUPS client, includes BSD-style commandsLCFG_OPTIONS_FIRMWARE
– standard kernel firmware packagesLCFG_OPTIONS_NCURSES_DEV
– developer’s libraries for ncursesLCFG_OPTIONS_OPENFST_TOOLS
– weighted finite-state transducers libraryLCFG_OPTIONS_PCSCD
– Middleware to access a smart card using PC/SCLCFG_OPTIONS_PDFARRANGER
– merge, split and re-arrange pages from PDF documentsLCFG_OPTIONS_PERL_XML_PARSER
– Perl module for parsing XML filesLCFG_OPTIONS_PYTHON_CAIRO
– Python3 bindings for the Cairo vector graphics libraryLCFG_OPTIONS_PYTHON_IGRAPH
– High performance graph data structures and algorithmsLCFG_OPTIONS_PYTHON_LIBVIRT
– libvirt Python 3 bindingsLCFG_OPTIONS_QUOTA
– disk quota management tools
Changes to headers and package lists
Members of the Informatics Computing team can browse all the changes to the headers and package lists.
Recent comments