* 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>
* 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>
* 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>
* install.sh: RPM distros: Install the correct headers RPM for DKMS to work
Closes: #230Closes: #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
* 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
* 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
* 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
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.
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.
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