From 5d1098bd34cbbc44d0b26fee2fac33d57ba889b7 Mon Sep 17 00:00:00 2001 From: Tasos Sahanidis Date: Sun, 3 Mar 2024 10:03:38 +0200 Subject: Revert "extra/linux-pae: Remove package temporarily" This reverts commit c7935239e47fc22ffb0d5b0e95e9794e9f52a0a6. --- extra/linux-pae/PKGBUILD | 145 + extra/linux-pae/PKGBUILD_upstream_linux | 242 + extra/linux-pae/config | 1 + extra/linux-pae/config.i486 | 11782 ++++++++++++++++++ extra/linux-pae/config.i686 | 11845 +++++++++++++++++++ extra/linux-pae/config.pentium4 | 11845 +++++++++++++++++++ extra/linux-pae/config.x86_64 | 11708 ++++++++++++++++++ .../647F28654894E3BD457199BE38DBBDC86092693E.asc | 78 + .../83BC8889351B5DEBBB68416EB8AC08600F108CDF.asc | 22 + .../ABAF11C65A2970B130ABE3C479BE3E4300411886.asc | 37 + extra/linux-pae/no-ultra-zstd.patch | Bin 0 -> 667 bytes 11 files changed, 47705 insertions(+) create mode 100644 extra/linux-pae/PKGBUILD create mode 100644 extra/linux-pae/PKGBUILD_upstream_linux create mode 120000 extra/linux-pae/config create mode 100644 extra/linux-pae/config.i486 create mode 100644 extra/linux-pae/config.i686 create mode 100644 extra/linux-pae/config.pentium4 create mode 100644 extra/linux-pae/config.x86_64 create mode 100644 extra/linux-pae/keys/pgp/647F28654894E3BD457199BE38DBBDC86092693E.asc create mode 100644 extra/linux-pae/keys/pgp/83BC8889351B5DEBBB68416EB8AC08600F108CDF.asc create mode 100644 extra/linux-pae/keys/pgp/ABAF11C65A2970B130ABE3C479BE3E4300411886.asc create mode 100644 extra/linux-pae/no-ultra-zstd.patch (limited to 'extra/linux-pae') diff --git a/extra/linux-pae/PKGBUILD b/extra/linux-pae/PKGBUILD new file mode 100644 index 00000000..a40c9c30 --- /dev/null +++ b/extra/linux-pae/PKGBUILD @@ -0,0 +1,145 @@ +source <(sed 's/^pkgbase=linux$/pkgbase=linux-pae/' "${BASH_SOURCE%/*}/PKGBUILD_upstream_linux") + +# upstream git revision: 3cfc65aa439e42f6dd539f29d3ebb972c5508f7e + +source+=('config.x86_64') +sha256sums+=('04143712e593d45a597661fe00f89cf92d52c62df3468c68a46c952c2ef4db64') +b2sums+=('21083151bdcd0fc2bcc0475b9cd73bab5666a71f043eedd67b19a3a4c09c8253a5a06794ce9270215782f5885e05e70b5e424123f1bded7aa7a6d3f30d02a4b3') +source_pentium4=('config.pentium4') +source_i686=('config.i686') +source_i486=('config.i486') +# fail if upstream's .config changes +for ((i=0; i<${#b2sums[@]}; i++)); do + if [ "${b2sums[${i}]}" = '21083151bdcd0fc2bcc0475b9cd73bab5666a71f043eedd67b19a3a4c09c8253a5a06794ce9270215782f5885e05e70b5e424123f1bded7aa7a6d3f30d02a4b3' ]; then + b2sums_pentium4=('759861f49726995d56e2fea96b60622d67fd43c8f8643b183ea0ee1efbe86e98c1435561e2d9ef3c58d581e8a6d147c8a11f4de97c2aaa25231b26db9e1c4859') + b2sums_i686=('3c716e2c37196cb9be479e3dfddaa1ad36da4053dfdd8c84a9141289d958e2c995795a13f683507bf2a6fa09f4ccaf52a576b6589c93bd36bd934c2a1ee34312') + b2sums_i486=('21e9e76c23d6ef348f5e54480ee3f16fb6c86d67c9103fea30fec91102e3695ebf53fa970bc8a7b842fd4763defd02b92bbd099bf77dccd4abd627f879425c06') + fi +done + +# copy architecture specific config file, not default 'config' +eval "$( + declare -f prepare | \ + sed ' + s,\.\./config,../config.$CARCH, + ' +)" + +# patch architecture when copying the kernel Makefile +eval "$( + declare -f package_linux-headers | \ + sed ' + \,/tools/objtool" ,d + \,arch/x86/Makefile, { + a \ + install -t "${builddir}/arch/x86" -m644 arch/x86/Makefile_32.cpu + } + $ i depends+=(gcc-libs=$(_get_gcc_version_from_config)) + ' +)" + +_get_gcc_version_from_config() { + if [ -z "$srcdir" ]; then + gcc --version \ + | sed ' + s@^.* @@ + 1!d + ' + else + for _config_file in "$srcdir/$_srcname/.config" "$srcdir/config" "${srcdir%/*}/config"; do + [ -f "$_config_file" ] && break + done + sed ' + s/^CONFIG_CC_VERSION_TEXT="gcc (GCC) \([0-9.]\+\)"$/\1/ + t + d + ' "$_config_file" + fi +} + +# use our tarballer instead of cloning from git +for ((i=0; i<${#source[@]}; i++)); do + infos=$( + printf '%s\n' "${source[${i}]}" | \ + sed ' + s@^\(\([^:]\+\)::\)\?\(git\|hg\)+\([^#?]\+\)\(?signed\)\?#\(\(tag\|commit\)=[^?]\+\)$@\3 \2 \4 \5 \6@ + t + s@^\(\([^:]\+\)::\)\?\(git\|hg\)+\([^#?]\+\)#\(\(tag\|commit\)=[^?]\+\)\(?signed\)\?$@\3 \2 \4 \7 \5@ + t + d + ' + ) + if [ -n "${infos}" ]; then + source[${i}]=$( + type="${infos%% *}" + infos="${infos#* }" + if [ -n "${infos%% *}" ]; then + prefix="${infos%% *}" + else + prefix='' + fi + infos="${infos#* }" + repo="${infos%% *}" + repo64=$( + printf '%s' "${repo}" | \ + base64 -w0 | \ + sed 's/=/%3D/g' + ) + infos="${infos#* }" + if [ "${infos%% *}" = '?signed' ]; then + key_check=$( + printf '&valid_keys=' + printf '%s,' "${validpgpkeys[@]}" | \ + sed 's/,$//' + ) + else + key_check='' + fi + infos="${infos#* }" + if [ -z "${prefix}" ]; then + prefix="${repo%.git}" + prefix="${prefix##*/}" + fi + prefix_64=$( + printf '%s/' "${prefix}" | \ + base64 -w0 | \ + sed 's/=/%3D/g' + ) + + printf '%s-%s.tar.gz::https://archive-server.archlinux32.org/?t=%s&p=%s&r=%s%s&%s\n' \ + "${prefix}" \ + "${pkgver}" \ + "${type}" \ + "${prefix_64}" \ + "${repo64}" \ + "${key_check}" \ + "${infos}" + ) + fi +done + +# upstream prepare() does already do the *.patch patching + +# avoid using zstd compression in ultra mode (exhausts virtual memory) +source+=('no-ultra-zstd.patch') +sha256sums+=('d32270be5fd9c3e3ba50f3aef33f6cfcb85be0c8216f03b777287cc621fdff28') +b2sums+=('165ab9dd8cedeaae5327accc1581c19cf0be55f923b03feb889cad3351b74c7c4cd3d3c206938e5152bfe1d947513dea8f630f8f5544099ec13d16d254725c40') + +# temporarily disabled documentation due to sphinx_rtd_theme (FS32#163) +pkgname=( + $( + printf '%s\n' "${pkgname[@]}" | \ + grep -v '^\$pkgbase-docs' + ) +) +eval "$( + declare -f build | \ + sed ' + s/\bhtmldocs\b// + ' +)" +makedepends=(${makedepends[@]//python-sphinx_rtd_theme/}) +makedepends=(${makedepends[@]//python-sphinx<6.0.0/}) +makedepends=(${makedepends[@]//graphviz/}) +makedepends=(${makedepends[@]//imagemagick/}) +makedepends=(${makedepends[@]//texlive-latexextra/}) diff --git a/extra/linux-pae/PKGBUILD_upstream_linux b/extra/linux-pae/PKGBUILD_upstream_linux new file mode 100644 index 00000000..64753de7 --- /dev/null +++ b/extra/linux-pae/PKGBUILD_upstream_linux @@ -0,0 +1,242 @@ +# Maintainer: Jan Alexander Steffens (heftig) + +pkgbase=linux +pkgver=6.7.7.arch1 +pkgrel=1 +pkgdesc='Linux' +url='https://github.com/archlinux/linux' +arch=(x86_64) +license=(GPL2) +makedepends=( + bc + cpio + gettext + libelf + pahole + perl + python + tar + xz + + # htmldocs + graphviz + imagemagick + python-sphinx + texlive-latexextra +) +options=('!strip') +_srcname=linux-${pkgver%.*} +_srctag=v${pkgver%.*}-${pkgver##*.} +source=( + https://cdn.kernel.org/pub/linux/kernel/v${pkgver%%.*}.x/${_srcname}.tar.{xz,sign} + $url/releases/download/$_srctag/linux-$_srctag.patch.zst{,.sig} + config # the main kernel config file +) +validpgpkeys=( + ABAF11C65A2970B130ABE3C479BE3E4300411886 # Linus Torvalds + 647F28654894E3BD457199BE38DBBDC86092693E # Greg Kroah-Hartman + 83BC8889351B5DEBBB68416EB8AC08600F108CDF # Jan Alexander Steffens (heftig) +) +# https://www.kernel.org/pub/linux/kernel/v6.x/sha256sums.asc +sha256sums=('256b8b44570ddbe266eb3ad0c2cba2616f1609b4a3de5014a3da5512907b14d9' + 'SKIP' + '47208683675e5ad065c9a3821aa975fdb3c37d7d7d77222da4d6f8c3f09827d1' + 'SKIP' + '04143712e593d45a597661fe00f89cf92d52c62df3468c68a46c952c2ef4db64') +b2sums=('ef97a036ab6cd421200b2e8f0a49c6b570d2269a5e182ea948d48d456e6414bfa61f5f6efa2bad65efbe811d2078a54a4edff9c27de609401160f3905fe27a22' + 'SKIP' + '45e0ef14e26323bbd2457f77e4c1e9fc0c2d6fb028bb24814d38c2ebfbeaa2aee29cad2f5154df372d098856cf7f3fcd585575e5b95b93cba47ee5de9f92b8e0' + 'SKIP' + '21083151bdcd0fc2bcc0475b9cd73bab5666a71f043eedd67b19a3a4c09c8253a5a06794ce9270215782f5885e05e70b5e424123f1bded7aa7a6d3f30d02a4b3') + +export KBUILD_BUILD_HOST=archlinux +export KBUILD_BUILD_USER=$pkgbase +export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})" + +prepare() { + cd $_srcname + + echo "Setting version..." + echo "-$pkgrel" > localversion.10-pkgrel + echo "${pkgbase#linux}" > localversion.20-pkgname + + local src + for src in "${source[@]}"; do + src="${src%%::*}" + src="${src##*/}" + src="${src%.zst}" + [[ $src = *.patch ]] || continue + echo "Applying patch $src..." + patch -Np1 < "../$src" + done + + echo "Setting config..." + cp ../config .config + make olddefconfig + diff -u ../config .config || : + + make -s kernelrelease > version + echo "Prepared $pkgbase version $(