sys-kernel/libre-kernel: drop versions
This commit is contained in:
parent
6c3566c789
commit
ede794c760
|
@ -2,10 +2,6 @@ DIST genpatches-5.15-107.base.tar.xz 4209440 BLAKE2B 48fcb9a837d9f13ffa96194e2ec
|
||||||
DIST genpatches-5.15-107.extras.tar.xz 3932 BLAKE2B 59b1279051d08009a8c6e15c5083d7056f7eab8b5beed72dd3421631e9730c7306ce7cae8c3c82f508db261c2a4b2076a2c6c7d3a5fe98419b240e87a0d1e636 SHA512 8897cf7b1d42fcb4a0a87417913c624dbc65b9ce5689dee3998b65cba54659e7ecea759c97f4993dca4b928fe7844e025aa8dbe54f5ca492d8f858fdeb9ba3d9
|
DIST genpatches-5.15-107.extras.tar.xz 3932 BLAKE2B 59b1279051d08009a8c6e15c5083d7056f7eab8b5beed72dd3421631e9730c7306ce7cae8c3c82f508db261c2a4b2076a2c6c7d3a5fe98419b240e87a0d1e636 SHA512 8897cf7b1d42fcb4a0a87417913c624dbc65b9ce5689dee3998b65cba54659e7ecea759c97f4993dca4b928fe7844e025aa8dbe54f5ca492d8f858fdeb9ba3d9
|
||||||
DIST genpatches-5.15-110.base.tar.xz 4312720 BLAKE2B 58e3c5a0001f1245a25cbb66e239d393c48d265a5213e51601ea9b24fc33fce97472a1cb63e990ac2d2165c5e7d40372e53952aa47d347282c8ce9f8434a140a SHA512 abbe6099973c90e0751456a522717d7f2d993d873af4a98aff0150c1dfc9a75cf56f9d850dd2a5b8c80915ab27110c65b0b482df27bda00262c043fba731cde6
|
DIST genpatches-5.15-110.base.tar.xz 4312720 BLAKE2B 58e3c5a0001f1245a25cbb66e239d393c48d265a5213e51601ea9b24fc33fce97472a1cb63e990ac2d2165c5e7d40372e53952aa47d347282c8ce9f8434a140a SHA512 abbe6099973c90e0751456a522717d7f2d993d873af4a98aff0150c1dfc9a75cf56f9d850dd2a5b8c80915ab27110c65b0b482df27bda00262c043fba731cde6
|
||||||
DIST genpatches-5.15-110.extras.tar.xz 3932 BLAKE2B f280b14d3c6b1ed89ccf9752071dd55641d59354a680a2419a8caaa993036ecec716fe063d40fb566ab788632ebc71970b2460b6b915ea2d1db68d78fb7069fc SHA512 cbb844978cc225fab030f43ab0ba76fe5138a9c84381bf1318df55c24fe33bb734f60512daf27e20c191c58da821c69228aa98ca91adf224383a08bf3457741c
|
DIST genpatches-5.15-110.extras.tar.xz 3932 BLAKE2B f280b14d3c6b1ed89ccf9752071dd55641d59354a680a2419a8caaa993036ecec716fe063d40fb566ab788632ebc71970b2460b6b915ea2d1db68d78fb7069fc SHA512 cbb844978cc225fab030f43ab0ba76fe5138a9c84381bf1318df55c24fe33bb734f60512daf27e20c191c58da821c69228aa98ca91adf224383a08bf3457741c
|
||||||
DIST genpatches-5.15-98.base.tar.xz 4003192 BLAKE2B 79d4fb60a5192137571109ffaefdfba23ac589102539cdde89046f627f39e65a52a44a83607232b499509b8bb4c341e2fd26ae971587c9574d4ac87d8b220893 SHA512 946a7638d19d5fd610075520e529a6c5a47aaa433b7986493f62571a7dc541278013a5006bf1e745496e4eb98de44af56f61d23679c139a719a8d5bc20c9e734
|
|
||||||
DIST genpatches-5.15-98.extras.tar.xz 3932 BLAKE2B 4e5dd4f8ba6d14764a6546cf7e64dffb3ddcc77678b7d96d2498917f30561792c904c635b0fce7191b7c0c65549fa769e89befffbea5e53a3cef64c673937c20 SHA512 337d95159432cba3b85511cf80c350a8a2f67c65b72a90b26ddc98c01d2d8de70d9b6067e0573c5c339a5bf64973d10c06b42001ee19a7add3d672e4577d0622
|
|
||||||
DIST genpatches-6.1-14.base.tar.xz 774040 BLAKE2B 8e0866c762e2711b766cc75630d66c7c46221bdc47357a903c7e8506ad122b7b5ba84d102b19743d236ac5579b44d24f77b9f52f3c23695ab6a279cf7875e735 SHA512 6a753146013baf0b94d83abd690118517679d4d7dcf6e9f86cf8de35e24f80a792e9c0692f237098671c316d046d6f65f8d3512255e572daf6a8ca81853beca0
|
|
||||||
DIST genpatches-6.1-14.extras.tar.xz 3804 BLAKE2B 7f016579b130c9a4f7a8ec946254dbd682f22e5654ae777d11b265dafe2b177a4c40c5a979a760a5bd6ed3dac057b90a3120c60b958f6b748ea4731b9a5f1ea6 SHA512 2807d359459dd11b9d3356fcac609dbfb8487e8c924cc543ef37698667b1c8b74cff7b015839ca0677cf1f96b566e0b5018c057b517275886ab500cd2ca49653
|
|
||||||
DIST genpatches-6.1-21.base.tar.xz 1052684 BLAKE2B 8ceb101f650a74dee8401a4a08cb052e821daa4f04b2a9c82e1cb40f0589aef8e6974fd5355922b19868558b373d1751bce7c5db5923c49433955dcd1863b1c5 SHA512 9db8c2413e56f7684bf4414ecdce3fc21984c69851125971e9dde372a6f8fd04c9f5159273d67815d96565062a221d8325664dd8762d353bd24f9afc02eeed11
|
DIST genpatches-6.1-21.base.tar.xz 1052684 BLAKE2B 8ceb101f650a74dee8401a4a08cb052e821daa4f04b2a9c82e1cb40f0589aef8e6974fd5355922b19868558b373d1751bce7c5db5923c49433955dcd1863b1c5 SHA512 9db8c2413e56f7684bf4414ecdce3fc21984c69851125971e9dde372a6f8fd04c9f5159273d67815d96565062a221d8325664dd8762d353bd24f9afc02eeed11
|
||||||
DIST genpatches-6.1-21.extras.tar.xz 3808 BLAKE2B 9d1bf513bea67b8ca4df1124b4c81857292b44f8e8c339b7295fee60cb04d323eef5de4f8a92714f641a68c3229a8b60b673760f7373ce54112f6f7231b18f4c SHA512 4439ead755188488e6f7c18210386121a78a30abcd8d56ca87d0069b7244ae87cf1ba312f033db49acf017ef6c581b58e0228baecf42df50e0d1d978fb4c5461
|
DIST genpatches-6.1-21.extras.tar.xz 3808 BLAKE2B 9d1bf513bea67b8ca4df1124b4c81857292b44f8e8c339b7295fee60cb04d323eef5de4f8a92714f641a68c3229a8b60b673760f7373ce54112f6f7231b18f4c SHA512 4439ead755188488e6f7c18210386121a78a30abcd8d56ca87d0069b7244ae87cf1ba312f033db49acf017ef6c581b58e0228baecf42df50e0d1d978fb4c5461
|
||||||
DIST genpatches-6.1-24.base.tar.xz 1155780 BLAKE2B e6be4766ec5aba82d12d5209c1ac86b013482c2c1d40a9d5f72afa0f86555816c859795db9fa229415dc813e8b35851c98f11d17884d3e928684827b6c434778 SHA512 5e0c17ed36ccfe2d926e835a74b283ad40a21fdab33220c82c9e87ec2cbe17c3e6cc356bb62e17a1ca12901bd56694819708af438725c67b68c142c64f0a938c
|
DIST genpatches-6.1-24.base.tar.xz 1155780 BLAKE2B e6be4766ec5aba82d12d5209c1ac86b013482c2c1d40a9d5f72afa0f86555816c859795db9fa229415dc813e8b35851c98f11d17884d3e928684827b6c434778 SHA512 5e0c17ed36ccfe2d926e835a74b283ad40a21fdab33220c82c9e87ec2cbe17c3e6cc356bb62e17a1ca12901bd56694819708af438725c67b68c142c64f0a938c
|
||||||
|
@ -18,10 +14,6 @@ DIST linux-libre-5.15.102-gnu.tar.xz 119754308 BLAKE2B dc908b54795682070bccec932
|
||||||
DIST linux-libre-5.15.102-gnu.tar.xz.sign 195 BLAKE2B 7d6cbf9c704224bb28a3040ed44e909b79d4622e19400bf553a3ac632da1da2d35dc859590e1815fb0264bfa4898762c8ea959784c9d5f69ba14313e50fc67c1 SHA512 180afcb0172e0b15a729c38fe567038184d6e785a76aaa142bc9a68a093dc0cf9083ad0e3568ec26a34d08f0a63f5776facd7ae8e167dd8b910a80082040872a
|
DIST linux-libre-5.15.102-gnu.tar.xz.sign 195 BLAKE2B 7d6cbf9c704224bb28a3040ed44e909b79d4622e19400bf553a3ac632da1da2d35dc859590e1815fb0264bfa4898762c8ea959784c9d5f69ba14313e50fc67c1 SHA512 180afcb0172e0b15a729c38fe567038184d6e785a76aaa142bc9a68a093dc0cf9083ad0e3568ec26a34d08f0a63f5776facd7ae8e167dd8b910a80082040872a
|
||||||
DIST linux-libre-5.15.105-gnu.tar.xz 119744400 BLAKE2B bc00a798944b642e9e356f81f85b1fea2e974aea27c99b6a6ae3347291747df9e16b2eac498953a7cbe306b4edeefd0a6917c676c785a5e1c8b38b80b0e69450 SHA512 d22d8eacd012675522225428aa9ce463b512f7af2c2d5918494d893dd8196662290901df65a57054f60ba1772f7af185f42c907dbda8ecb091a92046fbe0132b
|
DIST linux-libre-5.15.105-gnu.tar.xz 119744400 BLAKE2B bc00a798944b642e9e356f81f85b1fea2e974aea27c99b6a6ae3347291747df9e16b2eac498953a7cbe306b4edeefd0a6917c676c785a5e1c8b38b80b0e69450 SHA512 d22d8eacd012675522225428aa9ce463b512f7af2c2d5918494d893dd8196662290901df65a57054f60ba1772f7af185f42c907dbda8ecb091a92046fbe0132b
|
||||||
DIST linux-libre-5.15.105-gnu.tar.xz.sign 195 BLAKE2B 5607ee3b098b71c887304f02c52e84344db4579a7688c98555e0e79b41717ca46680390ec93de006f04ee9585855c31ba5a5c1063c74bcc68acfcba98ec537d3 SHA512 c41f1ee025ddf9afbdb32652b188b52678945c4cff331cb2d40c796fc5e471766572330e760000447840f805604adbbdf0f356adf3b4f8f9c07bb365e1c7d903
|
DIST linux-libre-5.15.105-gnu.tar.xz.sign 195 BLAKE2B 5607ee3b098b71c887304f02c52e84344db4579a7688c98555e0e79b41717ca46680390ec93de006f04ee9585855c31ba5a5c1063c74bcc68acfcba98ec537d3 SHA512 c41f1ee025ddf9afbdb32652b188b52678945c4cff331cb2d40c796fc5e471766572330e760000447840f805604adbbdf0f356adf3b4f8f9c07bb365e1c7d903
|
||||||
DIST linux-libre-5.15.94-gnu.tar.xz 119739516 BLAKE2B 6d7c7d624991b79a021a5aa8c3c7b829b218ce9cb146f3f508f9fe97c3d738e9c1f02e38ea5928d02a8812f294335b81a2b03ff70039b641554dbfa4569ef7d1 SHA512 02c21e2cf83bf90b2c086ba92407a80be17468f55b7e7877dbd6eb89d90d100dfdb7bfea8776f5738a1335953aeba67dc581383674c1a28f4f6c458b27f652d6
|
|
||||||
DIST linux-libre-5.15.94-gnu.tar.xz.sign 195 BLAKE2B 84e3688cb26f529785a02a9104aa9f6dd059ff266e550340f09c7c4b916fedfbd63b80c4f634ab97c2ee6b88f864cf0a022d61eb2d30cf9b9201daee65ad5bca SHA512 35282cf99ffef053a1b05126371f70d0b24c16c95e579111f4118e4b2b1c72cbabd1393d2b8d092b62517f7c1c05ab997c2ec51ad0159701d03e715c190095c2
|
|
||||||
DIST linux-libre-6.1.12-gnu.tar.xz 127116060 BLAKE2B 2d8f457e23d954a1d2bd1c312369ca2ab6fa2c03b1758e78c82d5cc40eec8c5c3b5cb79c6fb168dca44a4ea6837801bb47a91e6b4b437ab6087adbb1b38914d1 SHA512 27c8f3e12e5f95681ef17f8fc698b7a319c69c734154c62437e43f997565f7f0fb3ccce9dd114bc23ccaa4580833a201d45ea744d568bf473b8ef76f6f91c988
|
|
||||||
DIST linux-libre-6.1.12-gnu.tar.xz.sign 195 BLAKE2B 769d8c66fda4fc3da616d9ed44c37ee110c0d28dbbeed64a9b724da468ac296edc131b104eaab294798313388d6f6ce4338bd8b1f14f03e900f2f817a0fa2a53 SHA512 6b77ef90f6b3c3da21542125c2ca96c79613a16dd7edf8d855d4aa3d7e601084111a1751dceec60f6337119f016dfef19f2c81e66cdd657e69583a5c60d1d64f
|
|
||||||
DIST linux-libre-6.1.19-gnu.tar.xz 127193128 BLAKE2B 9f0aa053b7425064d1c0634911beb63d8015caa4de80fb0f241cc7d04148cdbe065498f925f2af29976349fe20c25d9988a5f2905d677ca66f013552f3114b71 SHA512 21ea759cbe4d0c657cd724d40f67d5da32531e94495ea9509f8cdfb475a52a24a340bbcae5d5238cfa80bdb5f4b7c8d814b9a422eb0fe67fc0d21ceef6ceb830
|
DIST linux-libre-6.1.19-gnu.tar.xz 127193128 BLAKE2B 9f0aa053b7425064d1c0634911beb63d8015caa4de80fb0f241cc7d04148cdbe065498f925f2af29976349fe20c25d9988a5f2905d677ca66f013552f3114b71 SHA512 21ea759cbe4d0c657cd724d40f67d5da32531e94495ea9509f8cdfb475a52a24a340bbcae5d5238cfa80bdb5f4b7c8d814b9a422eb0fe67fc0d21ceef6ceb830
|
||||||
DIST linux-libre-6.1.19-gnu.tar.xz.sign 195 BLAKE2B 76168997141cfafce0e6e5dbf8b5afdfd271ee988a4ffa473fa3dc4a86cab087f294be65497c97c3dcca3de8992beff57cf053be6785f92af797c23cf0b3bd25 SHA512 2267bedf4c51d5c60be216e27e3b1eb8ee31f088ad371963dbd598ae6386c66872b81827ad503cd22bac17babadf11022af4be9841edfb4cb10c85e1ad791180
|
DIST linux-libre-6.1.19-gnu.tar.xz.sign 195 BLAKE2B 76168997141cfafce0e6e5dbf8b5afdfd271ee988a4ffa473fa3dc4a86cab087f294be65497c97c3dcca3de8992beff57cf053be6785f92af797c23cf0b3bd25 SHA512 2267bedf4c51d5c60be216e27e3b1eb8ee31f088ad371963dbd598ae6386c66872b81827ad503cd22bac17babadf11022af4be9841edfb4cb10c85e1ad791180
|
||||||
DIST linux-libre-6.1.22-gnu.tar.xz 127173720 BLAKE2B 10f50ed7299aa60bbb5b798188e1af58b660f2f7f8600979e2a3a08f2becd3bae6b725c3296641ab6a65eb28e4e7e176f0c00d9ce82ccc07070e42127154935e SHA512 89163ef90a333ab5bf2a3af93d07351ce68cd7452a0cfde0ea17fbb78b6662e8989e0a623f68161a2c2170bd5a665f4f640d90d94495d4d6bd6200a5d2ec9c54
|
DIST linux-libre-6.1.22-gnu.tar.xz 127173720 BLAKE2B 10f50ed7299aa60bbb5b798188e1af58b660f2f7f8600979e2a3a08f2becd3bae6b725c3296641ab6a65eb28e4e7e176f0c00d9ce82ccc07070e42127154935e SHA512 89163ef90a333ab5bf2a3af93d07351ce68cd7452a0cfde0ea17fbb78b6662e8989e0a623f68161a2c2170bd5a665f4f640d90d94495d4d6bd6200a5d2ec9c54
|
||||||
|
|
|
@ -1,147 +0,0 @@
|
||||||
# Copyright 2020-2023 Gentoo Authors, projectmoon
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
|
|
||||||
inherit kernel-build verify-sig
|
|
||||||
|
|
||||||
BASE_VER="$(ver_cut 1).$(ver_cut 2).$(ver_cut 3)"
|
|
||||||
RESTRICT="mirror"
|
|
||||||
|
|
||||||
GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 5 ))
|
|
||||||
CONFIG_VER=5.15.19
|
|
||||||
CONFIG_HASH=ec69da7a42b5b7c3da91572ef22097b069ddbd01
|
|
||||||
GENTOO_CONFIG_VER=g7
|
|
||||||
|
|
||||||
DESCRIPTION="GNU Linux-libre kernel built from upstream sources"
|
|
||||||
HOMEPAGE="https://www.fsfla.org/ikiwiki/selibre/linux-libre/"
|
|
||||||
SRC_URI+="
|
|
||||||
https://git.agnos.is/projectmoon/projectmoon-overlay-files/media/branch/main/sys-kernel/libre-kernel/linux-libre-${BASE_VER}-gnu.tar.xz
|
|
||||||
https://linux-libre.fsfla.org/pub/linux-libre/releases/${BASE_VER}-gnu/linux-libre-${BASE_VER}-gnu.tar.xz
|
|
||||||
https://dev.gentoo.org/~alicef/dist/genpatches/${GENPATCHES_P}.base.tar.xz
|
|
||||||
https://dev.gentoo.org/~alicef/dist/genpatches/${GENPATCHES_P}.extras.tar.xz
|
|
||||||
https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz
|
|
||||||
-> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz
|
|
||||||
verify-sig? (
|
|
||||||
https://git.agnos.is/projectmoon/projectmoon-overlay-files/media/branch/main/sys-kernel/libre-kernel/linux-libre-${BASE_VER}-gnu.tar.xz.sign
|
|
||||||
)
|
|
||||||
amd64? (
|
|
||||||
https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config
|
|
||||||
-> kernel-x86_64-fedora.config.${CONFIG_VER}
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
# Workdir is named linux-PV.
|
|
||||||
MY_P=linux-${PV}
|
|
||||||
S=${WORKDIR}/${MY_P}
|
|
||||||
|
|
||||||
LICENSE="GPL-2"
|
|
||||||
KEYWORDS="amd64"
|
|
||||||
IUSE="debug +gentoo"
|
|
||||||
|
|
||||||
BDEPEND="
|
|
||||||
debug? ( dev-util/pahole )
|
|
||||||
verify-sig? ( sec-keys/openpgp-keys-linux-libre )
|
|
||||||
"
|
|
||||||
PDEPEND="
|
|
||||||
>=virtual/dist-kernel-${PV}
|
|
||||||
"
|
|
||||||
|
|
||||||
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/linux-libre.asc
|
|
||||||
|
|
||||||
pkg_pretend() {
|
|
||||||
if has_version -d sys-kernel/linux-firmware[redistributable]; then
|
|
||||||
ewarn "sys-kernel/linux-firmware was found installed on your system,"
|
|
||||||
ewarn "but it is configured to install non-Free firmware files."
|
|
||||||
ewarn "The non-Free firmware files may be required for some hardware"
|
|
||||||
ewarn "work. The Linux-libre kernel cannot load non-Free firmware."
|
|
||||||
ewarn "To install only the Free firmware, set the -redistributable"
|
|
||||||
ewarn "USE flag on sys-kernel/linux-firmware."
|
|
||||||
|
|
||||||
if use initramfs; then
|
|
||||||
elog
|
|
||||||
elog "If you decide to change or remove linux-firmware later, you"
|
|
||||||
elog "can rebuild the initramfs via issuing a command equivalent to:"
|
|
||||||
elog
|
|
||||||
elog " emerge --config ${CATEGORY}/${PN}:${SLOT}"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
if ! has_version -d sys-kernel/linux-firmware; then
|
|
||||||
ewarn "sys-kernel/linux-firmware[-redistributable] not found installed"
|
|
||||||
ewarn "on your system. This package provides various firmware files that"
|
|
||||||
ewarn "may be needed for your hardware to work. If in doubt, it is recommended"
|
|
||||||
ewarn "to pause or abort the build process and install it before"
|
|
||||||
ewarn "resuming."
|
|
||||||
|
|
||||||
if use initramfs; then
|
|
||||||
elog
|
|
||||||
elog "If you decide to install linux-firmware later, you can rebuild"
|
|
||||||
elog "the initramfs via issuing a command equivalent to:"
|
|
||||||
elog
|
|
||||||
elog " emerge --config ${CATEGORY}/${PN}:${SLOT}"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_unpack() {
|
|
||||||
if use verify-sig; then
|
|
||||||
FILE="${DISTDIR}"/linux-libre-${PV}-gnu.tar.xz
|
|
||||||
SIGFILE="${DISTDIR}"/linux-libre-${PV}-gnu.tar.xz.sign
|
|
||||||
verify-sig_verify_detached $FILE $SIGFILE
|
|
||||||
fi
|
|
||||||
|
|
||||||
default
|
|
||||||
}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
local PATCHES
|
|
||||||
if use gentoo; then
|
|
||||||
# Fiters out the kernel incremenetal version upgrade patches,
|
|
||||||
# leaving only the Gentoo bug fix/functionality changes. The
|
|
||||||
# regex removes any patches starting with 10XX to 14XX.
|
|
||||||
MY_PATCHES=$(find "${WORKDIR}"/*.patch -printf "%f\n" | grep -v -E -e '^1[01234][[:digit:]][[:digit:]]_.+.patch')
|
|
||||||
PATCHES=$(echo "$MY_PATCHES" | sed 's|^|'"${WORKDIR}/"'|g')
|
|
||||||
else
|
|
||||||
# If no patches are to be applied, apply only the config changes
|
|
||||||
# for a Gentoo installation, as this does not change any actual
|
|
||||||
# Kernel functionality.
|
|
||||||
PATCHES="${WORKDIR}/4567_distro-Gentoo-Kconfig.patch"
|
|
||||||
fi
|
|
||||||
|
|
||||||
default
|
|
||||||
|
|
||||||
local biendian=false
|
|
||||||
|
|
||||||
# prepare the default config
|
|
||||||
case ${ARCH} in
|
|
||||||
amd64)
|
|
||||||
cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
die "Unsupported arch ${ARCH}"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
sed -i 's/EXTRAVERSION = -gnu/EXTRAVERSION = /' "${S}"/Makefile || \
|
|
||||||
die 'could not remove EXTRAVERSION'
|
|
||||||
|
|
||||||
local myversion="-gnu-dist"
|
|
||||||
echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die
|
|
||||||
local dist_conf_path="${WORKDIR}/gentoo-kernel-config-${GENTOO_CONFIG_VER}"
|
|
||||||
|
|
||||||
local merge_configs=(
|
|
||||||
"${T}"/version.config
|
|
||||||
"${dist_conf_path}"/base.config
|
|
||||||
)
|
|
||||||
use debug || merge_configs+=(
|
|
||||||
"${dist_conf_path}"/no-debug.config
|
|
||||||
)
|
|
||||||
|
|
||||||
# this covers ppc64 and aarch64_be only for now
|
|
||||||
if [[ ${biendian} == true && $(tc-endian) == big ]]; then
|
|
||||||
merge_configs+=( "${dist_conf_path}/big-endian.config" )
|
|
||||||
fi
|
|
||||||
|
|
||||||
kernel-build_merge_configs "${merge_configs[@]}"
|
|
||||||
}
|
|
|
@ -1,147 +0,0 @@
|
||||||
# Copyright 2020-2023 Gentoo Authors, projectmoon
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
|
|
||||||
inherit kernel-build verify-sig
|
|
||||||
|
|
||||||
BASE_VER="$(ver_cut 1).$(ver_cut 2).$(ver_cut 3)"
|
|
||||||
RESTRICT="mirror"
|
|
||||||
|
|
||||||
GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 4 ))
|
|
||||||
CONFIG_VER=5.15.19
|
|
||||||
CONFIG_HASH=ec69da7a42b5b7c3da91572ef22097b069ddbd01
|
|
||||||
GENTOO_CONFIG_VER=g6
|
|
||||||
|
|
||||||
DESCRIPTION="GNU Linux-libre kernel built from upstream sources"
|
|
||||||
HOMEPAGE="https://www.fsfla.org/ikiwiki/selibre/linux-libre/"
|
|
||||||
SRC_URI+="
|
|
||||||
https://git.agnos.is/projectmoon/projectmoon-overlay-files/media/branch/main/sys-kernel/libre-kernel/linux-libre-${BASE_VER}-gnu.tar.xz
|
|
||||||
https://linux-libre.fsfla.org/pub/linux-libre/releases/${BASE_VER}-gnu/linux-libre-${BASE_VER}-gnu.tar.xz
|
|
||||||
https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.base.tar.xz
|
|
||||||
https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.extras.tar.xz
|
|
||||||
https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz
|
|
||||||
-> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz
|
|
||||||
verify-sig? (
|
|
||||||
https://git.agnos.is/projectmoon/projectmoon-overlay-files/media/branch/main/sys-kernel/libre-kernel/linux-libre-${BASE_VER}-gnu.tar.xz.sign
|
|
||||||
)
|
|
||||||
amd64? (
|
|
||||||
https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config
|
|
||||||
-> kernel-x86_64-fedora.config.${CONFIG_VER}
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
# Workdir is named linux-PV.
|
|
||||||
MY_P=linux-${PV}
|
|
||||||
S=${WORKDIR}/${MY_P}
|
|
||||||
|
|
||||||
LICENSE="GPL-2"
|
|
||||||
KEYWORDS="amd64"
|
|
||||||
IUSE="debug +gentoo"
|
|
||||||
|
|
||||||
BDEPEND="
|
|
||||||
debug? ( dev-util/pahole )
|
|
||||||
verify-sig? ( sec-keys/openpgp-keys-linux-libre )
|
|
||||||
"
|
|
||||||
PDEPEND="
|
|
||||||
>=virtual/dist-kernel-${PV}
|
|
||||||
"
|
|
||||||
|
|
||||||
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/linux-libre.asc
|
|
||||||
|
|
||||||
pkg_pretend() {
|
|
||||||
if has_version -d sys-kernel/linux-firmware[redistributable]; then
|
|
||||||
ewarn "sys-kernel/linux-firmware was found installed on your system,"
|
|
||||||
ewarn "but it is configured to install non-Free firmware files."
|
|
||||||
ewarn "The non-Free firmware files may be required for some hardware"
|
|
||||||
ewarn "work. The Linux-libre kernel cannot load non-Free firmware."
|
|
||||||
ewarn "To install only the Free firmware, set the -redistributable"
|
|
||||||
ewarn "USE flag on sys-kernel/linux-firmware."
|
|
||||||
|
|
||||||
if use initramfs; then
|
|
||||||
elog
|
|
||||||
elog "If you decide to change or remove linux-firmware later, you"
|
|
||||||
elog "can rebuild the initramfs via issuing a command equivalent to:"
|
|
||||||
elog
|
|
||||||
elog " emerge --config ${CATEGORY}/${PN}:${SLOT}"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
if ! has_version -d sys-kernel/linux-firmware; then
|
|
||||||
ewarn "sys-kernel/linux-firmware[-redistributable] not found installed"
|
|
||||||
ewarn "on your system. This package provides various firmware files that"
|
|
||||||
ewarn "may be needed for your hardware to work. If in doubt, it is recommended"
|
|
||||||
ewarn "to pause or abort the build process and install it before"
|
|
||||||
ewarn "resuming."
|
|
||||||
|
|
||||||
if use initramfs; then
|
|
||||||
elog
|
|
||||||
elog "If you decide to install linux-firmware later, you can rebuild"
|
|
||||||
elog "the initramfs via issuing a command equivalent to:"
|
|
||||||
elog
|
|
||||||
elog " emerge --config ${CATEGORY}/${PN}:${SLOT}"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_unpack() {
|
|
||||||
if use verify-sig; then
|
|
||||||
FILE="${DISTDIR}"/linux-libre-${PV}-gnu.tar.xz
|
|
||||||
SIGFILE="${DISTDIR}"/linux-libre-${PV}-gnu.tar.xz.sign
|
|
||||||
verify-sig_verify_detached $FILE $SIGFILE
|
|
||||||
fi
|
|
||||||
|
|
||||||
default
|
|
||||||
}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
local PATCHES
|
|
||||||
if use gentoo; then
|
|
||||||
# Fiters out the kernel incremenetal version upgrade patches,
|
|
||||||
# leaving only the Gentoo bug fix/functionality changes. The
|
|
||||||
# regex removes any patches starting with 10XX to 14XX.
|
|
||||||
MY_PATCHES=$(find "${WORKDIR}"/*.patch -printf "%f\n" | grep -v -E -e '^1[01234][[:digit:]][[:digit:]]_.+.patch')
|
|
||||||
PATCHES=$(echo "$MY_PATCHES" | sed 's|^|'"${WORKDIR}/"'|g')
|
|
||||||
else
|
|
||||||
# If no patches are to be applied, apply only the config changes
|
|
||||||
# for a Gentoo installation, as this does not change any actual
|
|
||||||
# Kernel functionality.
|
|
||||||
PATCHES="${WORKDIR}/4567_distro-Gentoo-Kconfig.patch"
|
|
||||||
fi
|
|
||||||
|
|
||||||
default
|
|
||||||
|
|
||||||
local biendian=false
|
|
||||||
|
|
||||||
# prepare the default config
|
|
||||||
case ${ARCH} in
|
|
||||||
amd64)
|
|
||||||
cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
die "Unsupported arch ${ARCH}"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
sed -i 's/EXTRAVERSION = -gnu/EXTRAVERSION = /' "${S}"/Makefile || \
|
|
||||||
die 'could not remove EXTRAVERSION'
|
|
||||||
|
|
||||||
local myversion="-gnu-dist"
|
|
||||||
echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die
|
|
||||||
local dist_conf_path="${WORKDIR}/gentoo-kernel-config-${GENTOO_CONFIG_VER}"
|
|
||||||
|
|
||||||
local merge_configs=(
|
|
||||||
"${T}"/version.config
|
|
||||||
"${dist_conf_path}"/base.config
|
|
||||||
)
|
|
||||||
use debug || merge_configs+=(
|
|
||||||
"${dist_conf_path}"/no-debug.config
|
|
||||||
)
|
|
||||||
|
|
||||||
# this covers ppc64 and aarch64_be only for now
|
|
||||||
if [[ ${biendian} == true && $(tc-endian) == big ]]; then
|
|
||||||
merge_configs+=( "${dist_conf_path}/big-endian.config" )
|
|
||||||
fi
|
|
||||||
|
|
||||||
kernel-build_merge_configs "${merge_configs[@]}"
|
|
||||||
}
|
|
|
@ -1,169 +0,0 @@
|
||||||
# Copyright 2020-2023 Gentoo Authors, projectmoon
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
|
|
||||||
inherit kernel-build verify-sig
|
|
||||||
|
|
||||||
BASE_VER="$(ver_cut 1).$(ver_cut 2).$(ver_cut 3)"
|
|
||||||
RESTRICT="mirror"
|
|
||||||
|
|
||||||
GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 4 ))
|
|
||||||
CONFIG_VER=5.15.19
|
|
||||||
CONFIG_HASH=ec69da7a42b5b7c3da91572ef22097b069ddbd01
|
|
||||||
GENTOO_CONFIG_VER=g6
|
|
||||||
|
|
||||||
DESCRIPTION="GNU Linux-libre kernel built from upstream sources"
|
|
||||||
HOMEPAGE="https://www.fsfla.org/ikiwiki/selibre/linux-libre/"
|
|
||||||
SRC_URI+="
|
|
||||||
https://git.agnos.is/projectmoon/projectmoon-overlay-files/media/branch/main/sys-kernel/libre-kernel/linux-libre-${BASE_VER}-gnu.tar.xz
|
|
||||||
https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.base.tar.xz
|
|
||||||
https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.extras.tar.xz
|
|
||||||
https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz
|
|
||||||
-> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz
|
|
||||||
verify-sig? (
|
|
||||||
https://git.agnos.is/projectmoon/projectmoon-overlay-files/media/branch/main/sys-kernel/libre-kernel/linux-libre-${BASE_VER}-gnu.tar.xz.sign
|
|
||||||
)
|
|
||||||
amd64? (
|
|
||||||
https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config
|
|
||||||
-> kernel-x86_64-fedora.config.${CONFIG_VER}
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
# Workdir is named linux-PV.
|
|
||||||
MY_P=linux-${PV}
|
|
||||||
S=${WORKDIR}/${MY_P}
|
|
||||||
|
|
||||||
LICENSE="GPL-2"
|
|
||||||
KEYWORDS="amd64"
|
|
||||||
IUSE="debug +gentoo"
|
|
||||||
|
|
||||||
BDEPEND="
|
|
||||||
debug? ( dev-util/pahole )
|
|
||||||
verify-sig? ( sec-keys/openpgp-keys-linux-libre )
|
|
||||||
"
|
|
||||||
PDEPEND="
|
|
||||||
>=virtual/dist-kernel-${PV}
|
|
||||||
"
|
|
||||||
|
|
||||||
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/linux-libre.asc
|
|
||||||
|
|
||||||
pkg_pretend() {
|
|
||||||
if has_version -d sys-kernel/linux-firmware[redistributable]; then
|
|
||||||
ewarn "sys-kernel/linux-firmware was found installed on your system,"
|
|
||||||
ewarn "but it is configured to install non-Free firmware files."
|
|
||||||
ewarn "The non-Free firmware files may be required for some hardware"
|
|
||||||
ewarn "work. The Linux-libre kernel cannot load non-Free firmware."
|
|
||||||
ewarn "To install only the Free firmware, set the -redistributable"
|
|
||||||
ewarn "USE flag on sys-kernel/linux-firmware."
|
|
||||||
|
|
||||||
if use initramfs; then
|
|
||||||
elog
|
|
||||||
elog "If you decide to change or remove linux-firmware later, you"
|
|
||||||
elog "can rebuild the initramfs via issuing a command equivalent to:"
|
|
||||||
elog
|
|
||||||
elog " emerge --config ${CATEGORY}/${PN}:${SLOT}"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
if ! has_version -d sys-kernel/linux-firmware; then
|
|
||||||
ewarn "sys-kernel/linux-firmware[-redistributable] not found installed"
|
|
||||||
ewarn "on your system. This package provides various firmware files that"
|
|
||||||
ewarn "may be needed for your hardware to work. If in doubt, it is recommended"
|
|
||||||
ewarn "to pause or abort the build process and install it before"
|
|
||||||
ewarn "resuming."
|
|
||||||
|
|
||||||
if use initramfs; then
|
|
||||||
elog
|
|
||||||
elog "If you decide to install linux-firmware later, you can rebuild"
|
|
||||||
elog "the initramfs via issuing a command equivalent to:"
|
|
||||||
elog
|
|
||||||
elog " emerge --config ${CATEGORY}/${PN}:${SLOT}"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_unpack() {
|
|
||||||
if use verify-sig; then
|
|
||||||
FILE="${DISTDIR}"/linux-libre-${PV}-gnu.tar.xz
|
|
||||||
SIGFILE="${DISTDIR}"/linux-libre-${PV}-gnu.tar.xz.sign
|
|
||||||
verify-sig_verify_detached $FILE $SIGFILE
|
|
||||||
fi
|
|
||||||
|
|
||||||
default
|
|
||||||
}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
local PATCHES
|
|
||||||
if use gentoo; then
|
|
||||||
PATCHES="
|
|
||||||
${WORKDIR}/1500_XATTR_USER_PREFIX.patch
|
|
||||||
${WORKDIR}/1510_fs-enable-link-security-restrictions-by-default.patch
|
|
||||||
${WORKDIR}/2000_BT-Check-key-sizes-only-if-Secure-Simple-Pairing-enabled.patch
|
|
||||||
${WORKDIR}/2900_tmp513-Fix-build-issue-by-selecting-CONFIG_REG.patch
|
|
||||||
${WORKDIR}/2920_sign-file-patch-for-libressl.patch
|
|
||||||
${WORKDIR}/2930_gcc-plugins-Reorg-gimple-incs-for-gcc-13.patch
|
|
||||||
${WORKDIR}/2940_gcc-plugins-drop-std-gnu-plus-plus-to-fix-GCC-13-build.patch
|
|
||||||
${WORKDIR}/3000_Support-printing-firmware-info.patch
|
|
||||||
${WORKDIR}/4567_distro-Gentoo-Kconfig.patch
|
|
||||||
"
|
|
||||||
else
|
|
||||||
PATCHES="${WORKDIR}/4567_distro-Gentoo-Kconfig.patch"
|
|
||||||
fi
|
|
||||||
|
|
||||||
default
|
|
||||||
|
|
||||||
local biendian=false
|
|
||||||
|
|
||||||
# prepare the default config
|
|
||||||
case ${ARCH} in
|
|
||||||
amd64)
|
|
||||||
cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die
|
|
||||||
;;
|
|
||||||
arm)
|
|
||||||
return
|
|
||||||
;;
|
|
||||||
arm64)
|
|
||||||
cp "${DISTDIR}/kernel-aarch64-fedora.config.${CONFIG_VER}" .config || die
|
|
||||||
biendian=true
|
|
||||||
;;
|
|
||||||
hppa)
|
|
||||||
return
|
|
||||||
;;
|
|
||||||
ppc)
|
|
||||||
# assume powermac/powerbook defconfig
|
|
||||||
# we still package.use.force savedconfig
|
|
||||||
cp "${WORKDIR}/${MY_P}/arch/powerpc/configs/pmac32_defconfig" .config || die
|
|
||||||
;;
|
|
||||||
ppc64)
|
|
||||||
cp "${DISTDIR}/kernel-ppc64le-fedora.config.${CONFIG_VER}" .config || die
|
|
||||||
biendian=true
|
|
||||||
;;
|
|
||||||
x86)
|
|
||||||
cp "${DISTDIR}/kernel-i686-fedora.config.${CONFIG_VER}" .config || die
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
die "Unsupported arch ${ARCH}"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
sed -i 's/EXTRAVERSION = -gnu/EXTRAVERSION = /' "${S}"/Makefile || die 'could not remove EXTRAVERSION'
|
|
||||||
local myversion="-gnu-dist"
|
|
||||||
echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die
|
|
||||||
local dist_conf_path="${WORKDIR}/gentoo-kernel-config-${GENTOO_CONFIG_VER}"
|
|
||||||
|
|
||||||
local merge_configs=(
|
|
||||||
"${T}"/version.config
|
|
||||||
"${dist_conf_path}"/base.config
|
|
||||||
)
|
|
||||||
use debug || merge_configs+=(
|
|
||||||
"${dist_conf_path}"/no-debug.config
|
|
||||||
)
|
|
||||||
|
|
||||||
# this covers ppc64 and aarch64_be only for now
|
|
||||||
if [[ ${biendian} == true && $(tc-endian) == big ]]; then
|
|
||||||
merge_configs+=( "${dist_conf_path}/big-endian.config" )
|
|
||||||
fi
|
|
||||||
|
|
||||||
kernel-build_merge_configs "${merge_configs[@]}"
|
|
||||||
}
|
|
|
@ -1,170 +0,0 @@
|
||||||
# Copyright 2020-2023 Gentoo Authors, projectmoon
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
|
|
||||||
inherit kernel-build verify-sig
|
|
||||||
|
|
||||||
BASE_VER="$(ver_cut 1).$(ver_cut 2).$(ver_cut 3)"
|
|
||||||
RESTRICT="mirror"
|
|
||||||
|
|
||||||
# https://koji.fedoraproject.org/koji/packageinfo?packageID=8
|
|
||||||
GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 2 ))
|
|
||||||
CONFIG_VER=6.1.7-gentoo
|
|
||||||
GENTOO_CONFIG_VER=g6
|
|
||||||
|
|
||||||
DESCRIPTION="GNU Linux-libre kernel built from upstream sources"
|
|
||||||
HOMEPAGE="https://www.fsfla.org/ikiwiki/selibre/linux-libre/"
|
|
||||||
SRC_URI+="
|
|
||||||
https://git.agnos.is/projectmoon/projectmoon-overlay-files/media/branch/main/sys-kernel/libre-kernel/linux-libre-${BASE_VER}-gnu.tar.xz
|
|
||||||
https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.base.tar.xz
|
|
||||||
https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.extras.tar.xz
|
|
||||||
https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz
|
|
||||||
-> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz
|
|
||||||
verify-sig? (
|
|
||||||
https://git.agnos.is/projectmoon/projectmoon-overlay-files/media/branch/main/sys-kernel/libre-kernel/linux-libre-${BASE_VER}-gnu.tar.xz.sign
|
|
||||||
)
|
|
||||||
amd64? (
|
|
||||||
https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config
|
|
||||||
-> kernel-x86_64-fedora.config.${CONFIG_VER}
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
# Workdir is named linux-PV.
|
|
||||||
MY_P=linux-${PV}
|
|
||||||
S=${WORKDIR}/${MY_P}
|
|
||||||
|
|
||||||
LICENSE="GPL-2"
|
|
||||||
KEYWORDS="amd64"
|
|
||||||
IUSE="debug +gentoo"
|
|
||||||
|
|
||||||
BDEPEND="
|
|
||||||
debug? ( dev-util/pahole )
|
|
||||||
verify-sig? ( sec-keys/openpgp-keys-linux-libre )
|
|
||||||
"
|
|
||||||
PDEPEND="
|
|
||||||
>=virtual/dist-kernel-${PV}
|
|
||||||
"
|
|
||||||
|
|
||||||
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/linux-libre.asc
|
|
||||||
|
|
||||||
pkg_pretend() {
|
|
||||||
if has_version -d sys-kernel/linux-firmware[redistributable]; then
|
|
||||||
ewarn "sys-kernel/linux-firmware was found installed on your system,"
|
|
||||||
ewarn "but it is configured to install non-Free firmware files."
|
|
||||||
ewarn "The non-Free firmware files may be required for some hardware"
|
|
||||||
ewarn "work. The Linux-libre kernel cannot load non-Free firmware."
|
|
||||||
ewarn "To install only the Free firmware, set the -redistributable"
|
|
||||||
ewarn "USE flag on sys-kernel/linux-firmware."
|
|
||||||
|
|
||||||
if use initramfs; then
|
|
||||||
elog
|
|
||||||
elog "If you decide to change or remove linux-firmware later, you"
|
|
||||||
elog "can rebuild the initramfs via issuing a command equivalent to:"
|
|
||||||
elog
|
|
||||||
elog " emerge --config ${CATEGORY}/${PN}:${SLOT}"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
if ! has_version -d sys-kernel/linux-firmware; then
|
|
||||||
ewarn "sys-kernel/linux-firmware[-redistributable] not found installed"
|
|
||||||
ewarn "on your system. This package provides various firmware files that"
|
|
||||||
ewarn "may be needed for your hardware to work. If in doubt, it is recommended"
|
|
||||||
ewarn "to pause or abort the build process and install it before"
|
|
||||||
ewarn "resuming."
|
|
||||||
|
|
||||||
if use initramfs; then
|
|
||||||
elog
|
|
||||||
elog "If you decide to install linux-firmware later, you can rebuild"
|
|
||||||
elog "the initramfs via issuing a command equivalent to:"
|
|
||||||
elog
|
|
||||||
elog " emerge --config ${CATEGORY}/${PN}:${SLOT}"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_unpack() {
|
|
||||||
if use verify-sig; then
|
|
||||||
FILE="${DISTDIR}"/linux-libre-${PV}-gnu.tar.xz
|
|
||||||
SIGFILE="${DISTDIR}"/linux-libre-${PV}-gnu.tar.xz.sign
|
|
||||||
verify-sig_verify_detached $FILE $SIGFILE
|
|
||||||
fi
|
|
||||||
|
|
||||||
default
|
|
||||||
}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
local PATCHES
|
|
||||||
if use gentoo; then
|
|
||||||
PATCHES="
|
|
||||||
${WORKDIR}/1500_XATTR_USER_PREFIX.patch
|
|
||||||
${WORKDIR}/1510_fs-enable-link-security-restrictions-by-default.patch
|
|
||||||
${WORKDIR}/2000_BT-Check-key-sizes-only-if-Secure-Simple-Pairing-enabled.patch
|
|
||||||
${WORKDIR}/2900_tmp513-Fix-build-issue-by-selecting-CONFIG_REG.patch
|
|
||||||
${WORKDIR}/2910_bfp-mark-get-entry-ip-as--maybe-unused.patch
|
|
||||||
${WORKDIR}/2920_sign-file-patch-for-libressl.patch
|
|
||||||
${WORKDIR}/2930_gcc-plugins-Reorg-gimple-incs-for-gcc-13.patch
|
|
||||||
${WORKDIR}/2940_gcc-plugins-drop-std-gnu-plus-plus-to-fix-GCC-13-build.patch
|
|
||||||
${WORKDIR}/3000_Support-printing-firmware-info.patch
|
|
||||||
${WORKDIR}/4567_distro-Gentoo-Kconfig.patch
|
|
||||||
"
|
|
||||||
else
|
|
||||||
PATCHES="${WORKDIR}/4567_distro-Gentoo-Kconfig.patch"
|
|
||||||
fi
|
|
||||||
|
|
||||||
default
|
|
||||||
|
|
||||||
local biendian=false
|
|
||||||
|
|
||||||
# prepare the default config
|
|
||||||
case ${ARCH} in
|
|
||||||
amd64)
|
|
||||||
cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die
|
|
||||||
;;
|
|
||||||
arm)
|
|
||||||
return
|
|
||||||
;;
|
|
||||||
arm64)
|
|
||||||
cp "${DISTDIR}/kernel-aarch64-fedora.config.${CONFIG_VER}" .config || die
|
|
||||||
biendian=true
|
|
||||||
;;
|
|
||||||
hppa)
|
|
||||||
return
|
|
||||||
;;
|
|
||||||
ppc)
|
|
||||||
# assume powermac/powerbook defconfig
|
|
||||||
# we still package.use.force savedconfig
|
|
||||||
cp "${WORKDIR}/${MY_P}/arch/powerpc/configs/pmac32_defconfig" .config || die
|
|
||||||
;;
|
|
||||||
ppc64)
|
|
||||||
cp "${DISTDIR}/kernel-ppc64le-fedora.config.${CONFIG_VER}" .config || die
|
|
||||||
biendian=true
|
|
||||||
;;
|
|
||||||
x86)
|
|
||||||
cp "${DISTDIR}/kernel-i686-fedora.config.${CONFIG_VER}" .config || die
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
die "Unsupported arch ${ARCH}"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
sed -i 's/EXTRAVERSION = -gnu/EXTRAVERSION = /' "${S}"/Makefile || die 'could not remove EXTRAVERSION'
|
|
||||||
local myversion="-gnu-dist"
|
|
||||||
echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die
|
|
||||||
local dist_conf_path="${WORKDIR}/gentoo-kernel-config-${GENTOO_CONFIG_VER}"
|
|
||||||
|
|
||||||
local merge_configs=(
|
|
||||||
"${T}"/version.config
|
|
||||||
"${dist_conf_path}"/base.config
|
|
||||||
)
|
|
||||||
use debug || merge_configs+=(
|
|
||||||
"${dist_conf_path}"/no-debug.config
|
|
||||||
)
|
|
||||||
|
|
||||||
# this covers ppc64 and aarch64_be only for now
|
|
||||||
if [[ ${biendian} == true && $(tc-endian) == big ]]; then
|
|
||||||
merge_configs+=( "${dist_conf_path}/big-endian.config" )
|
|
||||||
fi
|
|
||||||
|
|
||||||
kernel-build_merge_configs "${merge_configs[@]}"
|
|
||||||
}
|
|
|
@ -1,147 +0,0 @@
|
||||||
# Copyright 2020-2023 Gentoo Authors, projectmoon
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
|
|
||||||
inherit kernel-build verify-sig
|
|
||||||
|
|
||||||
BASE_VER="$(ver_cut 1).$(ver_cut 2).$(ver_cut 3)"
|
|
||||||
RESTRICT="mirror"
|
|
||||||
|
|
||||||
# https://koji.fedoraproject.org/koji/packageinfo?packageID=8
|
|
||||||
GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 2 ))
|
|
||||||
CONFIG_VER=6.1.7-gentoo
|
|
||||||
GENTOO_CONFIG_VER=g6
|
|
||||||
|
|
||||||
DESCRIPTION="GNU Linux-libre kernel built from upstream sources"
|
|
||||||
HOMEPAGE="https://www.fsfla.org/ikiwiki/selibre/linux-libre/"
|
|
||||||
SRC_URI+="
|
|
||||||
https://git.agnos.is/projectmoon/projectmoon-overlay-files/media/branch/main/sys-kernel/libre-kernel/linux-libre-${BASE_VER}-gnu.tar.xz
|
|
||||||
https://linux-libre.fsfla.org/pub/linux-libre/releases/${BASE_VER}-gnu/linux-libre-${BASE_VER}-gnu.tar.xz
|
|
||||||
https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.base.tar.xz
|
|
||||||
https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.extras.tar.xz
|
|
||||||
https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz
|
|
||||||
-> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz
|
|
||||||
verify-sig? (
|
|
||||||
https://git.agnos.is/projectmoon/projectmoon-overlay-files/media/branch/main/sys-kernel/libre-kernel/linux-libre-${BASE_VER}-gnu.tar.xz.sign
|
|
||||||
)
|
|
||||||
amd64? (
|
|
||||||
https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config
|
|
||||||
-> kernel-x86_64-fedora.config.${CONFIG_VER}
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
# Workdir is named linux-PV.
|
|
||||||
MY_P=linux-${PV}
|
|
||||||
S=${WORKDIR}/${MY_P}
|
|
||||||
|
|
||||||
LICENSE="GPL-2"
|
|
||||||
KEYWORDS="amd64"
|
|
||||||
IUSE="debug +gentoo"
|
|
||||||
|
|
||||||
BDEPEND="
|
|
||||||
debug? ( dev-util/pahole )
|
|
||||||
verify-sig? ( sec-keys/openpgp-keys-linux-libre )
|
|
||||||
"
|
|
||||||
PDEPEND="
|
|
||||||
>=virtual/dist-kernel-${PV}
|
|
||||||
"
|
|
||||||
|
|
||||||
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/linux-libre.asc
|
|
||||||
|
|
||||||
pkg_pretend() {
|
|
||||||
if has_version -d sys-kernel/linux-firmware[redistributable]; then
|
|
||||||
ewarn "sys-kernel/linux-firmware was found installed on your system,"
|
|
||||||
ewarn "but it is configured to install non-Free firmware files."
|
|
||||||
ewarn "The non-Free firmware files may be required for some hardware"
|
|
||||||
ewarn "work. The Linux-libre kernel cannot load non-Free firmware."
|
|
||||||
ewarn "To install only the Free firmware, set the -redistributable"
|
|
||||||
ewarn "USE flag on sys-kernel/linux-firmware."
|
|
||||||
|
|
||||||
if use initramfs; then
|
|
||||||
elog
|
|
||||||
elog "If you decide to change or remove linux-firmware later, you"
|
|
||||||
elog "can rebuild the initramfs via issuing a command equivalent to:"
|
|
||||||
elog
|
|
||||||
elog " emerge --config ${CATEGORY}/${PN}:${SLOT}"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
if ! has_version -d sys-kernel/linux-firmware; then
|
|
||||||
ewarn "sys-kernel/linux-firmware[-redistributable] not found installed"
|
|
||||||
ewarn "on your system. This package provides various firmware files that"
|
|
||||||
ewarn "may be needed for your hardware to work. If in doubt, it is recommended"
|
|
||||||
ewarn "to pause or abort the build process and install it before"
|
|
||||||
ewarn "resuming."
|
|
||||||
|
|
||||||
if use initramfs; then
|
|
||||||
elog
|
|
||||||
elog "If you decide to install linux-firmware later, you can rebuild"
|
|
||||||
elog "the initramfs via issuing a command equivalent to:"
|
|
||||||
elog
|
|
||||||
elog " emerge --config ${CATEGORY}/${PN}:${SLOT}"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_unpack() {
|
|
||||||
if use verify-sig; then
|
|
||||||
FILE="${DISTDIR}"/linux-libre-${PV}-gnu.tar.xz
|
|
||||||
SIGFILE="${DISTDIR}"/linux-libre-${PV}-gnu.tar.xz.sign
|
|
||||||
verify-sig_verify_detached $FILE $SIGFILE
|
|
||||||
fi
|
|
||||||
|
|
||||||
default
|
|
||||||
}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
local PATCHES
|
|
||||||
if use gentoo; then
|
|
||||||
# Fiters out the kernel incremenetal version upgrade patches,
|
|
||||||
# leaving only the Gentoo bug fix/functionality changes. The
|
|
||||||
# regex removes any patches starting with 10XX to 14XX.
|
|
||||||
MY_PATCHES=$(find "${WORKDIR}"/*.patch -printf "%f\n" | grep -v -E -e '^1[01234][[:digit:]][[:digit:]]_.+.patch')
|
|
||||||
PATCHES=$(echo "$MY_PATCHES" | sed 's|^|'"${WORKDIR}/"'|g')
|
|
||||||
else
|
|
||||||
# If no patches are to be applied, apply only the config changes
|
|
||||||
# for a Gentoo installation, as this does not change any actual
|
|
||||||
# Kernel functionality.
|
|
||||||
PATCHES="${WORKDIR}/4567_distro-Gentoo-Kconfig.patch"
|
|
||||||
fi
|
|
||||||
|
|
||||||
default
|
|
||||||
|
|
||||||
local biendian=false
|
|
||||||
|
|
||||||
# prepare the default config
|
|
||||||
case ${ARCH} in
|
|
||||||
amd64)
|
|
||||||
cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
die "Unsupported arch ${ARCH}"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
sed -i 's/EXTRAVERSION = -gnu/EXTRAVERSION = /' "${S}"/Makefile || \
|
|
||||||
die 'could not remove EXTRAVERSION'
|
|
||||||
|
|
||||||
local myversion="-gnu-dist"
|
|
||||||
echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die
|
|
||||||
local dist_conf_path="${WORKDIR}/gentoo-kernel-config-${GENTOO_CONFIG_VER}"
|
|
||||||
|
|
||||||
local merge_configs=(
|
|
||||||
"${T}"/version.config
|
|
||||||
"${dist_conf_path}"/base.config
|
|
||||||
)
|
|
||||||
use debug || merge_configs+=(
|
|
||||||
"${dist_conf_path}"/no-debug.config
|
|
||||||
)
|
|
||||||
|
|
||||||
# this covers ppc64 and aarch64_be only for now
|
|
||||||
if [[ ${biendian} == true && $(tc-endian) == big ]]; then
|
|
||||||
merge_configs+=( "${dist_conf_path}/big-endian.config" )
|
|
||||||
fi
|
|
||||||
|
|
||||||
kernel-build_merge_configs "${merge_configs[@]}"
|
|
||||||
}
|
|
Loading…
Reference in New Issue