Added genkernel patch

This commit is contained in:
2024-01-04 17:09:39 +01:00
parent 9310804f7f
commit 34d6904252
7 changed files with 578 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
--- /usr/share/genkernel/gen_configkernel.sh~ 2023-11-09 12:04:47.223202185 +0100
+++ /usr/share/genkernel/gen_configkernel.sh 2023-11-09 12:22:48.924474193 +0100
@@ -1021,18 +1021,21 @@
done
required_kernel_options+=( 'CONFIG_MICROCODE' )
- case "${MICROCODE}" in
- amd)
- required_kernel_options+=( 'CONFIG_MICROCODE_AMD' )
- ;;
- intel)
- required_kernel_options+=( 'CONFIG_MICROCODE_INTEL' )
- ;;
- all)
- required_kernel_options+=( 'CONFIG_MICROCODE_AMD' )
- required_kernel_options+=( 'CONFIG_MICROCODE_INTEL' )
- ;;
- esac
+ if [ ${KV_NUMERIC} -lt 6006 ]
+ then
+ case "${MICROCODE}" in
+ amd)
+ required_kernel_options+=( 'CONFIG_MICROCODE_AMD' )
+ ;;
+ intel)
+ required_kernel_options+=( 'CONFIG_MICROCODE_INTEL' )
+ ;;
+ all)
+ required_kernel_options+=( 'CONFIG_MICROCODE_AMD' )
+ required_kernel_options+=( 'CONFIG_MICROCODE_INTEL' )
+ ;;
+ esac
+ fi
else
print_info 1 "$(get_indent 1)>> Ignoring --microcode parameter; Architecture does not support microcode loading ..."
fi

View File

