linux-tkg/linux58-tkg/README.md

56 lines
2.8 KiB
Markdown

2020-06-14 20:32:10 +07:00
**Due to intel_pstate poor performances as of late, I have decided to set it to passive mode to make use of the acpi_cpufreq governors passthrough, keeping full support for turbo frequencies.**
### MuQSS is not an available option for this revision yet
2020-06-14 20:32:10 +07:00
A custom Linux kernel 5.8.y with specific PDS and Project C / BMQ CPU schedulers related patchsets selector (stock CFS is also an option) and added tweaks for a nice interactivity/performance balance, aiming for the best gaming experience.
Project C / BMQ : http://cchalpha.blogspot.com/
2020-06-14 20:32:10 +07:00
PDS-mq was originally created by Alfred Chen : http://cchalpha.blogspot.com/
While he dropped it with kernel 5.1 in favor of its BMQ evolution/rework, my pretty bad gaming experiences with BMQ up to this point convinced me to keep PDS afloat for as long as it'll make sense/I'll be able to.
Various personalization options available and userpatches support (put your own patches in the same dir as the PKGBUILD, with the ".mypatch" extension). The options built with are installed to `/usr/share/doc/$pkgbase/customization.cfg`, where `$pkgbase` is the package name.
2020-06-14 20:32:10 +07:00
Comes with a slightly modified Arch config asking for a few core personalization settings at compilation time.
If you want to streamline your kernel config for lower footprint and faster compilations : https://wiki.archlinux.org/index.php/Modprobed-db
You can enable support for it at the beginning of the PKGBUILD file. Make sure to read everything you need to know about it.
## Other stuff included:
- Graysky's per-CPU-arch native optimizations - https://github.com/graysky2/kernel_gcc_patch
2020-06-14 20:32:10 +07:00
- memory management and swapping tweaks
- scheduling tweaks
- optional "Zenify" patchset using core blk, mm and scheduler tweaks from Zen
- CFS tweaks
- using yeah TCP congestion algo by default
- using cake network queue management system
2020-08-17 07:20:56 +07:00
- using vm.max_map_count=524288 by default
2020-06-14 20:32:10 +07:00
- cherry-picked clear linux patches
- **optional** overrides for missing ACS capabilities
- **optional** Fsync support (proton)
2020-08-17 07:20:56 +07:00
## Install procedure
### DEB (Debian, Ubuntu and derivatives) and RPM (Fedora, SUSE and derivatives) based distributions
2020-06-14 20:32:10 +07:00
```
git clone https://github.com/Frogging-Family/linux-tkg.git
2020-08-17 07:20:56 +07:00
cd linux-tkg/linux58-tkg
Support Fedora and derivatives (#56) * linux57: install.sh: Add install for Fedora * linux57: install.sh: use dnf to install and save it for uninstall * linux57: install.sh: enable Fedora compilation * linux57: use single equal sign for conditions * linux57: Add uninstall step * linux57: remove unwated changes * linux57: install.sh: code cleanup * linux57: install.sh: remove redundant condition * linux57: install.sh: Fedora: update dependency install * linux57: install.sh: uninstall only kernel and keep dependencies * linux57: install.sh: make script executable * linux57: install.sh: remove header uninstall in Ubuntu * Linux57: Initial Suse support * linux57: install.sh: Add Suse to the distro error message * linux57: install.sh: Additionnal Suse dependency packages * linux57: install.sh: disable gpg check for Suse kernel install * linux57: install.sh: Fedora & derivative: produce dev files * Linux57: install.sh: make Suse use ccache * Linux57: install.sh: Fedora & derivatives: add install/uninstall of kernel-devel * linux57: install.sh: Fix: disable sign check for Suse kernel install * linux57: install.sh: Fedora & derivatives: enable confirm prompt for kernel install * linux57: install.sh: suse add flag to replace files from default kernel-headers * linux57: install.sh: make uninstall manual * linux57: install.sh: add uninstall help for Suse * linux57: install.sh: correct uninstall message for suse * linux57: install.sh: move made RPMS into working folder and cleanup * linux57: install.sh: add uninstall help for Fedora * linux57: install.sh: Move deb files into DEBs folder * linux57: install.sh: Ubuntu: install dev deb package * linux57: install.sh: add Ubuntu uninstall help. * linux57: install.sh: improve Ubuntu uninstall help * linux57: Add Debian distro and related fix * linux57: install.sh: prompt for distro * linux57: install.sh: use _basekernel instead of 5.7 * linux57: install.sh: fix for using _basekernel everywhere * linux57: add ubuntu/debian dependency install * linux58: copy install.sh from 5.7 as-is, add distro prompt * linux59: copy install.sh from 5.7 as-is, add distro prompt * Fix PKGBUILD after adding the distro prompt * Revert "Fix PKGBUILD after adding the distro prompt" This reverts commit 9c3c155b3ed07a4aa04ec10d6fc0e8b5710a2f07. * Fix PKGBUILD because of the distro prompt * linux57: install.sh: improve `config` script path * linux57: install.sh: loop if wrong answer in distro prompt * linux57: install.sh: code cleanup * Copy linux57 install.sh to linux58 and linux59 * install.sh: change "uninstall" argument to "uninstall-help" * Update READMEs
2020-09-01 10:57:21 +07:00
# Optional: edit customization.cfg file
2020-08-17 07:20:56 +07:00
./install.sh install
```
Support Fedora and derivatives (#56) * linux57: install.sh: Add install for Fedora * linux57: install.sh: use dnf to install and save it for uninstall * linux57: install.sh: enable Fedora compilation * linux57: use single equal sign for conditions * linux57: Add uninstall step * linux57: remove unwated changes * linux57: install.sh: code cleanup * linux57: install.sh: remove redundant condition * linux57: install.sh: Fedora: update dependency install * linux57: install.sh: uninstall only kernel and keep dependencies * linux57: install.sh: make script executable * linux57: install.sh: remove header uninstall in Ubuntu * Linux57: Initial Suse support * linux57: install.sh: Add Suse to the distro error message * linux57: install.sh: Additionnal Suse dependency packages * linux57: install.sh: disable gpg check for Suse kernel install * linux57: install.sh: Fedora & derivative: produce dev files * Linux57: install.sh: make Suse use ccache * Linux57: install.sh: Fedora & derivatives: add install/uninstall of kernel-devel * linux57: install.sh: Fix: disable sign check for Suse kernel install * linux57: install.sh: Fedora & derivatives: enable confirm prompt for kernel install * linux57: install.sh: suse add flag to replace files from default kernel-headers * linux57: install.sh: make uninstall manual * linux57: install.sh: add uninstall help for Suse * linux57: install.sh: correct uninstall message for suse * linux57: install.sh: move made RPMS into working folder and cleanup * linux57: install.sh: add uninstall help for Fedora * linux57: install.sh: Move deb files into DEBs folder * linux57: install.sh: Ubuntu: install dev deb package * linux57: install.sh: add Ubuntu uninstall help. * linux57: install.sh: improve Ubuntu uninstall help * linux57: Add Debian distro and related fix * linux57: install.sh: prompt for distro * linux57: install.sh: use _basekernel instead of 5.7 * linux57: install.sh: fix for using _basekernel everywhere * linux57: add ubuntu/debian dependency install * linux58: copy install.sh from 5.7 as-is, add distro prompt * linux59: copy install.sh from 5.7 as-is, add distro prompt * Fix PKGBUILD after adding the distro prompt * Revert "Fix PKGBUILD after adding the distro prompt" This reverts commit 9c3c155b3ed07a4aa04ec10d6fc0e8b5710a2f07. * Fix PKGBUILD because of the distro prompt * linux57: install.sh: improve `config` script path * linux57: install.sh: loop if wrong answer in distro prompt * linux57: install.sh: code cleanup * Copy linux57 install.sh to linux58 and linux59 * install.sh: change "uninstall" argument to "uninstall-help" * Update READMEs
2020-09-01 10:57:21 +07:00
Uninstalling custom kernels installed through the script has to be done
manually, the script can can help out with some useful information:
2020-08-17 07:20:56 +07:00
```
cd path/to/linux-tkg/linux58-tkg
Support Fedora and derivatives (#56) * linux57: install.sh: Add install for Fedora * linux57: install.sh: use dnf to install and save it for uninstall * linux57: install.sh: enable Fedora compilation * linux57: use single equal sign for conditions * linux57: Add uninstall step * linux57: remove unwated changes * linux57: install.sh: code cleanup * linux57: install.sh: remove redundant condition * linux57: install.sh: Fedora: update dependency install * linux57: install.sh: uninstall only kernel and keep dependencies * linux57: install.sh: make script executable * linux57: install.sh: remove header uninstall in Ubuntu * Linux57: Initial Suse support * linux57: install.sh: Add Suse to the distro error message * linux57: install.sh: Additionnal Suse dependency packages * linux57: install.sh: disable gpg check for Suse kernel install * linux57: install.sh: Fedora & derivative: produce dev files * Linux57: install.sh: make Suse use ccache * Linux57: install.sh: Fedora & derivatives: add install/uninstall of kernel-devel * linux57: install.sh: Fix: disable sign check for Suse kernel install * linux57: install.sh: Fedora & derivatives: enable confirm prompt for kernel install * linux57: install.sh: suse add flag to replace files from default kernel-headers * linux57: install.sh: make uninstall manual * linux57: install.sh: add uninstall help for Suse * linux57: install.sh: correct uninstall message for suse * linux57: install.sh: move made RPMS into working folder and cleanup * linux57: install.sh: add uninstall help for Fedora * linux57: install.sh: Move deb files into DEBs folder * linux57: install.sh: Ubuntu: install dev deb package * linux57: install.sh: add Ubuntu uninstall help. * linux57: install.sh: improve Ubuntu uninstall help * linux57: Add Debian distro and related fix * linux57: install.sh: prompt for distro * linux57: install.sh: use _basekernel instead of 5.7 * linux57: install.sh: fix for using _basekernel everywhere * linux57: add ubuntu/debian dependency install * linux58: copy install.sh from 5.7 as-is, add distro prompt * linux59: copy install.sh from 5.7 as-is, add distro prompt * Fix PKGBUILD after adding the distro prompt * Revert "Fix PKGBUILD after adding the distro prompt" This reverts commit 9c3c155b3ed07a4aa04ec10d6fc0e8b5710a2f07. * Fix PKGBUILD because of the distro prompt * linux57: install.sh: improve `config` script path * linux57: install.sh: loop if wrong answer in distro prompt * linux57: install.sh: code cleanup * Copy linux57 install.sh to linux58 and linux59 * install.sh: change "uninstall" argument to "uninstall-help" * Update READMEs
2020-09-01 10:57:21 +07:00
./install.sh uninstall-help
2020-08-17 07:20:56 +07:00
```
### Other linux distributions
Support Fedora and derivatives (#56) * linux57: install.sh: Add install for Fedora * linux57: install.sh: use dnf to install and save it for uninstall * linux57: install.sh: enable Fedora compilation * linux57: use single equal sign for conditions * linux57: Add uninstall step * linux57: remove unwated changes * linux57: install.sh: code cleanup * linux57: install.sh: remove redundant condition * linux57: install.sh: Fedora: update dependency install * linux57: install.sh: uninstall only kernel and keep dependencies * linux57: install.sh: make script executable * linux57: install.sh: remove header uninstall in Ubuntu * Linux57: Initial Suse support * linux57: install.sh: Add Suse to the distro error message * linux57: install.sh: Additionnal Suse dependency packages * linux57: install.sh: disable gpg check for Suse kernel install * linux57: install.sh: Fedora & derivative: produce dev files * Linux57: install.sh: make Suse use ccache * Linux57: install.sh: Fedora & derivatives: add install/uninstall of kernel-devel * linux57: install.sh: Fix: disable sign check for Suse kernel install * linux57: install.sh: Fedora & derivatives: enable confirm prompt for kernel install * linux57: install.sh: suse add flag to replace files from default kernel-headers * linux57: install.sh: make uninstall manual * linux57: install.sh: add uninstall help for Suse * linux57: install.sh: correct uninstall message for suse * linux57: install.sh: move made RPMS into working folder and cleanup * linux57: install.sh: add uninstall help for Fedora * linux57: install.sh: Move deb files into DEBs folder * linux57: install.sh: Ubuntu: install dev deb package * linux57: install.sh: add Ubuntu uninstall help. * linux57: install.sh: improve Ubuntu uninstall help * linux57: Add Debian distro and related fix * linux57: install.sh: prompt for distro * linux57: install.sh: use _basekernel instead of 5.7 * linux57: install.sh: fix for using _basekernel everywhere * linux57: add ubuntu/debian dependency install * linux58: copy install.sh from 5.7 as-is, add distro prompt * linux59: copy install.sh from 5.7 as-is, add distro prompt * Fix PKGBUILD after adding the distro prompt * Revert "Fix PKGBUILD after adding the distro prompt" This reverts commit 9c3c155b3ed07a4aa04ec10d6fc0e8b5710a2f07. * Fix PKGBUILD because of the distro prompt * linux57: install.sh: improve `config` script path * linux57: install.sh: loop if wrong answer in distro prompt * linux57: install.sh: code cleanup * Copy linux57 install.sh to linux58 and linux59 * install.sh: change "uninstall" argument to "uninstall-help" * Update READMEs
2020-09-01 10:57:21 +07:00
If your distro is not DEB or RPM based, `install.sh` script can clone the kernel tree, patch and edit a `.config` file from your current distro's
that is expected at ``/boot/config-`uname -r`.config`` (otherwise it won't work as-is)
2020-08-17 07:20:56 +07:00
The command to do for that is:
```
./install.sh config
```