diff options
author | bill-auger <mr.j.spam.me@gmail.com> | 2022-07-22 23:55:53 -0400 |
---|---|---|
committer | bill-auger <mr.j.spam.me@gmail.com> | 2022-07-22 23:55:53 -0400 |
commit | e73290a7c64cecdac22b11bc2f48d71024e74f73 (patch) | |
tree | 4297e4882843f70b237c884400bdb7d33e27a192 /libre | |
parent | 43762a8ab258defc08c991c6d355883befb14f8d (diff) | |
download | abslibre-e73290a7c64cecdac22b11bc2f48d71024e74f73.tar.gz abslibre-e73290a7c64cecdac22b11bc2f48d71024e74f73.tar.bz2 abslibre-e73290a7c64cecdac22b11bc2f48d71024e74f73.zip |
sq - linux-libre-64
Diffstat (limited to 'libre')
-rw-r--r-- | libre/linux-libre-64/PKGBUILD | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/libre/linux-libre-64/PKGBUILD b/libre/linux-libre-64/PKGBUILD index 20f495065..fc190ef36 100644 --- a/libre/linux-libre-64/PKGBUILD +++ b/libre/linux-libre-64/PKGBUILD @@ -1,4 +1,7 @@ # Contributor: David P. <megver83@parabola.nu> +# Maintainer (arch32): Erich Eckner <deep42thought@archlinux32.org> +# Maintainer (arch32): Andreas Baumann <mail@andreasbaumann.cc> +# Maintainer (archarm): Kevin Mihelich <kevin@archlinuxarm.org> # Contributor: André Silva <emulatorman@hyperbola.info> # Contributor: Márcio Silva <coadde@hyperbola.info> # Contributor: fauno <fauno@parabola.nu> @@ -10,6 +13,55 @@ # Based on linux package +# Rationale: This package enables to run 64bit kernels with 32bit rootfs. +# +# For armv7k/aarch64, we have no aarch64 port yet, and the 32bit +# kernels don't work for 64bit computers (no 64bit DTB files, etc). +# +# In turn if we can boot Parabola on these computers, it enables +# people to work on an aarch64 port more easily as chrooting in 64bit +# rootfs from 32bit rootfs work when we have a 64bit kernel (tested on +# an x86_64 computer with a Parabola i686 rootfs and a Parabola x86_64 +# chroot). +# +# This enable to make rootfs that work on both 64bit and 32bit +# computers. In that case the user will still need to select the right +# kernel at boot. +# +# Generally speaking it also enable users to benefit from many of the +# improvements of 64bit kernels (ability to chroot in 64bit rootfs, +# better security, 4GiB address space per process instead of 3GiB for +# 32bit rootfs, etc) without having to reinstall everything. In +# addition, there was and is still no conversion guide to convert a +# 32bit Parabola installation to 64bit), and in some cases (lot of +# self-built software in /usr/local, PostgreSQL database, etc) the +# migration to 64bit requires some work. +# +# As for using i686 for new installation on x86_64 computers, it can +# enable people doing that to find and fix bugs on Parabola i686 to +# enable people with 32bit-only computers (like Libreboot compatible +# I945 Thinkpads) to still be able to use Parabola. +# +# Having both architectures (arm and x86) in the same PKGBUILD enables +# to more widely test this package (if we find issues on x86, they'll +# most likely apply to arm as well). Though it can become a problem if +# we need different kernel versions for both architectures. +# +# Status: +# - Tested on both arm and x86. +# - The build is currently broken on ARM due to a missing cross +# compiler for armv7h (it was accidentally removed and it doesn't +# build anymore). +# - External modules (like Wireguard or tp_smapi) also need to be +# cross compiled. So modules for linux-libre-64 need to be added +# (like tp_smapi-64) and dkms packages need to be adapted to also +# work for this kernel. +# - Some software (like building Guix) break with 32bit rootfs and +# 64bit kernels due to wrong assumption about the number of bits, +# through other software (like building rust with mrustc) work +# better (here because we have 3GiB instead of 3GiB of memory per +# process). Most software is not affected though. + # WIP: This PKGBUILD is derived from the 'linux-libre' PKGBUILD, # and includes a lot of unused cruft, to minimize the diff. # Eventually, these differences can be merged into linux-libre, @@ -157,6 +209,7 @@ case "$CARCH" in i686|x86_64) KARCH=x86;; armv7h) KARCH=arm;; esac +pkgdesc+=" 64-bit (${CROSS_COMPILE%%-*}) for Parabola ${CARCH}" # cross-compile over-ride export KBUILD_BUILD_HOST=parabola export KBUILD_BUILD_USER=$pkgbase |