forked from JeremyStarTM/aur-linux-clear
Compare commits
22 commits
YF-allow-u
...
develop
Author | SHA1 | Date | |
---|---|---|---|
d70024da20 | |||
6258f9892c | |||
abff9518a7 | |||
3dd576acca | |||
4dea0881c4 | |||
d0fecf90fe | |||
795a54ebd2 | |||
2e93191001 | |||
476799e2f9 | |||
ce9c9a0c58 | |||
da9d48894a | |||
756a7d02ae | |||
9b161b9007 | |||
8e623b5eb2 | |||
0bc05764dc | |||
a50b50bd58 | |||
166084968d | |||
ff0209bf6e | |||
e8b74c03b1 | |||
5f6ce75201 | |||
10f612396a | |||
683ce48c96 |
6 changed files with 117 additions and 59 deletions
6
.SRCINFO
6
.SRCINFO
|
@ -1,6 +1,6 @@
|
||||||
pkgbase = linux-clear
|
pkgbase = linux-clear
|
||||||
pkgdesc = Linux kernel with patches from Clear Linux which allow for higher performance.
|
pkgdesc = Linux kernel with patches from Clear Linux which allow for higher performance.
|
||||||
pkgver = 6.12.4
|
pkgver = 6.12.6
|
||||||
pkgrel = 1
|
pkgrel = 1
|
||||||
url = https://git.staropensource.de/JeremyStarTM/aur-linux-clear
|
url = https://git.staropensource.de/JeremyStarTM/aur-linux-clear
|
||||||
arch = x86_64
|
arch = x86_64
|
||||||
|
@ -20,7 +20,7 @@ pkgbase = linux-clear
|
||||||
options = !debug
|
options = !debug
|
||||||
source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.12.tar.xz
|
source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.12.tar.xz
|
||||||
source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.12.tar.sign
|
source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.12.tar.sign
|
||||||
source = https://cdn.kernel.org/pub/linux/kernel/v6.x/patch-6.12.4.xz
|
source = https://cdn.kernel.org/pub/linux/kernel/v6.x/patch-6.12.6.xz
|
||||||
source = cl-linux::git+https://github.com/clearlinux-pkgs/linux.git#tag=6.12.4-1518
|
source = cl-linux::git+https://github.com/clearlinux-pkgs/linux.git#tag=6.12.4-1518
|
||||||
source = more-uarches-20241018.tar.gz::https://github.com/graysky2/kernel_compiler_patch/archive/20241018.tar.gz
|
source = more-uarches-20241018.tar.gz::https://github.com/graysky2/kernel_compiler_patch/archive/20241018.tar.gz
|
||||||
validpgpkeys = ABAF11C65A2970B130ABE3C479BE3E4300411886
|
validpgpkeys = ABAF11C65A2970B130ABE3C479BE3E4300411886
|
||||||
|
@ -29,7 +29,7 @@ pkgbase = linux-clear
|
||||||
validpgpkeys = AC2B29BD34A6AFDDB3F68F35E7BFC8EC95861109
|
validpgpkeys = AC2B29BD34A6AFDDB3F68F35E7BFC8EC95861109
|
||||||
sha256sums = b1a2562be56e42afb3f8489d4c2a7ac472ac23098f1ef1c1e40da601f54625eb
|
sha256sums = b1a2562be56e42afb3f8489d4c2a7ac472ac23098f1ef1c1e40da601f54625eb
|
||||||
sha256sums = SKIP
|
sha256sums = SKIP
|
||||||
sha256sums = ba790766fca3eadade5cf74f0c181a8e42a77556f71d9af4b2bd4a53c8b98641
|
sha256sums = dd7c856f12d3e10f09743c1d3db35f91879d92890c9fb176405783c9c7cb0c54
|
||||||
sha256sums = SKIP
|
sha256sums = SKIP
|
||||||
sha256sums = b3fd8b1c5bbd39a577afcccf6f1119fdf83f6d72119f4c0811801bdd51d1bc61
|
sha256sums = b3fd8b1c5bbd39a577afcccf6f1119fdf83f6d72119f4c0811801bdd51d1bc61
|
||||||
|
|
||||||
|
|
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -1,5 +1,6 @@
|
||||||
cl-linux
|
cl-linux
|
||||||
src
|
src
|
||||||
|
pkg
|
||||||
*.sign
|
*.sign
|
||||||
*.xz
|
*.xz
|
||||||
*.gz
|
*.gz
|
||||||
|
|
16
LICENSE
Normal file
16
LICENSE
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
BSD Zero Clause License
|
||||||
|
|
||||||
|
Copyright (c) 2018-2024 by Josip Ponjavic <josipponjavic@gmail.com>
|
||||||
|
Copyright (c) 2024 by JeremyStarTM <jeremystartm@staropensource.de>
|
||||||
|
Copyright (c) 2024 by Yaraslau Furman <yaro330@gmail.com>
|
||||||
|
|
||||||
|
Permission to use, copy, modify, and/or distribute this software for any
|
||||||
|
purpose with or without fee is hereby granted.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||||
|
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||||
|
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
|
||||||
|
SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||||
|
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
|
||||||
|
OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
|
||||||
|
CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
3
MAINTAINERS.md
Normal file
3
MAINTAINERS.md
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
# Maintainers
|
||||||
|
- [JeremyStarTM](https://git.staropensource.de/JeremyStarTM) <jeremystartm (at) staropensource (dot) de>
|
||||||
|
- [yarost12](https://git.staropensource.de/yarost12) <yaro330 (at) gmail (com) com>
|
59
PKGBUILD
59
PKGBUILD
|
@ -1,8 +1,12 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
# shellcheck disable=SC2034 disable=SC2048 disable=SC2086 disable=SC2154
|
# shellcheck disable=SC2034 disable=SC2048 disable=SC2086 disable=SC2154
|
||||||
# Maintainer: JeremyStarTM <jeremystartm@staropensource.de>
|
|
||||||
# Maintainer: Josip Ponjavic <josipponjavic at gmail dot com>
|
# This PKGBUILD is/was authored by:
|
||||||
# Contributor: yarost12 <yaro330@gmail.com>
|
# - JeremyStarTM <jeremystartm@staropensource.de>
|
||||||
|
# - yarost12 <yaro330@gmail.com>
|
||||||
|
# - Josip Ponjavic <josipponjavic at gmail dot com>
|
||||||
|
#
|
||||||
|
# For a list of maintainers see MAINTAINERS.md
|
||||||
|
|
||||||
### BUILD OPTIONS
|
### BUILD OPTIONS
|
||||||
# You can modify these settings by executing "env _<setting>=<value> makepkg"
|
# You can modify these settings by executing "env _<setting>=<value> makepkg"
|
||||||
|
@ -34,6 +38,10 @@
|
||||||
#
|
#
|
||||||
# Set to anything but null to activate.
|
# Set to anything but null to activate.
|
||||||
: "${_use_current:=""}"
|
: "${_use_current:=""}"
|
||||||
|
: "${_reuse_current:=""}"
|
||||||
|
[[ -n "${_reuse_current}" ]] && \
|
||||||
|
warning "Please switch to using '_use_current' flag instead of '_reuse_current'" && \
|
||||||
|
_use_current="y"
|
||||||
|
|
||||||
# Apply selected optimizations chosen by
|
# Apply selected optimizations chosen by
|
||||||
# the package maintainers to the config.
|
# the package maintainers to the config.
|
||||||
|
@ -45,6 +53,10 @@
|
||||||
#
|
#
|
||||||
# Set to anything but null to activate.
|
# Set to anything but null to activate.
|
||||||
: "${_optimize_defconfig:=""}"
|
: "${_optimize_defconfig:=""}"
|
||||||
|
: "${_update_kconfig_on_reuse:=""}"
|
||||||
|
[[ -n "${_update_kconfig_on_reuse}" ]] && \
|
||||||
|
warning "Please switch to using '_update_kconfig_on_reuse' flag instead of '_optimize_defconfig'" && \
|
||||||
|
_optimize_defconfig="y"
|
||||||
|
|
||||||
# Determines whether the kernel configuration should be
|
# Determines whether the kernel configuration should be
|
||||||
# copied into the source tree before compilation starts.
|
# copied into the source tree before compilation starts.
|
||||||
|
@ -62,9 +74,10 @@
|
||||||
# Set to anything but null to activate.
|
# Set to anything but null to activate.
|
||||||
: "${_localmodcfg:=""}"
|
: "${_localmodcfg:=""}"
|
||||||
|
|
||||||
# Optionally select a sub architecture by number or
|
# Optionally select a sub architecture by number or its Kconfig name,
|
||||||
# leave blank, which will require user interaction during the build.
|
# for example MCORE2 or MZEN4.
|
||||||
# Note that the default option is 41.
|
# Leaving it blank will require user interaction during the build.
|
||||||
|
# Note that the default option is empty.
|
||||||
#
|
#
|
||||||
# 1. AMD Opteron/Athlon64/Hammer/K8 (MK8)
|
# 1. AMD Opteron/Athlon64/Hammer/K8 (MK8)
|
||||||
# 2. AMD Opteron/Athlon64/Hammer/K8 with SSE3 (MK8SSE3)
|
# 2. AMD Opteron/Athlon64/Hammer/K8 with SSE3 (MK8SSE3)
|
||||||
|
@ -143,7 +156,7 @@
|
||||||
|
|
||||||
# Kernel version
|
# Kernel version
|
||||||
_kernel_major=6.12
|
_kernel_major=6.12
|
||||||
_kernel_minor=4
|
_kernel_minor=6
|
||||||
# Clear Linux patches version
|
# Clear Linux patches version
|
||||||
_clr=4-1518
|
_clr=4-1518
|
||||||
# kernel_compiler_patch version
|
# kernel_compiler_patch version
|
||||||
|
@ -173,6 +186,7 @@ source=(
|
||||||
)
|
)
|
||||||
|
|
||||||
[[ -n "${_use_llvm_lto}" ]] && BUILD_FLAGS=("LLVM=1" "LLVM_IAS=1")
|
[[ -n "${_use_llvm_lto}" ]] && BUILD_FLAGS=("LLVM=1" "LLVM_IAS=1")
|
||||||
|
[[ -z "${_debug_script}" ]] && BUILD_FLAGS+=("-s")
|
||||||
|
|
||||||
export "KBUILD_BUILD_HOST=archlinux"
|
export "KBUILD_BUILD_HOST=archlinux"
|
||||||
export "KBUILD_BUILD_USER=${pkgbase}"
|
export "KBUILD_BUILD_USER=${pkgbase}"
|
||||||
|
@ -216,7 +230,7 @@ modify_defconfig() {
|
||||||
|
|
||||||
# Copies the kernel config
|
# Copies the kernel config
|
||||||
copy_defconfig() {
|
copy_defconfig() {
|
||||||
local "_cur_major_ver=$(zcat /proc/config.gz | grep Linux | grep -o '[0-9]*[0-9]\.[0-9]*[0-9]')"
|
local _cur_major_ver="$(uname -r | grep -o '[0-9]*[0-9]\.[0-9]*[0-9]')"
|
||||||
[[ "${_cur_major_ver}" != "${_kernel_major}" ]] &&
|
[[ "${_cur_major_ver}" != "${_kernel_major}" ]] &&
|
||||||
warning "Major version was updated, you should regen the defconfig"
|
warning "Major version was updated, you should regen the defconfig"
|
||||||
|
|
||||||
|
@ -320,13 +334,30 @@ update_defconfig() {
|
||||||
make ${BUILD_FLAGS[*]} olddefconfig
|
make ${BUILD_FLAGS[*]} olddefconfig
|
||||||
diff -u $srcdir/cl-linux/config .config || :
|
diff -u $srcdir/cl-linux/config .config || :
|
||||||
|
|
||||||
# Set subarch automatically
|
# Here we slightly break the config by removing one of the
|
||||||
|
# members of the 'Processor family' selection.
|
||||||
|
# This causes oldconfig to always invoke that selection.
|
||||||
|
sed -i '/CONFIG_GENERIC_CPU/d' .config || :
|
||||||
|
# For a slim chance that someone is building X86_32
|
||||||
|
sed -i '/CONFIG_M686/d' .config || :
|
||||||
|
|
||||||
if [ -n "${_subarch}" ]; then
|
if [ -n "${_subarch}" ]; then
|
||||||
if [ "${_subarch}" == "41" ]; then
|
# check if subarch is a number
|
||||||
yes "${_subarch}
|
if [[ ${_subarch} =~ ^[0-9]+$ ]] && ((_subarch>=1)); then
|
||||||
${_subarch_microarch}" | make ${BUILD_FLAGS[*]} oldconfig
|
if [ "${_subarch}" == "41" ]; then
|
||||||
|
scripts/config -e GENERIC_CPU
|
||||||
|
scripts/config --set-val X86_64_VERSION "${_subarch_microarch}"
|
||||||
|
make ${BUILD_FLAGS[*]} oldconfig
|
||||||
|
else
|
||||||
|
yes "${_subarch}" | make ${BUILD_FLAGS[*]} oldconfig
|
||||||
|
fi
|
||||||
|
# check that this option is present in the .config
|
||||||
|
elif [[ $(grep -c "${_subarch}" .config) -eq 1 ]]; then
|
||||||
|
scripts/config -e "${_subarch}"
|
||||||
|
make ${BUILD_FLAGS[*]} olddefconfig
|
||||||
else
|
else
|
||||||
yes "${_subarch}" | make ${BUILD_FLAGS[*]} oldconfig
|
warning "Unrecognized subarch value: ${_subarch}"
|
||||||
|
exit 1
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
# Ask for subarch
|
# Ask for subarch
|
||||||
|
@ -494,6 +525,6 @@ validpgpkeys=(
|
||||||
)
|
)
|
||||||
sha256sums=("b1a2562be56e42afb3f8489d4c2a7ac472ac23098f1ef1c1e40da601f54625eb"
|
sha256sums=("b1a2562be56e42afb3f8489d4c2a7ac472ac23098f1ef1c1e40da601f54625eb"
|
||||||
"SKIP"
|
"SKIP"
|
||||||
"ba790766fca3eadade5cf74f0c181a8e42a77556f71d9af4b2bd4a53c8b98641"
|
"dd7c856f12d3e10f09743c1d3db35f91879d92890c9fb176405783c9c7cb0c54"
|
||||||
"SKIP"
|
"SKIP"
|
||||||
"b3fd8b1c5bbd39a577afcccf6f1119fdf83f6d72119f4c0811801bdd51d1bc61")
|
"b3fd8b1c5bbd39a577afcccf6f1119fdf83f6d72119f4c0811801bdd51d1bc61")
|
||||||
|
|
13
README.md
13
README.md
|
@ -36,9 +36,16 @@ This command only needs to be executed once.
|
||||||
Please only submit issues if they aren't bug reports about the package or help requests.
|
Please only submit issues if they aren't bug reports about the package or help requests.
|
||||||
Please keep them on the AUR only. This prevents unnecessary signups.
|
Please keep them on the AUR only. This prevents unnecessary signups.
|
||||||
|
|
||||||
|
## Branches
|
||||||
|
This repository (at least if you view it on [sos!git](https://git.staropensource.de/JeremyStarTM/aur-linux-clear))
|
||||||
|
has two branches: `master` and `develop`. The `master` branch is the stable branch, where stable changes
|
||||||
|
are introduced. The `develop` branch is (as you might have already guessed) the development branch.
|
||||||
|
|
||||||
|
Please only submit PRs to the `develop` branch. Pull requests to the `master` branch will be rejected.
|
||||||
|
|
||||||
## License
|
## License
|
||||||
This package does not yet have a license as the original repository (before [me](https://git.staropensource.de/JeremyStarTM) becoming it's maintainer) did not have one yet.
|
The linux-clear package is licensed under the BSD Zero-Clause License.
|
||||||
I have contacted [metak](https://aur.archlinux.org/account/metak) (the previous maintainer) to negotiate a license.
|
I ([JeremyStarTM](https://git.staropensource.de/JeremyStarTM)) negotiated it with [metak](https://aur.archlinux.org/account/metak) (the previous maintainer) and [yarost12](https://git.staropensource.de/yarost12) (co-maintainer).
|
||||||
|
|
||||||
## Build tool
|
## Build tool
|
||||||
*If you want a dead simple way to compile this package, you can [try out my build tool](https://git.staropensource.de/JeremyStarTM/jstm-optimized). It includes a few no nonsense changes to the kernel configuration and allows you to configure the PKGBUILD in a simple manner to decrease build time. If you don't want that, using `makepkg` as-is works fine too.*
|
~~*If you want a dead simple way to compile this package, you can [try out my build tool](https://git.staropensource.de/JeremyStarTM/jstm-optimized). It includes a few no nonsense changes to the kernel configuration and allows you to configure the PKGBUILD in a simple manner to decrease build time. If you don't want that, using `makepkg` as-is works fine too.*~~ Deprecated until rewrite.
|
||||||
|
|
Loading…
Reference in a new issue