Skip to content

itachi-re/kernelconfig

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Linux Kernel Config Collection

Curated collection of Linux kernel .config files from upstream, distributions, and custom kernel projects — for comparison, research, and custom kernel development.


Table of Contents


Why?

Kernel projects — XanMod, CachyOS, Zen, distro kernels, vanilla upstream — often ship heavily customized .config files, but those configs are scattered across git repos, package archives, and build systems, and older ones tend to disappear once a project moves on.

This repository exists to:

  • Compare kernel configurations across projects and versions
  • Study feature and scheduler differences (CFS vs BORE vs EEVDF, etc.)
  • Track how a given project's config evolves release over release
  • Provide a known-good base for building custom kernels
  • Archive configs from discontinued, EOL, or hard-to-find releases

No kernel source is included — only configuration files and metadata about where they came from.


Included Projects

Current

Project Version Arch Path
XanMod 7.1 x86_64 configs/xanmod/7.1/x86_64.config

Planned

CachyOS · Linux Zen · linux-tkg · Arch Linux · Fedora · Debian · Ubuntu · openSUSE · Gentoo · Vanilla upstream · other community/experimental kernels

Contributions that add a project from this list (or a new one entirely) are especially welcome — see Contributing.


Repository Structure

kernelconfig/
├── README.md
├── LICENSE
├── configs/
│   ├── xanmod/
│   │   └── 7.1/
│   │       ├── x86_64.config
│   │       └── SOURCE.md
│   ├── cachyos/
│   ├── zen/
│   ├── vanilla/
│   └── ...
├── scripts/
│   └── diffconfig
└── docs/

Each config is organized by project → kernel version → architecture, and every version directory includes a SOURCE.md recording provenance (see below).


Naming Convention

configs/<project>/<kernel-version>/<architecture>.config

Examples:

configs/xanmod/7.1/x86_64.config
configs/cachyos/7.1/x86_64.config
configs/vanilla/6.16/x86_64.config

Architecture strings follow uname -m output (x86_64, aarch64, etc.) for consistency.


Sources & Verification

Configs are collected only from:

  • Official kernel project source repositories
  • Distribution kernel source packages
  • Build system output (OBS, COPR, AUR PKGBUILDs, etc.)
  • Local /boot/config-* or /proc/config.gz from a verifiable, unmodified install
  • Official release artifacts (tarballs, release assets)

Every version directory includes a SOURCE.md with:

  • Upstream repository/package URL
  • Commit hash or release tag the config was pulled from
  • Date retrieved
  • SHA256 checksum of the config file
  • Any manual modifications made before archiving (should be none — configs are archived as-is)

This keeps the archive auditable: anyone can verify a config here matches what the upstream project actually shipped.


Usage

Compare two configurations:

diff -u configs/xanmod/7.1/x86_64.config configs/cachyos/7.1/x86_64.config

Generate a minimal, readable diff (options that actually changed, ignoring comments/ordering):

scripts/diffconfig configs/vanilla/6.16/x86_64.config configs/xanmod/7.1/x86_64.config

Use as a base for a custom kernel build:

cp configs/xanmod/7.1/x86_64.config /path/to/kernel/source/.config
cd /path/to/kernel/source
make olddefconfig   # reconcile against your kernel source tree
make menuconfig      # optional: review/adjust before building

Check a single option across all configs:

grep -r "CONFIG_PREEMPT_" configs/*/*/x86_64.config

Scripts

Script Purpose
scripts/diffconfig Wrapper around the kernel tree's own diffconfig for a clean two-file comparison, without needing a full kernel source checkout

More helper scripts (bulk verification, checksum validation, option lookup across all archived configs) are planned — see Contributing if you'd like to add one.


Contributing

Contributions are welcome — new projects, new versions of existing projects, or tooling improvements.

When submitting a configuration, please include:

  1. The .config file, placed per the naming convention
  2. A SOURCE.md alongside it, containing:
    • Project name and kernel version
    • Architecture
    • Exact source (repo URL + commit/tag, package name + version, or release artifact URL)
    • Retrieval date
    • SHA256 checksum
    • Notes on any known non-default modifications already present in the shipped config

Please do not hand-edit a config before submitting it — the archive aims to reflect what was actually shipped, not a personalized variant.

Open a PR with one project/version per PR where practical, to keep review focused.


License

Configuration files are distributed under the same licensing terms as their original sources, where applicable (kernel .config files are generally not independently copyrightable content beyond the GPL terms of the kernel build system itself, but attribution is preserved via SOURCE.md).

This repository archives configuration files only and does not redistribute modified Linux kernel source code.

About

Curated Linux kernel .config files from XanMod, CachyOS, vanilla Linux, and other custom kernels for comparison, reference, and experimentation.

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors