Skip to content

doniks/halium_kernel_config_fragments

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This repository contains

1) a tool to check and fix a kernel config based on a give fragment of kernel configs.
b) a set of config fragmets which are useful for Halium porting. Normally you will want to apply the fragments `halium`, `mer` and `lxc`. Potentially you also want `mer_optional` and/or `halium-boot`.

USAGE:

./check-config [-w] KERNELCONFIG KERNELCONFIGFRAGMENT

EXAMPLE:

./check-config ~/halium/kernel/google/msm/arch/arm/config/lineageos_flo_defconfig mer

FRAGMENTS:

* halium: from the guide docs.halium.org and the hybris-boot initrd
* mer: the non-optional configs from [1]
* mer_optional: the optional configs from [1]
* lxc: from lxc-checkconfig [2]
* halium-boot: from halium-boot [3]

NOTES:

a) There are useful scripts in the kernel source to work with kernel configs (config [6], merge_config.sh [7] ,diffconfig [8]).

b) This script, together with [8] allows you to easily store your config changes. Also you can easily carry the changes over rom one kernel to another:
diffconfig -m ORIGINALKONFIG YOURCONFIG > my_changes
./check-config -w NEWKONFIG my_changes 

c) Yes there are multiple other kernel config checkers/fixers out there that cover similar use cases that this script. I wasn't satisfied with any of them. See comments below ([1], [2], [3], [4], [5]). The fragments in this repository are mostly based on these other checkers/fixers. The script itself is originally based on [1]. Use what suits you best. 

[1] https://github.com/mer-hybris/mer-kernel-check/blob/master/mer_verify_kernel_config - hardcoded values, supports y,m alternatives
[2] https://github.com/lxc/lxc/blob/master/src/lxc/cmd/lxc-checkconfig.in - the output is not very helpful to know what configuration to adjust, checks more than just configs
[3] https://github.com/Halium/halium-boot/blob/master/check-kernel-config - pretty much the same as janimo script [4]
[4] https://github.com/janimo/phablet-porting-scripts/blob/master/kernel/check-config - hardcoded values
[5] https://raw.githubusercontent.com/docker/docker/master/contrib/check-config.sh - hardcoded values, checks more than just configs
[6] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/scripts/config - a piece of the functionality but would need a wrapper script anyway and doesn't handle quoted values right
[7] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/scripts/kconfig/merge_config.sh - can read from a file, but very simplistic, e.g. no comments in inputfile
[8] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/scripts/diffconfig

About

kernel config fragmets for Halium

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages