`--mirror=` (or the default repository) will be configured inside the final
image instead.
+`RepositoryKeyCheck=`, `--repository-key-check=`
+
+: Controls signature/key checks when using repositories, enabled by default.
+ Useful to disable checks when combined with `--local-mirror=` and using only
+ a repository from a local filesystem. Not used for DNF-based distros yet.
+
`Repositories=`, `--repositories=`
: Additional package repositories to use during installation. Expects
if debootstrap_knows_arg("--no-check-valid-until"):
cmdline += ["--no-check-valid-until"]
+ if not args.repository_key_check:
+ cmdline += ["--no-check-gpg"]
+
mirror = args.local_mirror or args.mirror
assert mirror is not None
cmdline += [args.release, root, mirror]
path.chmod(permissions)
pacman_conf = workspace(root) / "pacman.conf"
+ if args.repository_key_check:
+ sig_level = "Required DatabaseOptional"
+ else:
+ # If we are using a single local mirror built on the fly there
+ # will be no signatures
+ sig_level = "Never"
with pacman_conf.open("w") as f:
f.write(
dedent(
Architecture = auto
Color
CheckSpace
- SigLevel = Required DatabaseOptional
+ SigLevel = {sig_level}
ParallelDownloads = 5
[core]
cmdline += [
"--root",
root,
- "--gpg-auto-import-keys",
+ "--gpg-auto-import-keys" if args.repository_key_check else "--no-gpg-checks",
"install",
"-y",
"--no-recommends",
group.add_argument("-m", "--mirror", help="Distribution mirror to use")
group.add_argument("--local-mirror", help="Use a single local, flat and plain mirror to build the image",
)
+ group.add_argument(
+ "--repository-key-check",
+ metavar="BOOL",
+ action=BooleanAction,
+ help="Controls signature and key checks on repositories",
+ default=True,
+ )
group.add_argument(
"--repositories",
MkosiPrinter.info(" Mirror: " + args.mirror)
if args.local_mirror is not None:
MkosiPrinter.info(" Local Mirror (build): " + args.local_mirror)
+ MkosiPrinter.info(f" Repo Signature/Key check: {yes_no(args.repository_key_check)}")
if args.repositories is not None and len(args.repositories) > 0:
MkosiPrinter.info(" Repositories: " + ",".join(args.repositories))
MkosiPrinter.info(" Use Host Repositories: " + yes_no(args.use_host_repositories))