use git for kernel sources & improved CI workflow (#591)

* prepare: auto-fetch latest versions + harmonize kernel version var

- Latest version is fetched from git: this prepares the road to
  moving to git cloning and fetching
- Introduce the $_kver variable that follows a three digit
  convention (e.g. '600', '519', '504') to enable comparing
  simply between kernel versions

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

* All distros: use git to fetch/update kernel sources

- Force git cloning `linux-tkg` so the patches and config
  files are automatically checksummed
- Arch: remove all the sha256sums and source files and automatically
  populate them on script run.
- Move git cloning/fetching script to 'prepare' script file

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

* accept customization.cfg vars as env vars

This makes CLI way easier by enabling e.g.
_version="5.19" makepkg or
_version="5.19" ./install.sh install

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

* prepare: better handle git remotes

now there's a dictionary that gives the list of remotes

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

* prepare: add default git remote if not set or not recognized

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

* customization.cfg: allow specific kernel versions

e.g. "6.0-rc4" or "5.10.51"

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

* ci: improved workflow

1. Check periodically for newer kernels with git
2. If a newer kernel exists, with respect to l
   latest Github release:
   1. Build for cfs, pds, bmq for Arch
   2. Make release

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

Signed-off-by: Adel KARA SLIMANE <adel.ks@zegrapher.com>
This commit is contained in:
Adel Kara Slimane
2022-09-22 16:17:05 +02:00
committed by GitHub
parent cb4c79a2fb
commit 59afa4083c
12 changed files with 518 additions and 1334 deletions

View File

@@ -5,7 +5,10 @@
# If left empty, the script will prompt
_distro=""
# Kernel Version - Options are "5.4", "5.7", "5.8", "5.9", "5.10", "5.11", "5.12", "5.13", "5.14", "5.15", "5.16", "5.17", "5.18", "5.19"
# Kernel Version - Options are "5.4", and from "5.7" to "5.19"
# you can also set a specific kernel version, e.g. "6.0-rc4" or "5.10.51",
# -> note however that a "z" too small on a "x.y.z" version may make patches fail
# as they got adapted for newer "z" values.
_version=""
#### MISC OPTIONS ####
@@ -17,7 +20,7 @@ _EXT_CONFIG_PATH=~/.config/frogminer/linux-tkg.cfg
# Default is "true".
_NUKR="true"
# [install.sh specific] Git mirror to use to get the kernel sources, possible values are "googlesource.com" and "kernel.org"
# Git mirror to use to get the kernel sources, possible values are "kernel.org", "googlesource.com" and "github.com"
_git_mirror="kernel.org"
# Custom compiler root dirs - Leave empty to use system compilers
@@ -81,7 +84,7 @@ _config_updating="olddefconfig"
# Disable some non-module debugging - See PKGBUILD for the list
_debugdisable="false"
# Strip the vmlinux file after build is done. Set to anything other than "true" if you require debug headers. Default is "true"
# Strip the vmlinux file after build is done. Set to anything other than "true" if you require debug headers. Default is "true"
_STRIP="true"
# LEAVE AN EMPTY VALUE TO BE PROMPTED ABOUT FOLLOWING OPTIONS AT BUILD TIME