KRAFT-BUILD(1)

πŸ“¦
version 0.12.16 Β· 2 versions
, in nixpkgs unstable

πŸ’… NAME πŸ’…

kraft-build β€” Configure and build Unikraft unikernels. Bestie, this is straight from the KraftKit Manual β€” aka the KraftKit CLI(1) page β€” and it's giving very main-character build energy ✨

πŸš€ SYNOPSIS πŸš€

kraft build [FLAGS] [SUBCOMMAND|DIR]

okay so that's the shape of it: flags are optional, then either a subcommand or a directory. Slay.

πŸ› οΈ DESCRIPTION πŸ› οΈ

Build a Unikraft unikernel. Literally that's the assignment, no cap.

The default behaviour of kraft build is to build a project. Given no arguments, you will be guided through interactive mode β€” it holds your hand a little and that's iconic 🫢

✨ OPTIONS ✨

  • --all[=false] β€” Build all targets. All of them, bestie.
  • -m, --arch="" β€” Filter the creation of the build by architecture of known targets (x86_64/arm64/arm).
  • --build-log="" β€” Use the specified file to save the output from the build.
  • -c, --config="" β€” Override the path to the KConfig .config file.
  • --dbg[=false] β€” Build the debuggable (symbolic) kernel image instead of the stripped image.
  • -e, --env=[] β€” Set environment variables to be built in the unikernel.
  • --force-pull[=false] β€” Force pulling packages before building.
  • -h, --help[=false] β€” help for build.
  • -j, --jobs=0 β€” Allow N jobs at once.
  • --keep-file-owners[=false] β€” Keep file owners (user:group) in the rootfs (false sets 'root:root').
  • -k, --kernel="" β€” Set the output path of the built kernel image.
  • -K, --kraftfile="" β€” Set an alternative path of the Kraftfile.
  • -F, --no-cache[=false] β€” Force a rebuild even if existing intermediate artifacts already exist.
  • --no-configure[=false] β€” Do not run Unikraft's configure step before building.
  • --no-fast[=false] β€” Do not use maximum parallelization when performing the build.
  • --no-fetch[=false] β€” Do not run Unikraft's fetch step before building.
  • --no-rootfs[=false] β€” Do not build the root file system (initramfs).
  • --no-update[=false] β€” Do not update package index before running the build.
  • -o, --output="" β€” Set the output directory for the build artifacts.
  • -p, --plat="" β€” Filter the creation of the build by platform of known targets (fc/qemu/xen).
  • --print-stats[=false] β€” Print build statistics.
  • --rootfs="" β€” Specify a path to use as root file system (can be volume or initramfs).
  • --rootfs-type="cpio" β€” Set the type of the format of the rootfs (cpio/erofs).
  • -t, --target="" β€” Build a particular known target.
  • -T, --toolchain=[] β€” Override toolchain variables for this build (e.g. CC=clang LD=ld.lld).
  • --toolchain-profile="" β€” Use a pre-configured toolchain profile.
  • -C, --validate[=false] β€” Validate KConfig options against known symbols.

πŸ“ EXAMPLES πŸ“

# Build the current project (cwd)
$ kraft build

# Build path to a Unikraft project
$ kraft build path/to/app

πŸ‘€ SEE ALSO πŸ‘€

  • kraft(1) β€” the big sibling, go say hi πŸ’–

πŸ•°οΈ HISTORY πŸ•°οΈ

1-Jan-1980 β€” Auto generated by KraftKit. Vintage, honestly πŸŽ€


πŸ’– That's the whole vibe, bestie. Page brought to you by KraftKit Documentation, dated Jan 1980 β€” stay iconic and go build something slay πŸ’…βœ¨

πŸ“¦ where this page comes from