KCONFIG-QCONF(1)

πŸ‘‘ KCONFIG-QCONF β€” the kconfig-qconf(1) glow-up ✨

okay bestie, so this is the manual page for kconfig-qconf, and the manual is literally called KCONFIG-QCONF(1). It's giving October 2017 vintage, but she still eats. Let's get into it πŸ’…


πŸ¦‹ NAME πŸ¦‹

kconfig-qconf β€” a standalone implementation of the Linux Kconfig parser. periodt.


🌸 SYNOPSIS 🌸

kconfig-qconf [options] <KConfig_file>

✨ DESCRIPTION ✨

so the kconfig toolkit supports the Kconfig language and implements the parser plus the configuration support that goes with the KConfig files, respecting the Linux kernel KConfig convention. no cap, that's the whole vibe.

At configuration time, here's the squad πŸ‘―:

  • kconfig-mconf is based on ncurses (menuconfig)
  • kconfig-conf is based on dialog (config)
  • kconfig-gconf is based on GTK+ (gconfig)
  • kconfig-qconf is based on QT (qconfig)

And the associated tools that roll with them:

  • kconfig-diff displays symbols diff between .config files

πŸŽ€ OPTIONS πŸŽ€

  • --silentoldconfig β€” only for kconfig-conf btw. It reloads a given .config and regenerates header and command files accordingly.
  • --allnoconfig β€” sets all boolean configuration to no. just no. all of it. πŸ™…β€β™€οΈ
  • --allyesconfig β€” sets all boolean configuration to yes. yes queen. πŸ‘‘
  • --randconfig β€” generates a random configuration. chaos mode activated fr fr 🎲

πŸ’– ENVIRONMENT πŸ’–

Environment variables for '*config' πŸ’œ

  • KCONFIG_CONFIG β€” this environment variable can be used to specify a default kernel config file name to override the default name of ".config".
  • KCONFIG_OVERWRITECONFIG β€” if you set KCONFIG_OVERWRITECONFIG in the environment, Kconfig will not break symlinks when .config is a symlink to somewhere else.
  • CONFIG_ β€” if you set CONFIG_ in the environment, Kconfig will prefix all symbols with its value when saving the configuration, instead of using the default, "CONFIG_".

Environment variables for '{allyes/allmod/allno/rand}config' 🌈

  • KCONFIG_ALLCONFIG β€” the allyesconfig / allmodconfig / allnoconfig / randconfig variants can also use the environment variable KCONFIG_ALLCONFIG as a flag or a filename that contains config symbols that the user requires to be set to a specific value. If KCONFIG_ALLCONFIG is used without a filename where KCONFIG_ALLCONFIG == "" or KCONFIG_ALLCONFIG == "1", make *config checks for a file named "all{yes/mod/no/def/random}.config" (corresponding to the *config command that was used) for symbol values that are to be forced. If this file is not found, it checks for a file named "all.config" to contain forced values.

This enables you to create "miniature" config (miniconfig) or custom config files containing just the config symbols that you are interested in. Then the kernel config system generates the full .config file, including symbols of your miniconfig file. obsessed, honestly. 😭

This 'KCONFIG_ALLCONFIG' file is a config file which contains (usually a subset of all) preset config symbols. These variable settings are still subject to normal dependency checks. (so like, don't get cocky πŸ’€)

Examples:

KCONFIG_ALLCONFIG=custom-notebook.config make allnoconfig or
KCONFIG_ALLCONFIG=mini.config make allnoconfig or
make KCONFIG_ALLCONFIG=mini.config allnoconfig

These examples will disable most options (allnoconfig) but enable or disable the options that are explicitly listed in the specified mini-config files.

Environment variables for 'randconfig' 🎲

  • KCONFIG_SEED β€” you can set this to the integer value used to seed the RNG, if you want to somehow debug the behaviour of the kconfig parser/frontends. If not set, the current time will be used.
  • KCONFIG_PROBABILITY β€” this variable can be used to skew the probabilities. See /usr/share/doc/kconfig-frontends/kconfig.txt.gz.

Environment variables for 'silentoldconfig' 🀫

  • KCONFIG_NOSILENTUPDATE β€” if this variable has a non-blank value, it prevents silent kernel config updates (requires explicit updates).
  • KCONFIG_AUTOCONFIG β€” this environment variable can be set to specify the path name of the "auto.conf" file. Its default value is "include/config/auto.conf".
  • KCONFIG_TRISTATE β€” this environment variable can be set to specify the path name of the "tristate.conf" file. Its default value is "include/config/tristate.conf".
  • KCONFIG_AUTOHEADER β€” this environment variable can be set to specify the path name of the "autoconf.h" (header) file. Its default value is "include/generated/autoconf.h".

πŸ“œ HISTORY πŸ“œ

June 2017, Man page originally compiled by Philippe Thierry (phil at reseau-libre dot com). shoutout to the author for real 🫢


and that's the whole page bestie, you ate that πŸ“

okay so that's a wrap on KCONFIG-QCONF(1), from the kconfig-Qconf Man Page source β€” written by Philippe Thierry, and this version is dated October 2017. slay πŸ’–βœ¨