Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-kernel/gentoo-kernel/
Date: Mon, 02 Nov 2020 09:49:08
Message-Id: 1604310526.a754976ebc408cca9c2db04231bcfe4cd9ddc71d.mgorny@gentoo
1 commit: a754976ebc408cca9c2db04231bcfe4cd9ddc71d
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Sun Nov 1 22:15:55 2020 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Mon Nov 2 09:48:46 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a754976e
7
8 sys-kernel/gentoo-kernel: Bump to 5.4.74
9
10 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
11
12 sys-kernel/gentoo-kernel/Manifest | 2 +
13 .../gentoo-kernel/gentoo-kernel-5.4.74.ebuild | 137 +++++++++++++++++++++
14 2 files changed, 139 insertions(+)
15
16 diff --git a/sys-kernel/gentoo-kernel/Manifest b/sys-kernel/gentoo-kernel/Manifest
17 index 0803b0bc2a7..0504bd59886 100644
18 --- a/sys-kernel/gentoo-kernel/Manifest
19 +++ b/sys-kernel/gentoo-kernel/Manifest
20 @@ -2,6 +2,8 @@ DIST genpatches-5.4-73.base.tar.xz 2527064 BLAKE2B 6e0b392681d6e5e709a02c1c8f15f
21 DIST genpatches-5.4-73.extras.tar.xz 1772 BLAKE2B 7475a0907f287fef28ee8bf220932528107bbac0d612dc05de6ca8b2dd86ddf37d9acea31ab2977a677f6ea3a19c594737b23e504da405fa811c4d0faf00b94a SHA512 751898547b1f60070f1d8431cd89daff55e33473c8fe68415a15e3b8079ae2d3e44318815ba47a1ce9750feb1cac1812eb8eb7765426b204eb1357993cc68cb0
22 DIST genpatches-5.4-74.base.tar.xz 2616380 BLAKE2B d79290a1a6aa3464fcb5ea31d5ec28adc3b9275b7240627e431a9cbc69735426434345f0259e08efdf10e3660d60f3d4b6f22e7883cca39c8136f2ee39fad646 SHA512 ac5df7e61f00659c01ad90a6e52e20a9860f154e899aaef7179d28d3fc311ec804d34c9ef15bf22903e0c0783d00d375019e7dbca58b94ab5c09da0b8a8214a8
23 DIST genpatches-5.4-74.extras.tar.xz 1772 BLAKE2B 02086dddbfb1c41c2f0e0f693469ed18a870dfee1eb7305c464668a63fc29262e976c79078339691df1493280b8aececadb9bbf8398bf47d339ff06c14271c07 SHA512 ea43bb8a42dbcd63982a4350d287e222a945596f31a513cf6c61711e0e9d586171d8c319a51e63a465cc4fd69ff3fcfa36816d552d09dcd5831ea59473a73a0e
24 +DIST genpatches-5.4-75.base.tar.xz 2626680 BLAKE2B ff32045765e11e01c26a3a11d095940c94fc1774734104c73b0a014401464b97ca623f354e62fc46f8427ae440149e5738741c78e79dc014d4e12ca24470384d SHA512 8c5bc194525e352f4b2a7fd6f92a5344a8036f60440bdbcde0fcf0ed401c191921fa15066aeb368c91d40fb6d166c7bec1ea55f01e5c8ffc3e296c9dc0ee1e2d
25 +DIST genpatches-5.4-75.extras.tar.xz 1772 BLAKE2B 64073a8352dcd26668abacb591afc4f9452d071682619ad335cd77a71c6a82875a189e3d1e5a005da63b81038fe5b7667b282301b3d97f8f218c9ab7d37c02d7 SHA512 b43853961b1b60de1f1577de46d4bf1f650ffc96e46a64d6a37fbdebfd76cd5edc2847ae350ed6eb463f29cb55846cc322744918d5a59a21814c4a7c41b0d795
26 DIST genpatches-5.8-19.base.tar.xz 596728 BLAKE2B ceb6cd57b593b5a2c02f00cefc61035ea765c9bb2bb2f9f8721e7503a149c8ad2ee6b1b3765b6d038e5d34bef2f0e0278acb7f3a8168d31d341ac0a9b58b8590 SHA512 f36c11a008e7965e0e113c3a7d87dbf40b87d87c7a801970a73367dcaaa07e7fc3356a114d339d68f16342d9f3c6601cf4746b9aa96d01d0c5efe2dbfaafabff
27 DIST genpatches-5.8-19.extras.tar.xz 1772 BLAKE2B c42390c17040a6557054835df177fe87ee124bcdcea91e1a63d50ed8e07a10044d639616497e02082fbb67a708ed408bd1e94a3c9d5b7c7b0c7daeca2bfc65df SHA512 3ba07566f1e721521676b862ca51654638400eeda4f216cdfb860b0639b7a611b2ff2e9659007486841e9a1afa8c05a9454abae87abbc7dff8af396bd0d7100a
28 DIST genpatches-5.8-20.base.tar.xz 752808 BLAKE2B 6997bcd2b7dcf27f894e521fd95a77fc774ed23c3bf515a4dd3f633aa0d91feaf6f59850d56063bdb07ec7e01a720f17b61b6d32639d6c7b7cebd5cfb722b41e SHA512 59bdfcb2b74c343d673b14a1ede1bd8e726430fccc5b4f87d9edcd8986c5de7d8f473e10713fec5d922ba3949c9ce794438885b00cb125dd896f8e66eefe71ff
29
30 diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-5.4.74.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-5.4.74.ebuild
31 new file mode 100644
32 index 00000000000..ff0e401cd76
33 --- /dev/null
34 +++ b/sys-kernel/gentoo-kernel/gentoo-kernel-5.4.74.ebuild
35 @@ -0,0 +1,137 @@
36 +# Copyright 2020 Gentoo Authors
37 +# Distributed under the terms of the GNU General Public License v2
38 +
39 +EAPI=7
40 +
41 +inherit kernel-build
42 +
43 +MY_P=linux-${PV%.*}
44 +GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 1 ))
45 +# https://koji.fedoraproject.org/koji/packageinfo?packageID=8
46 +CONFIG_VER=5.4.21
47 +CONFIG_HASH=2809b7faa6a8cb232cd825096c146b7bdc1e08ea
48 +
49 +DESCRIPTION="Linux kernel built with Gentoo patches"
50 +HOMEPAGE="https://www.kernel.org/"
51 +SRC_URI+=" https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.xz
52 + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.base.tar.xz
53 + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.extras.tar.xz
54 + amd64? (
55 + https://src.fedoraproject.org/rpms/kernel/raw/${CONFIG_HASH}/f/kernel-x86_64.config
56 + -> kernel-x86_64.config.${CONFIG_VER}
57 + )
58 + arm64? (
59 + https://src.fedoraproject.org/rpms/kernel/raw/${CONFIG_HASH}/f/kernel-aarch64.config
60 + -> kernel-aarch64.config.${CONFIG_VER}
61 + )
62 + ppc64? (
63 + https://src.fedoraproject.org/rpms/kernel/raw/${CONFIG_HASH}/f/kernel-ppc64le.config
64 + -> kernel-ppc64le.config.${CONFIG_VER}
65 + )
66 + x86? (
67 + https://src.fedoraproject.org/rpms/kernel/raw/${CONFIG_HASH}/f/kernel-i686.config
68 + -> kernel-i686.config.${CONFIG_VER}
69 + )"
70 +S=${WORKDIR}/${MY_P}
71 +
72 +LICENSE="GPL-2"
73 +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
74 +IUSE="debug"
75 +
76 +RDEPEND="
77 + !sys-kernel/vanilla-kernel:${SLOT}
78 + !sys-kernel/vanilla-kernel-bin:${SLOT}"
79 +BDEPEND="
80 + debug? ( dev-util/dwarves )"
81 +
82 +pkg_pretend() {
83 + ewarn "Starting with 5.4.52, Distribution Kernels are switching from Arch"
84 + ewarn "Linux configs to Fedora. Please keep a backup kernel just in case."
85 +
86 + kernel-install_pkg_pretend
87 +}
88 +
89 +src_prepare() {
90 + local PATCHES=(
91 + # meh, genpatches have no directory
92 + "${WORKDIR}"/*.patch
93 + )
94 + default
95 +
96 + # prepare the default config
97 + case ${ARCH} in
98 + amd64)
99 + cp "${DISTDIR}/kernel-x86_64.config.${CONFIG_VER}" .config || die
100 + ;;
101 + arm64)
102 + cp "${DISTDIR}/kernel-aarch64.config.${CONFIG_VER}" .config || die
103 + ;;
104 + ppc64)
105 + cp "${DISTDIR}/kernel-ppc64le.config.${CONFIG_VER}" .config || die
106 + ;;
107 + x86)
108 + cp "${DISTDIR}/kernel-i686.config.${CONFIG_VER}" .config || die
109 + ;;
110 + *)
111 + die "Unsupported arch ${ARCH}"
112 + ;;
113 + esac
114 +
115 + local config_tweaks=(
116 + # replace (none) with gentoo
117 + -e 's:^CONFIG_DEFAULT_HOSTNAME=:&"gentoo":'
118 + # we do support x32
119 + -e '/CONFIG_X86_X32/s:.*:CONFIG_X86_X32=y:'
120 + # disable signatures
121 + -e '/CONFIG_MODULE_SIG/d'
122 + -e '/CONFIG_SECURITY_LOCKDOWN/d'
123 + -e '/CONFIG_KEXEC_SIG/d'
124 + -e '/CONFIG_KEXEC_BZIMAGE_VERIFY_SIG/d'
125 + -e '/CONFIG_SYSTEM_EXTRA_CERTIFICATE/d'
126 + -e '/CONFIG_SIGNATURE/d'
127 + # remove massive array of LSMs
128 + -e 's/CONFIG_LSM=.*/CONFIG_LSM="yama"/'
129 + -e 's/CONFIG_DEFAULT_SECURITY_SELINUX=y/CONFIG_DEFAULT_SECURITY_DAC=y/'
130 + # nobody actually wants fips
131 + -e '/CONFIG_CRYPTO_FIPS/d'
132 + # these tests are really not necessary
133 + -e 's/.*CONFIG_CRYPTO_MANAGER_DISABLE_TESTS.*/CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y/'
134 + # probably not needed by anybody but developers
135 + -e '/CONFIG_CRYPTO_STATS/d'
136 + # 1000hz is excessive for laptops
137 + -e 's/CONFIG_HZ_1000=y/CONFIG_HZ_300=y/'
138 + # nobody is using this kernel on insane super computers
139 + -e 's/CONFIG_NR_CPUS=.*/CONFIG_NR_CPUS=512/'
140 + # we're not actually producing live patches for folks
141 + -e 's/CONFIG_LIVEPATCH=y/CONFIG_LIVEPATCH=n/'
142 + # this slows down networking in general
143 + -e 's/CONFIG_IP_FIB_TRIE_STATS=y/CONFIG_IP_FIB_TRIE_STATS=n/'
144 + # include font for normal and hidpi screens
145 + -e 's/.*CONFIG_FONTS.*/CONFIG_FONTS=y\nCONFIG_FONT_8x16=y\nCONFIG_FONT_TER16x32=y/'
146 + # we don't need to actually install system headers from this ebuild
147 + -e '/CONFIG_HEADERS_INSTALL/d'
148 + # enable /proc/config.gz, used by linux-info.eclass
149 + -e '/CONFIG_IKCONFIG/s:.*:CONFIG_IKCONFIG=y\nCONFIG_IKCONFIG_PROC=y:'
150 + # WireGuard was backported to 5.4 but we use old configs (#739128)
151 + -e '$aCONFIG_WIREGUARD=m'
152 + )
153 + use debug || config_tweaks+=(
154 + -e '/CONFIG_DEBUG_INFO/d'
155 + -e '/CONFIG_DEBUG_RODATA_TEST/d'
156 + -e '/CONFIG_DEBUG_VM/d'
157 + -e '/CONFIG_DEBUG_SHIRQ/d'
158 + -e '/CONFIG_DEBUG_LIST/d'
159 + -e '/CONFIG_BUG_ON_DATA_CORRUPTION/d'
160 + -e '/CONFIG_TORTURE_TEST/d'
161 + -e '/CONFIG_BOOTTIME_TRACING/d'
162 + -e '/CONFIG_RING_BUFFER_BENCHMARK/d'
163 + -e '/CONFIG_X86_DECODER_SELFTEST/d'
164 + -e '/CONFIG_KGDB/d'
165 + )
166 + [[ ${ARCH} == x86 ]] && config_tweaks+=(
167 + # fix autoenabling 64bit
168 + -e '2i\
169 +# CONFIG_64BIT is not set'
170 + )
171 + sed -i "${config_tweaks[@]}" .config || die
172 +}