@@ -0,0 +1,38 @@
From 75d666895ff428ca18863674bcf7e5ebf176505b Mon Sep 17 00:00:00 2001
From: Ben Kohler <bkohler@gentoo.org>
Date: Wed, 24 May 2023 11:24:32 -0500
Subject: [PATCH] gen_initramfs.sh: force no-color on qlist calls
In some cases, qlist's pipe detection may not work, and this is fatal to
our build. Let's just force -C on all qlist calls.
Signed-off-by: Ben Kohler <bkohler@gentoo.org>
---
gen_initramfs.sh | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/gen_initramfs.sh b/gen_initramfs.sh
index 227badd..986b3b4 100755
--- a/gen_initramfs.sh
+++ b/gen_initramfs.sh
@@ -801,7 +801,7 @@ append_multipath() {
local udevdir=$(get_udevdir)
local udevdir_initramfs="/usr/lib/udev"
- local udev_files=( $(qlist -e sys-fs/multipath-tools:0 \
+ local udev_files=( $(qlist -eC sys-fs/multipath-tools:0 \
| grep -E -- "^${udevdir}")
)
@@ -1131,7 +1131,7 @@ append_zfs() {
local udevdir=$(get_udevdir)
local udevdir_initramfs="/usr/lib/udev"
- local udev_files=( $(qlist -e sys-fs/zfs:0 \
+ local udev_files=( $(qlist -eC sys-fs/zfs:0 \
| grep -E -- "^${udevdir}")
)
--
2.40.1

View File

@@ -0,0 +1,24 @@
https://github.com/gentoo/genkernel/commit/231fdfd9f1c1819d19440627ebe0ea58576a9965
From 231fdfd9f1c1819d19440627ebe0ea58576a9965 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Wed, 5 Jul 2023 21:41:39 +0100
Subject: [PATCH] gkbuilds: cryptsetup: disable asciidoc
Signed-off-by: Sam James <sam@gentoo.org>
---
gkbuilds/cryptsetup.gkbuild | 1 +
1 file changed, 1 insertion(+)
diff --git a/gkbuilds/cryptsetup.gkbuild b/gkbuilds/cryptsetup.gkbuild
index 816df609..c084286c 100644
--- a/gkbuilds/cryptsetup.gkbuild
+++ b/gkbuilds/cryptsetup.gkbuild
@@ -11,6 +11,7 @@ src_configure() {
local myconf=(
--enable-internal-argon2
--sbindir=/sbin
+ --disable-asciidoc
--disable-nls
--disable-selinux
--disable-ssh-token

View File

@@ -0,0 +1,74 @@
# genkernel (8) completion
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Written by Aron Griffis <agriffis@gentoo.org>
_genkernel()
{
declare cur prev genkernel_help actions params
COMPREPLY=()
cur=${COMP_WORDS[COMP_CWORD]}
prev=${COMP_WORDS[COMP_CWORD-1]}
# extract initial list of params/actions from genkernel --help
genkernel_help=$(command genkernel --help 2>/dev/null)
actions=( $(<<<"$genkernel_help" sed -n \
'/^Available Actions:/,/^$/s/^[[:space:]]\+\([^[:space:]]\+\).*/\1/p') )
params=( $(<<<"$genkernel_help" egrep -oe '--[^[:space:]]{2,}') )
# attempt to complete the current parameter based on the list
COMPREPLY=($(compgen -W "${params[*]/=*/=} ${actions[*]}" -- "$cur"))
# if we don't have a rhs to complete
if [[ ${#COMPREPLY[@]} -gt 1 ]]; then
return
elif [[ ${#COMPREPLY[@]} -eq 0 && $cur != --*=* ]]; then
return
elif [[ ${#COMPREPLY[@]} -eq 1 && $COMPREPLY != --*= ]]; then
# using nospace completion, add an explicit space
COMPREPLY="${COMPREPLY} "
return
fi
# we have a unique lhs and need to complete the rhs
declare args lhs rhs
if [[ ${#COMPREPLY[@]} -eq 1 ]]; then
lhs=$COMPREPLY
else
lhs=${cur%%=*}=
rhs=${cur#*=}
fi
# genkernel's help gives clues as to what belongs on the rhs.
# extract the clue for the current parameter
args=" ${params[*]} "
args="${args##* $lhs}"
args="${args%% *}"
# generate a list of completions for the argument; this replaces args with
# an array of results
args=( $(case $args in
('<0-5>') compgen -W "$(echo {1..5})" -- "$rhs" ;;
('<outfile>'|'<file>') compgen -A file -o plusdirs -- "$rhs" ;;
('<archive>') compgen -G '*.tar.xz' -G '*.tbz2' -G '*.tar.bz2' -o plusdirs -- "$rhs" ;;
('<dir>'|'<path>') compgen -A directory -S / -- "$rhs" ;;
(*) compgen -o bashdefault -- "$rhs" ;; # punt
esac) )
# we're using nospace completion to prevent spaces after paths that aren't
# "done" yet. So do some hacking to the args to add spaces after
# non-directories.
declare slash=/
args=( "${args[@]/%/ }" ) # add space to all
args=( "${args[@]/%$slash /$slash}" ) # remove space from dirs
# recreate COMPREPLY
if [[ $cur == "$lhs"* ]]; then
COMPREPLY=( "${args[@]}" )
elif [[ ${#args[@]} -gt 0 ]]; then
COMPREPLY=( "${args[@]/#/$lhs}" )
fi
}
complete -o nospace -F _genkernel genkernel

View File

@@ -0,0 +1,23 @@
# This specifies which mounts from your fstab should be mounted before
# switching to the real root. If this file is missing, genkernel's code will
# default to just "/usr", which will suffice on most systems with a seperate
# /usr mount.
#
# If you have a complex configuration with a bindmount or symlink at /usr, or
# need some other mountpoints at boot, you should update this file such that
# /usr and anything else needed will be available after the switch into the
# real root.
#
# The lines without comments in this file are used as exact matches against the
# second column of your /etc/fstab and the device, fstype and mount options are
# taken from that line in fstab. If no line matches, the line from this file
# will be ignored.
#
/usr
# If you had some need of these:
#/usr/local
#/opt
#/var
#/home