So, being new to Linux, and looking for a summary of the patch notes, I was referred to a Linux newbies site. However, which it contains very good information for minor versions, it does not cover patch versions. Since , but I felt it was still too generalized. So, I rolled up my sleeves a bit. Enter lkcl, a tiny-ish script:
The following will grab your current kernel release from uname and spit back the title of every commit in the changelog, sorted for easier perusal.
lkcl
The following will do the same as the above, but for a specific release.
lkcl 6.12.4
While I'm not an expert here, here's my first stab. Improvements are welcome, but I'm sure one can go down a rabbit hole of improvements.
Cheers!
#!/bin/bash
# set -x
if ! command -v curl 2>&1 >/dev/null; then
echo "This script requires curl." exit 1 fi
oIFS=$IFS
# Get current kernel version if it was not provided
if [ -z "$1" ]; then
IFS='_' # Tokenize kernel version version=($(uname -r)) # Remove revision if any version=${version[0]} else
version=$1 fi
# Tokenize kernel version
IFS='.'
tversion=($version)
IFS=$oIFS
URL=https://cdn.kernel.org/pub/linux/kernel/v${tversion[0]}.x/ChangeLog-$version
# Check if the URL exists
if curl -fIso /dev/null $URL; then
echo -e "Connecting to $URL...\n" # Read the change log with blank lines removed and sort it curl -s $URL | grep "\S" | while read -r first_word remaining_words; do if [ "$title" = 1 ]; then echo $first_word $remaining_words title=0 continue fi # Title comes right after the date if [ "X$first_word" = XDate: ]; then title=1 fi done | { sed -u 1q; sort -f; } else
echo "There was an issue connecting to $URL." exit 1 fi
SOCIAL SHARE CARD GENERATOR