Skip to content

Commit

Permalink
README: improve it for newcomers
Browse files Browse the repository at this point in the history
"kconfigs" -> "Linux kernel configuration files".

Add a section describing how to clone the gh-pages branch and browse the
configs locally.

Update the "how to run" section to describe the requirements for non
Oracle Linux systems -- the packages should be easy to install.

Signed-off-by: Stephen Brennan <[email protected]>
  • Loading branch information
brenns10 committed Apr 3, 2024
1 parent cebe4e4 commit 595414f
Showing 1 changed file with 24 additions and 5 deletions.
29 changes: 24 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,33 @@
# kconfigs

This is a system for fetching the kconfigs for a variety of Linux distributions,
as well as the upstream defconfigs, and archiving them for later analysis. The
resulting configuration data can be summarized into a compact JSON file which
can be browsed on [our webpage][1]. Or, you can simply download the
configurations and explore them with `grep`.
This is a system for fetching the Linux kernel configuration files for a variety
of Linux distributions, and archiving them for later analysis. The resulting
configuration data is summarized into a compact JSON file which can be
browsed on [our webpage][1]. Or, you can simply download the configurations and
explore them with `grep`.

[1]: https://oracle.github.io/kconfigs/

On a regular basis, Github CI runs will fetch more recent package versions and
keep the configurations up-to-date.

## Browsing Configurations Locally

While the [webpage][1] is convenient, you can also directly clone the `gh-pages`
branch of this repository to explore locally:

``` sh
git clone https://github.com/oracle/kconfigs -b gh-pages
cd kconfigs
grep -r IKCONFIG_PROC out/
```

## How to Run

This tool runs on Python 3.11 or later. It requires common compression tools
(gzip, bzip2, xz, zstd, tar) as well as common command line tools for Linux
packaging installed to the system (gpg, rpm, cpio, dpkg).

The following setup instructions apply to Oracle Linux 9. First, install runtime
dependencies (most should already be installed, but they are listed for
completeness).
Expand All @@ -27,6 +42,8 @@ dnf install -y python3.11{,-devel,-venv,-pip} \
To setup the runtime Python environment:

``` sh
git clone https://github.com/oracle/kconfigs
cd kconfigs
make venv
```

Expand All @@ -36,6 +53,8 @@ To run the extraction routine:
make run
```

Configurations will appear in the `out` directory.

## Documentation

You should be able to find everything you need by browsing to our [web page][1]
Expand Down

0 comments on commit 595414f

Please sign in to comment.