TuxTape: a kernel livepatching solution

Geico, an American insurance company, is building a live-patching solution for the Linux kernel, called TuxTape. TuxTape is an in-development kernel livepatching ecosystem that aims to aid in the production and distribution of kpatch patches to vendor-independent kernels. This is done by scraping the Linux CNA mailing list, prioritizing CVEs by severity, and determining applicability of the patches to the configured kernel(s). Applicability of patches is determined by profiling kernel builds to record which files are included in the build process and ignoring CVEs that do not affect files included in kernel builds deployed on the managed fleet. ↫ Presentation by Grayson Guarino and Chris Townsend It seems to me something like live-patching the Linux kernel should be a standardised framework that’s part of the Linux kernel, and not several random implementations by third parties, one of which is an insurance company. There’s a base core of functionality for live-patching in the Linux kernel since 4.0, released in 2015, but it’s extremely limited and requires most of the functionality to be implemented separately, through things like Red Hat’s kpatch and Oracle’s Ksplice. Geico is going to release TuxTape as open source, and is encouraging others to adopt and use it. There are various other solutions out there offering similar functionality, so you’re not spoiled for choice, and I’m sure there’s advantages and disadvantages to each. I would still prefer if functionality like this is a standard feature of the kernel, not something tied to a specific vendor or implementation.

Where time stands still, and nature paints a masterpiece. 📍Lachung, Sikkim | AeronFly | Make Your…

Where the peaks touch the sky, and the glaciers guard ancient secrets. 🏔️❄️ Lachung, North Sikkim, is a paradise hidden in the heart of the Himalayas, where nature’s raw beauty takes your breath away. Towering mountains, frozen rivers, and the crisp mountain air make this place an unforgettable escape.✨

If you’re seeking adventure, serenity, or just a moment of awe, Lachung is the destination that speaks to the soul. Have you ever witnessed a place this magical? 🌿💙

Web Wash: Using Bootstrap in Drupal CMS

In the above video, we’ll explore how to use Bootstrap for Drupal CMS.

If you’re looking for easier site-building and front-end theming, Bootstrap is a great tool.

We’ll cover everything from setting up your themes to using Bootstrap within Drupal’s Layout Builder and Views.

Bootstrap in Drupal

Bootstrap is well-supported within the Drupal community. It offers numerous modules and themes, as well as many pre-built components that help developers create attractive, responsive sites quickly.

We’ll specifically look at two themes: Bootstrap5 and Radix. We will also explore how to integrate Bootstrap with Drupal’s Layout Builder using Bootstrap Layout Builder and how to use Bootstrap grids within Drupal Views.

diffutils @ Savannah: diffutils-3.11 released [stable]

This is to announce diffutils-3.11, a stable release.

Special thanks to Paul Eggert for doing the vast majority of the work and
to Bruno Haible for his many changes here and his tons of work tending gnulib.

There have been 252 commits by 5 people in the 89 weeks since 3.10.

See the NEWS below for a brief summary.

Thanks to everyone who has contributed!
The following people contributed changes to this release:

  Bruno Haible (12)
  Collin Funk (3)
  Gleb Fotengauer-Malinovskiy (1)
  Jim Meyering (26)
  Paul Eggert (210)

Jim
 [on behalf of the diffutils maintainers]
==================================================================

Here is the GNU diffutils home page:
    https://gnu.org/s/diffutils/

Here are the compressed sources:
  https://ftp.gnu.org/gnu/diffutils/diffutils-3.11.tar.gz   (3.3MB)
  https://ftp.gnu.org/gnu/diffutils/diffutils-3.11.tar.xz   (1.9MB)

Here are the GPG detached signatures:
  https://ftp.gnu.org/gnu/diffutils/diffutils-3.11.tar.gz.sig
  https://ftp.gnu.org/gnu/diffutils/diffutils-3.11.tar.xz.sig

Use a mirror for higher download bandwidth:
  https://www.gnu.org/order/ftp.html

Here are the SHA1 and SHA256 checksums:

  bc8791022b18a34c7ee9c3079e414f843de0e1a9  diffutils-3.11.tar.gz
  yAo8K/h+JS/n1gW4umv5KNdakLVfO/z3xKTzN+xi/DE=  diffutils-3.11.tar.gz
  1cf58ac440fc279b363169a17de3662e03bb266d  diffutils-3.11.tar.xz
  pz7wX+N91YX32HBo5KBjl2BBn4EBOL11xh3aofniEx4=  diffutils-3.11.tar.xz

Verify the base64 SHA256 checksum with cksum -a sha256 –check
from coreutils-9.2 or OpenBSD’s cksum since 2007.

Use a .sig file to verify that the corresponding file (without the
.sig suffix) is intact.  First, be sure to download both the .sig file
and the corresponding tarball.  Then, run a command like this:

  gpg –verify diffutils-3.11.tar.gz.sig

The signature should match the fingerprint of the following key:

  pub   rsa4096/0x7FD9FCCB000BEEEE 2010-06-14 [SCEA]
        Key fingerprint = 155D 3FC5 00C8 3448 6D1E  EA67 7FD9 FCCB 000B EEEE
  uid                   [ unknown] Jim Meyering <jim@meyering.net>
  uid                   [ unknown] Jim Meyering <meyering@fb.com>
  uid                   [ unknown] Jim Meyering <meyering@gnu.org>

If that command fails because you don’t have the required public key,
or that public key has expired, try the following commands to retrieve
or refresh it, and then rerun the ‘gpg –verify’ command.

  gpg –locate-external-key jim@meyering.net

  gpg –recv-keys 7FD9FCCB000BEEEE

  wget -q -O- ‘https://savannah.gnu.org/project/release-gpgkeys.php?group=diffutils&download=1’ | gpg –import –

As a last resort to find the key, you can try the official GNU
keyring:

  wget -q https://ftp.gnu.org/gnu/gnu-keyring.gpg
  gpg –keyring gnu-keyring.gpg –verify diffutils-3.11.tar.gz.sig

This release is based on the diffutils git repository, available as

  git clone https://git.savannah.gnu.org/git/diffutils.git

with commit 3f326ae3ea7556e35152e13f01a0a4d8b8b4bc70 tagged as v3.11.

For a summary of changes and contributors, see:

  https://git.sv.gnu.org/gitweb/?p=diffutils.git;a=shortlog;h=v3.11

or run this command from a git-cloned diffutils directory:

  git shortlog v3.10..v3.11

This release was bootstrapped with the following tools:
  Autoconf 2.72.47-21cb
  Automake 1.17.0.91
  Gnulib 2025-01-31 553ab924d2b68d930fae5d3c6396502a57852d23

NEWS

* Noteworthy changes in release 3.11 (2025-02-02) [stable]

** Improvements

  Programs now quote file names more consistently in diagnostics.
  For example; “cmp ‘none of’ /etc/passwd” now might output
  “cmp: EOF on ‘none of’ which is empty” instead of outputting
  “cmp: EOF on none of which is empty”.  In diagnostic messages
  that traditionally omit quotes and where backward compatibility
  seems to be important, programs continue to omit quotes unless
  a file name contains shell metacharacters, in which case programs
  use shell quoting.  For example, although diff continues to output
  “Only in a: b” as before for most file names, it now outputs
  “Only in ‘a: b’: ‘c: d'” instead of “Only in a: b: c: d” because the
  file names ‘a: b’ and ‘c: d’ contain spaces.  For compatibility
  with previous practice, diff -c and -u headers continue to quote for
  C rather than for the shell.

  diff now outputs more information when symbolic links differ, e.g.,
  “Symbolic links ‘d/f’ -> ‘a’ and ‘e/f’ -> ‘b’ differ”, not just
  “Symbolic links d/f and e/f differ”.  Special files too, e.g.,
  “Character special files ‘d/f’ (1, 3) and ‘e/f’ (5, 0) differ”, not
  “File d/f is a character special file while file e/f is a character
  special file”.

  diff’s –ignore-case (-i) and –ignore-file-name-case options now
  support multi-byte characters.  For example, they treat Greek
  capital Δ like small δ when input uses UTF-8.

  diff now supports multi-byte characters when treating white space.
  In options like –expand-tabs (-t), –ignore-space-change (-b) and
  –ignore-tab-expansion (-E), diff now recognizes non-ASCII space
  characters and counts columns for non-ASCII characters.

** Bug fixes

  cmp -bl no longer omits “M-” from bytes with the high bit set in
  single-byte locales like en_US.iso8859-1.  This fix causes the
  behavior to be locale independent, and to be the same as the
  longstanding behavior in the C locale and in locales using UTF-8.
  [bug introduced in 2.9]

  cmp -i N and -n N no longer fail merely because N is enormous.
  [bug present since “the beginning”]

  cmp -s no longer mishandles /proc files, for which the Linux kernel
  reports a zero size even when nonempty.  For example, the following
  shell command now outputs nothing, as it should:
    cp /proc/cmdline t; cmp -s /proc/cmdline t || echo files differ
  [bug present since “the beginning”]

  diff -E no longer mishandles some input lines containing ‘a’, ‘b’,
  ‘f’, ‘r’, ‘v’, or ”.
  [bug present since 2.8]

  diff -ly no longer mishandles non-ASCII input.
  [bug#64461 introduced in 2.9]

  diff – A/B now works correctly when standard input is a directory,
  by reading a file named B in that directory.
  [bug present since “the beginning”]

  diff no longer suffers from race conditions in some cases
  when comparing files in a mutating file system.
  [bug present since “the beginning”]

** Release

  distribute gzip-compressed tarballs once again