KIWI::IMAGE::INFO(8)

πŸ’… kiwi::image::info β€” the kiwi-ng manual, bestie edition ✨

okay so you want the tea on an image description? this is the kiwi-ng glow-up page for image info πŸŽ€ she's the one you call when you need to know what's actually inside a description, no cap.


🌸 NAME 🌸

kiwi::image::info β€” serves you detailed information about an image description. literally her whole job, and she ate πŸ’…


✨ SYNOPSIS ✨

kiwi-ng [global options] service <command> [<args>]

kiwi-ng image info --help
kiwi-ng image info --description=<directory>
    [--resolve-package-list]
    [--list-profiles]
    [--print-kiwi-env]
    [--ignore-repos]
    [--add-repo=<source,type,alias,priority,imageinclude,package_gpgcheck,{signing_keys},components,distribution,repo_gpgcheck,repo_sourcetype>...]
    [--add-repo-credentials=<user:pass_or_filename>...]
    [--print-xml|--print-yaml|--print-toml]

like, that's the whole vibe. --description is basically mandatory, everything else is a little accessory πŸ¦‹


🫢 DESCRIPTION 🫢

so she hands you information about the image description you point her at. if you don't give her any specific info option, she just lists the basic info about the image β€” and bestie, that same info is also chillin' in the image XML description file, so it's not new lore, just conveniently served πŸ’–

but if you ask for an extension option like resolve-package-list, that's when a dependency resolver actually runs through the list of packages and gives you the detailed, juicy version of the image description. main character energy fr πŸ”₯


πŸ‘‘ OPTIONS πŸ‘‘

  • --add-repo=<source,type,alias,priority,imageinclude,package_gpgcheck,{signing_keys},components,distribution,repo_gpgcheck,repo_sourcetype> β€” adds a whole new repository to the existing repository setup in the XML description. you can specify this multiple times, and honestly? go off 🌈
    • source β€” the source URL pointing to a package repository, and it must be in a format the selected package manager supports. check the URI_TYPES section of kiwi-ng system build for the deets on supported source locators πŸ‘€
    • type β€” the repository type: rpm-md, apt-deb.
    • alias β€” an alias name for the repository. if you don't specify one, KIWI NG generates an alias from a hex representation of uuid4. the hex uniquely identifies the repo, sure, but it's lowkey not descriptive at all β€” so we recommend descriptive aliases, bestie, trust πŸ’…
    • priority β€” a number showing the repository priority. how the value gets evaluated depends on the selected package manager, so go read that package manager's documentation for the supported priority ranges and what they mean πŸ“š
    • imageinclude β€” set it to either true or false to say whether the repository is part of the system image repository setup or not.
    • package_gpgcheck β€” set it to either true or false to say whether the repository should validate the package signatures πŸ”
    • {signing_keys} β€” a list of signing_keys enclosed in curly brackets and delimited by a semicolon. the reference to a signing key must be provided in the URI format.
    • components β€” a component list for Debian-based repos, as a space-delimited string.
    • distribution β€” the main distribution name for Debian-based repos.
    • repo_gpgcheck β€” set it to either true or false to say whether the repository should validate the repository signature.
    • repo_sourcetype β€” specifies the source type of the repository path. supported values are baseurl, metalink, or mirrorlist. with baseurl, the source path is interpreted as a simple URI. if metalink is set, the source path is resolved as a metalink URI, and if mirrorlist is set, the source path is resolved as a mirrorlist file. if you don't specify anything, baseurl is the default ⭐
  • --add-repo-credentials=<user:pass_or_filename> β€” for uri://user:pass@location repositories, this sets the user and password associated with an add-repo specification. and if the value you give describes a filename in the filesystem, the first line of that file is used as the credentials πŸ“
  • --description=<directory> β€” the description must be a directory containing a kiwi XML description plus optional metadata files. that's the whole requirement, periodt.
  • --ignore-repos β€” ignores all repository configurations from the XML description. this one is usually used together with the --add-repo option. otherwise there are literally no repositories available for processing the requested image information, which could lead to an error 😭
fr fr, pair these two up or things get messy.
  • --list-profiles β€” lists the profiles available for the selected/default type.
NOTE: if the image description is designed so that there's no default build type configured and/or the main build type is also profiled, it's required to provide this info to kiwi so she can list further profiles for this type. for example: kiwi-ng --profile top_level_entry_profile image info ... πŸ™ˆ
  • --print-kiwi-env β€” prints the kiwi profile environment variables. the listed variables are available in the shell environment of the kiwi hook scripts ✨
NOTE: the kiwi profile environment grows during the build process. so when it's used in early stages β€” e.g., in a post_bootstrap.sh script β€” it can happen that not all variables have a value. that means the setup of the kiwi profile environment in the image info output can therefore only list the static configuration values that are known at the beginning of a build process πŸ’€ no cap.
  • --resolve-package-list β€” solves the package dependencies and returns a list of all packages, including their attributes β€” for example, size, shasum, and more πŸ”₯
  • --print-xml β€” prints the image description in the XML format. the specified image description is converted to XML and sent to the XSLT stylesheet processor. the result is then validated using the RelaxNG schema and the schematron rules. this command is normally used to convert an old image description to the latest schema πŸ‘‘
  • --print-yaml β€” behaves similarly to --print-xml, but after validation the result is converted into the YAML format. this command can be used for different operations:
    • conversion of the specified image description from or into different formats. this requires the anymarkup Python module to be installed. the module is not a hard requirement and is loaded on demand β€” so if the module is missing, requests to convert to a format other than XML will fail 🫠
    • updates an old image description to the latest schema.
  • --print-toml β€” behaves like --print-yaml, but the validated result is converted into TOML. this also requires the anymarkup Python module 🧚

πŸ’œ AUTHOR πŸ’œ

Marcus SchΓ€fer β€” the icon behind it all πŸ‘‘


2020-2026, Marcus SchΓ€fer


and that's the whole page, bestie β€” written by the kiwi-ng girlies, version 11.1.1, dated Oct 06, 2026. go be iconic with your image descriptions πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from