{"id":15003611,"url":"https://github.com/oracle/kconfigs","last_synced_at":"2025-07-05T22:33:41.512Z","repository":{"id":230043071,"uuid":"777845864","full_name":"oracle/kconfigs","owner":"oracle","description":"Tool for extracting Linux kernel configurations from many distributions \u0026 displaying a web UI","archived":false,"fork":false,"pushed_at":"2025-02-11T17:36:12.000Z","size":60719,"stargazers_count":19,"open_issues_count":0,"forks_count":5,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-02-11T18:37:20.222Z","etag":null,"topics":["linux","linux-kernel"],"latest_commit_sha":null,"homepage":"https://oracle.github.io/kconfigs/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/oracle.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-26T15:58:07.000Z","updated_at":"2025-01-18T15:01:40.000Z","dependencies_parsed_at":"2024-05-10T19:32:29.349Z","dependency_job_id":"425c1d50-5786-4bfa-b078-be749edc6847","html_url":"https://github.com/oracle/kconfigs","commit_stats":null,"previous_names":["oracle/kconfigs"],"tags_count":0,"template":false,"template_full_name":"oracle/template-repo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oracle%2Fkconfigs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oracle%2Fkconfigs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oracle%2Fkconfigs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oracle%2Fkconfigs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/oracle","download_url":"https://codeload.github.com/oracle/kconfigs/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238955770,"owners_count":19558454,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["linux","linux-kernel"],"created_at":"2024-09-24T18:59:19.575Z","updated_at":"2025-07-05T22:33:41.500Z","avatar_url":"https://github.com/oracle.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# kconfigs\n\nThis is a system for fetching the Linux kernel configuration files for a variety\nof Linux distributions, and archiving them for later analysis. The resulting\nconfiguration data is summarized into a compact JSON file which can be\nbrowsed on [our webpage][1]. Or, you can simply download the configurations and\nexplore them with `grep`.\n\n[1]: https://oracle.github.io/kconfigs/\n\nOn a regular basis, Github CI runs will fetch more recent package versions and\nkeep the configurations up-to-date.\n\n## Browsing Configurations Locally\n\nWhile the [webpage][1] is convenient, you can also directly clone the `gh-pages`\nbranch of this repository to explore locally:\n\n``` sh\ngit clone https://github.com/oracle/kconfigs -b gh-pages\ncd kconfigs\ngrep -r IKCONFIG_PROC out/\n```\n\n## How to Run\n\nTo run kconfigs locally, you'll need:\n\n- Python 3.11 or later (with pip and virtualenv). Python 3.12 is the official\n  verison in use, but other recent versions work.\n- Common CLI compression tools (gzip, bzip2, xz, zstd, tar)\n- Linux packaging tools (gpg, rpm, cpio, dpk)\n- The `make` command\n\nIf you'd like to do development, then you should also install `pipenv`, and\nPython 3.12 which will ensure you use the exact version of Python and all\ndependencies, which get used in the Github CI system.\n\nThe following setup instructions apply to Oracle Linux 9. First, install runtime\ndependencies (most should already be installed, but they are listed for\ncompleteness).\n\n```sh\ndnf install -y python3.12{,-devel,-venv,-pip} \\\n               gzip bzip2 xz zstd tar \\\n               rpm cpio dpkg \\\n               make\n```\n\nTo setup the runtime Python environment:\n\n``` sh\ngit clone https://github.com/oracle/kconfigs\ncd kconfigs\nmake venv\n\n# Or if you would like to use pipenv to setup all development dependencies:\nmake dev\n```\n\nTo run the extraction routine:\n\n``` sh\nmake run\n```\n\nConfigurations will appear in the `out` directory.\n\n## Documentation\n\nYou should be able to find everything you need by browsing to our [web page][1]\nwhich displays the latest kernel configuration information.\n\n## Examples\n\nSee \"How to Run\".\n\n## Help\n\nIf you have any questions or concerns, please open a Github issue and we will\ntry to help you out.\n\n## Contributing\n\nThis project welcomes contributions from the community. Before submitting a pull\nrequest, please [review our contribution guide](./CONTRIBUTING.md).\n\nFor development, you should use Python 3.12 and use pipenv to manage\ndependencies.\n\n## Security\n\nThe kconfigs project tries to verify all GPG and checksum metadata for the\nsources it uses. Here's an overview of what we check:\n\n* RPM-based distributions:\n  * A GPG key is required for all RPM-based distributions.\n  * `repomd.xml`: GPG signature required \u0026 checked. We do have an exception for\n    some unsigned databases that are served via HTTPS from an allowlist of\n    trusted hosts.\n  * Sqlite database: checksum required \u0026 checked.\n  * RPM package: checksum required \u0026 checked, RPM's built-in GPG signature is\n    also required and checked.\n* Debian-based distributions:\n  * A GPG key is required for all Debian-based distributions.\n  * `Release` file: GPG signature required \u0026 checked.\n  * `Packages` file: checksum required \u0026 checked.\n* Pacman-based distributions:\n  * The database file is not signed and cannot be verified.\n  * The individual packages are GPG signed, which we verify.\n* Upstream kernel configurations:\n  * We verify that stable kernel releases have a valid signature from Greg KH.\n  * The mainline source distribution is unsigned and cannot be verified.\n* Android configurations:\n  * We rely on HTTPS connections to `source.android.com` to ensure the integrity\n    of the data. There are no GPG signatures or checksums provided.\n\nPlease consult the [security guide](./SECURITY.md) for our responsible security\nvulnerability disclosure process\n\n## License\n\nCopyright (c) 2024, Oracle and/or its affiliates.\n\nLicensed under the terms of the GNU General Public License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foracle%2Fkconfigs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foracle%2Fkconfigs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foracle%2Fkconfigs/lists"}