49 Commits

Author SHA1 Message Date
Adel Kara Slimane
f88c247a88
Bug reports: create "logs" folder and populate it at each run (#500)
* Bug reports: create "logs" folder and populate it at each run

This makes it easier for people to open issues
as we will ask them to attach every file in the "logs" folder.

File have the .txt extension so they can easily be
drag & dropped into gihub issues

For Arch people: to obtain the shell-output.log, we will ask them to do it
by hand:

makepkg [args] | tee shell-output.log

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: cleanup "logs" folder at each run

So some files, that usually get appended to, don't
grow to infinity.

This behavior needs to be changed if we decide to
keep more logs than the latest one.

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>
2022-04-29 18:29:36 +02:00
Adel Kara Slimane
5a6f3d921b
cpu uarch patches: move download code to prepare (#462)
And update to new naming scheme

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>
2022-03-15 21:40:38 +01:00
zecktos
d7541e00b4
uninstall-help for Debian (#444)
use the Ubuntu uninstall-help also when "_distro" is set to Debian like in the installation part
2022-03-09 15:37:23 +01:00
Adel Kara Slimane
5f36c6353e
Fix cpu-opt patch in "install.sh" and make "prepare" verbose about it (#439)
Closes: #438

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>
2022-02-17 19:50:41 +01:00
Adel Kara Slimane
ded2c0c733
install.sh: quote every variable used in if statements (#434)
Closes: #352

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>
2022-02-13 02:13:41 +01:00
X9VoiD
07503204b4
Add support for RT patches (#380)
* Add support for RT patches

* Disallow other CPU schedulers on PREEMPT_RT
2021-12-12 15:18:48 +01:00
gghhkm
10f242d421
Added schedtool to dependencies (#382)
Related to https://github.com/Frogging-Family/linux-tkg/pull/312
(I got impatient)

Signed-off-by: gghhkm <killk4809@protonmail.com>
2021-12-08 17:28:57 +01:00
Alejandro Bringas Martinez
ec364b7872
Add schedtool dep on Debian (#337) 2021-10-22 01:21:45 +02:00
Adel Kara Slimane
05f874d877
Use Arch config by default + state when config_hardened is used (#305)
* prepare: fix config_hardened + make arch config default for all distros

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: pring message about using hardnened config file

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* README: update about the change with the default config file

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* install.sh: additional dependencies

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>
2021-09-21 12:20:35 +02:00
Valeri
c686050832
Unify Ubuntu and Debian dependency installation (#311) 2021-09-20 17:53:49 +02:00
Adel Kara Slimane
00948fcff0
install.sh: improve Generic code path + Gentoo + tmpfs install (#304)
Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>
2021-09-18 16:00:05 +02:00
Tk-Glitch
6d45aa2563 install.sh: Fix missing separator
Fixes https://github.com/Frogging-Family/linux-tkg/issues/309
2021-09-16 00:00:49 +02:00
Tk-Glitch
8f4116a1c9 linux515-tkg: Add support for graysky's 5.15 patchset
https://github.com/graysky2/kernel_compiler_patch/blob/master/more-uarches-for-kernel-5.15%2B.patch

Addition to https://github.com/Frogging-Family/linux-tkg/pull/307
2021-09-15 14:24:15 +02:00
Tk-Glitch
3394aa861b Follow-up to bb1f2ae2981ce91903314272ab91694b1684c968 2021-09-15 14:16:02 +02:00
Tk-Glitch
46f2642294 Initial support for 5.14 RC 2021-07-14 18:21:07 +02:00
Tk-Glitch
de3193f4a4 5.4.125, 5.10.43, 5.12.10
Add a check for $opt_ver before prompting about cpu optimizations. The patch is currently broken on 5.4.y, so disable it.
2021-06-10 16:20:47 +02:00
Adel Kara Slimane
36af28fd6c
Change to new name for Graysky march repository (#260)
Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>
2021-06-07 14:51:13 +02:00
Adel Kara Slimane
ca8eab19ee
install.sh: Generic + Clang: prompt to replace libunwind with llvm-libunwind (#258) 2021-06-07 14:50:36 +02:00
Adel Kara Slimane
dea8847167
Various refactorings + Enable Clang LTO (#248)
* Enable Clang LTO

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: improve kernel prompting and selection code

- Subversion are to be directly edited in the _kver_subver_map
variable at the top of the file
- _supported_kernels is theoretically not needed, but it's needed
for the prompting to happen with the correct order, since the
keys in _kver_subver_map are hash-ordered, which is not the
natural ordering

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: update comment

* prepare: improve compiler selection and LTO enablement code path

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* install.sh: use _prompt_from_array for distro selection

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: move optiprofile prompt to _prompt_from_array

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: improve cpu sched fallback code

* install.sh: move set -e at the top

* prepare: use arrays for HZ configs

* prepare: enable default selection in _prompt_from_array

* prepare: use _prompt_from_array for _rr_interval

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: update _rr_interval prompting

* prepare: update and use config script for tickless

* prepare: use scripts/config accross the entire script

* prepare: change last lines to scripts/config

* prepare: small fixes

* customization.cfg: revert back to old values for _tickless

* prepare: revert back to old numbering for _rr_interval

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: msg2 used _rr_interval

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: be smarter/dumber with _rr_interval

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: remove last manual interventions to .config

* prepare: fix condition

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: improve cpu march handling and implement prompt

Making `make` prompt wasn't working on my Gentoo for a
reason I don't understand anymore. The configs are unset
by the script. So it always goes for generic by default.
Maybe they need to be entirely deleted from the .config
file.

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: fix name for MuQSS.c

* prepare: use _sched for scheduler source code files

* install.sh: use sudo to clean root owned files in linux-src-git

* prepare: remove useless code

* prepare: fix issue with MuQSS

* Add CacULE scheduler

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* 5.13 rc4

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: Remove voluntary_preempt, OFenable and disable_acpi_cpufreq options

* prepare: Prevent config prompt w/ modprobed-db

Rebase of @CodingKoopa PR

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: Empty LOCALVERSION config option for Arch at the correct spot

@CodingKoopa spotted the issue and reported it, thanks!

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: use _enable _undefine and _disable wrappers

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* Restore the state tracker for makepkg usage

* Fix tickless array selection order for nohz idle/hz periodic

* Also handle the disabling part of the generic march selector

* Replace _undefine() calls with _disable()

* Preserve the case of config options passed to scripts/config

* Echo the CONFIG_EXPERT options without blank lines

And with a header/footer
Makes searching for config setting bugs easier

* prepare: uppercase config options with "tr"

Co-authored-by: Etienne JUVIGNY <ti3nou@gmail.com>
2021-06-01 20:14:47 +02:00
Tk-Glitch
6d2b07d0b2 install.sh: Add 5.13 opt_ver
Fixes https://github.com/Frogging-Family/linux-tkg/issues/249
2021-05-30 19:50:57 +02:00
Tk-Glitch
d9384b9e7f install.sh: Fix /etc/modules-load.d/winesync.conf generation 2021-05-19 20:52:38 +02:00
Adel Kara Slimane
f0ccecfdb2
Fix winesync for non-arch distros (#243)
* install.sh: install headers in /usr/include for winesync to work

This implies reverting a previous change in deb and rpm distros
and adding make headers_install in the Generic approach

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* install.sh: install winesync.rules file

This file will not be removed and will be left dangling
Not so bad I think, since only winesync uses it. We can
remove it in the future if things change

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* prepare: remove winesync.rules file during cleanup

So we can check if the user actually asked for winesync
in the current run by checking if the file exists.

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>

* install.sh: add winesync to /etc/modules-load.d for auto-loading

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>
2021-05-18 12:46:28 +02:00
Adel Kara Slimane
89cd81e726
install.sh: Add convenience script for generic install (#227)
* install.sh: simplify ccache code

* install.sh: add generic distro install

* README: update with Generic distro install

* install.sh: update help messages
2021-04-30 18:32:30 +02:00
Adel Kara Slimane
86defefe99
Fix DKMS for RPM distros (#233)
* install.sh: RPM distros: Install the correct headers RPM for DKMS to work

Closes: #230
Closes: #229

* install.sh: remove trailing whitespaces

They came from reverting a commit that actually removed them x)

* install.sh: Add note in uninstall-help for Suse about kernel-headers
2021-04-22 12:42:42 +02:00
Adel Kara Slimane
e7d97fc497
install.sh: improve git fetching and stop producing source code packages (#222)
* install.sh: improve git source code fetching

* install.sh: add install dependency for Fedora 33+

* install.sh, customization.cfg: cosmetic improvements

* install.sh: DEB, RMP: do not create devel packages.

They are not needed for DKMS
and that was the only point to why they were there to begin with
2021-04-16 21:09:21 +02:00
Bringas4You
8d174cf225
Fix Debian / Ubuntu compile due to .config (#217)
* Update install.sh

* Update prepare
2021-04-05 08:17:58 +02:00
Adel Kara Slimane
b595006ffb
Some extra features for convenience (#209)
* Enable setting modprobed-db database path

This enables using different dbs and be able to build the kernel for others,  with modprobed-db

* Save generated .config file back to user's git folder, for eventual re-use

* Set local version for all distros

* install.sh: handle user provided .config files

Update dosctring for the _configfile var in customization.cfg

* install.sh: fix kernel version prompt broken newlines

* Copy final config file as kernelconfig.new
2021-04-03 17:38:48 +02:00
Bringas4You
f39f82cef0
Fix GraySky2 patch link from Install.sh (#214) 2021-03-30 13:33:07 +02:00
Bringas4You
444fd4341d
Fix compilation on Ubuntu due canonical-certs (#207)
Apparently in the new versions of the kernel or some configuration that I do not know but with this it is solved, almost very similar to Debian.
2021-03-22 20:25:03 +01:00
Tk-Glitch
01f9622fbf install.sh: Fix wrong path taken for graysky's cpu opt patches 2021-03-09 17:52:40 +01:00
Adel Kara Slimane
9e81e3bd1d
install.sh: add git mirror and code cleanup (#192)
Closes #181
2021-03-09 16:58:59 +01:00
Tk-Glitch
b95ba7d6c3 Adapt to new names/paths for graysky2's cpu opt patchsets
Again 🐸

Fixes https://github.com/Frogging-Family/linux-tkg/issues/196
2021-03-09 16:04:19 +01:00
Tk-Glitch
dfd20aefa2 Fix some graysky2's cpu opt patch urls following more movements in their repo. 2021-03-09 01:08:45 +01:00
Tk-Glitch
9d6de7dac5 5.4.103, 5.10.21, 5.11.4 2021-03-07 15:14:39 +01:00
Tk-Glitch
f4de77e7d3 Initial 5.12 RC1 support 2021-03-01 21:54:04 +01:00
Tk-Glitch
6999b37993 install.sh: Add 5.11 handling for Graysky's CPU optimizations patchset
Fixes https://github.com/Frogging-Family/linux-tkg/issues/180
2021-02-16 20:32:53 +01:00
Tk-Glitch
960f5ec009 install.sh: Handle initial releases git tags differenty (_sub=0)
Fixes https://github.com/Frogging-Family/linux-tkg/issues/178
2021-02-16 11:37:17 +01:00
Adel Kara Slimane
c12754f5ae
install.sh: unified linux git folder across kernel versions (#127)
* Prompt _distro if undefined when using "uninstall-help" in install.sh

* Unified linux source code git folder

* Update README

* Fix "defaulting to arch" by prompting distro earlier

* Move variable definitions at the correct position in script

* Remove unneeded Ubuntu dependency

* Fix typo

* RPM distros: Move only tkg related RPMs and leave the ~/rpmbuild folder as-is

* Fix defaulting to _distro=Arch when using ./install.sh config

* Use custom location for rpmbuild folder

* Fix _topdir for make bin-rpm

* Move rpmbuild folder cleanup to exit_cleanup function

* Revert folder naming in Arch specific NUKR=false cleanup

* Revert Void Linux changes

* Shallow clone a longer time window for stable releases

depth=1 had issues if the kernel release
is newer than the tag in the git repo

* Move functions to install.sh

* Fix cpuopts patch file naming

* Improve install.sh help message
2021-02-03 14:17:01 +01:00
Tk-Glitch
72e3d2de49 Get rid of the customizable TTY devices number patch. This breaks on some non-Arch distros and is only interesting to a very limited number of users that aren't necessarily our core target userbase. 2021-01-13 15:39:35 +01:00
iWeaker4you
89f3c1f4b3
Debian UEFI cert compile problem (#126) 2020-11-21 16:10:49 +01:00
Seth Jones
b13cbf0e32
Fedora 33. (#105)
* Fedora 33.

* Update install.sh

* Fix syntax error.
2020-11-20 10:43:03 +01:00
Tk-Glitch
734e72186a install.sh: If current config isn't found in /boot/config-*, try /proc/config.gz 2020-11-19 17:22:45 +01:00
Tk-Glitch
3451dd8d51 install.sh: Protect custom compiler paths 2020-11-19 17:21:57 +01:00
termac
9ac7fd64e1
source 'customization.cfg' earlier in 'install.sh' (#109)
source 'customization.cfg' before '_tkg_initscript' is run in
'install.sh'. Otherwise some variables set in 'customization.cfg' are
empty when '_tkg_initscript' is run and have to be supplied again on the
prompt.
2020-11-04 17:25:44 +01:00
termac
eb42478f79
update Debian build dependencies in "install.sh" (#108)
Split Debian and Ubuntu build dependencies, as "kernel-package" is not
available, but also not needed in newer Debian releases.
Add some other dependencies dpkg-buildpackage was complaining about.
With these dependencies the tkg kernel builds in a freshly bootstrapped
Debian "Buster" container.
2020-11-04 16:36:12 +01:00
Tony
8476633083
Add custom LLVM compiler path support (#102) 2020-10-27 21:55:39 +01:00
Tony
dfbb291d5d
install.sh: Fix LLVM build restart config (#101)
Fix MuQSS illegal character uppercase in source package name
Fix _cpusched not being sourced for package name
Fix llvm not in package name when using llvm
2020-10-27 21:44:15 +01:00
Tony
191febe4e8
Add back #62 Add initial -rc support to the install.sh script. (#100)
was merged after starting the work on the unified build script
add 5.10 RC to opt_ver case
2020-10-27 18:42:39 +01:00
Tk-Glitch
e9fb606121 Move to unified builder as default
The previous building scripts and patches will be moved to legacy
2020-10-26 22:46:56 +01:00