diff --git a/inputs/org.osbuild.ostree b/inputs/org.osbuild.ostree index 606d8b279..666aefecc 100755 --- a/inputs/org.osbuild.ostree +++ b/inputs/org.osbuild.ostree @@ -14,10 +14,10 @@ contain `ref` it was specified. import json import os -import subprocess import sys from osbuild import inputs +from osbuild.util import ostree SCHEMA = """ "definitions": { @@ -84,34 +84,24 @@ SCHEMA = """ """ -def ostree(*args, _input=None, **kwargs): - args = list(args) + [f'--{k}={v}' for k, v in kwargs.items()] - print("ostree " + " ".join(args), file=sys.stderr) - subprocess.run(["ostree"] + args, - encoding="utf-8", - stdout=sys.stderr, - input=_input, - check=True) - - def export(checksums, cache, output): repo_cache = os.path.join(cache, "repo") repo_out = os.path.join(output, "repo") - ostree("init", mode="archive", repo=repo_out) + ostree.cli("init", mode="archive", repo=repo_out) refs = {} for commit, options in checksums.items(): # Transfer the commit: remote → cache print(f"exporting {commit}", file=sys.stderr) - ostree("pull-local", repo_cache, commit, - repo=repo_out) + ostree.cli("pull-local", repo_cache, commit, + repo=repo_out) ref = options.get("ref") if ref: - ostree("refs", "--create", ref, commit, - repo=repo_out) + ostree.cli("refs", "--create", ref, commit, + repo=repo_out) refs[commit] = options diff --git a/osbuild/buildroot.py b/osbuild/buildroot.py index 5b47d70e8..a0f654d6b 100644 --- a/osbuild/buildroot.py +++ b/osbuild/buildroot.py @@ -196,7 +196,7 @@ def run(self, argv, monitor, timeout=None, binds=None, readonly_binds=None, extr # Import directories from the caller-provided root. imports = ["usr"] - if self.mount_boot: + if True: imports.insert(0, "boot") for p in imports: diff --git a/osbuild/objectstore.py b/osbuild/objectstore.py index 4a19ce9fc..7340287e2 100644 --- a/osbuild/objectstore.py +++ b/osbuild/objectstore.py @@ -287,10 +287,16 @@ def init(self): # with just /usr mounted from the host usr = os.path.join(root, "usr") os.makedirs(usr) + boot = os.path.join(root, "boot") + os.makedirs(boot) + etc = os.path.join(root, "etc") + os.makedirs(etc) # ensure / is read-only mount(root, root) + mount("/etc", etc) mount("/usr", usr) + mount("/boot", boot) @property def tree(self) -> os.PathLike: diff --git a/osbuild/util/ostree.py b/osbuild/util/ostree.py index 8d08c3a1b..732698a7e 100644 --- a/osbuild/util/ostree.py +++ b/osbuild/util/ostree.py @@ -9,6 +9,8 @@ # pylint doesn't understand the string-annotation below from typing import Any, List # pylint: disable=unused-import +from osbuild.util.rhsm import Subscriptions + from .types import PathLike @@ -111,6 +113,32 @@ def as_tmp_file(self): os.unlink(name) +def setup_remote(repo, name, remote): + """Configure an OSTree remote in a given repo""" + + url = remote["url"] + gpg = remote.get("gpgkeys", []) + + remote_add_args = [] + if not gpg: + remote_add_args = ["--no-gpg-verify"] + + if "contenturl" in remote: + remote_add_args.append(f"--contenturl={remote['contenturl']}") + + if remote.get("secrets", {}).get("name") == "org.osbuild.rhsm.consumer": + secrets = Subscriptions.get_consumer_secrets() + remote_add_args.append(f"--set=tls-client-key-path={secrets['consumer_key']}") + remote_add_args.append(f"--set=tls-client-cert-path={secrets['consumer_cert']}") + + cli("remote", "add", name, url, + *remote_add_args, repo=repo) + + for key in gpg: + cli("remote", "gpg-import", "--stdin", + name, repo=repo, _input=key) + + def rev_parse(repo: PathLike, ref: str) -> str: """Resolve an OSTree reference `ref` in the repository at `repo`""" diff --git a/sources/org.osbuild.ostree b/sources/org.osbuild.ostree index 6e1558d0d..f6b5a3788 100755 --- a/sources/org.osbuild.ostree +++ b/sources/org.osbuild.ostree @@ -8,13 +8,11 @@ gpg keys are provided via `gpgkeys`. import os -import subprocess import sys import uuid from osbuild import sources -from osbuild.util.ostree import show -from osbuild.util.rhsm import Subscriptions +from osbuild.util import ostree SCHEMA = """ "additionalProperties": false, @@ -81,17 +79,6 @@ SCHEMA = """ """ -def ostree(*args, _input=None, **kwargs): - args = list(args) + [f'--{k}={v}' for k, v in kwargs.items()] - print("ostree " + " ".join(args), file=sys.stderr) - subprocess.run(["ostree"] + args, - encoding="utf-8", - stdout=subprocess.PIPE, - stderr=subprocess.STDOUT, - input=_input, - check=True) - - class OSTreeSource(sources.SourceService): content_type = "org.osbuild.ostree" @@ -103,54 +90,33 @@ class OSTreeSource(sources.SourceService): def fetch_one(self, checksum, desc): commit = checksum remote = desc["remote"] - url = remote["url"] - gpg = remote.get("gpgkeys", []) - uid = str(uuid.uuid4()) - - remote_add_args = [] - if not gpg: - remote_add_args = ["--no-gpg-verify"] - - if "contenturl" in remote: - remote_add_args.append(f"--contenturl={remote['contenturl']}") - - if remote.get("secrets", {}).get("name") == "org.osbuild.rhsm.consumer": - secrets = Subscriptions.get_consumer_secrets() - remote_add_args.append(f"--set=tls-client-key-path={secrets['consumer_key']}") - remote_add_args.append(f"--set=tls-client-cert-path={secrets['consumer_cert']}") - - ostree("remote", "add", - uid, url, - *remote_add_args, - repo=self.repo) + # This is a temporary remote so we'll just use a random name + name = str(uuid.uuid4()) - for key in gpg: - ostree("remote", "gpg-import", "--stdin", uid, - repo=self.repo, _input=key) + ostree.setup_remote(self.repo, name, remote) # Transfer the commit: remote → cache print(f"pulling {commit}", file=sys.stderr) - ostree("pull", uid, commit, repo=self.repo) + ostree.cli("pull", name, commit, repo=self.repo) - # Remove the temporary remotes again - ostree("remote", "delete", uid, - repo=self.repo) + # Remove the temporary remote again + ostree.cli("remote", "delete", name, repo=self.repo) def setup(self, args): super().setup(args) # Prepare the cache and the output repo self.repo = os.path.join(self.cache, "repo") - ostree("init", mode="archive", repo=self.repo) + ostree.cli("init", mode="archive", repo=self.repo) # Make sure the cache repository uses locks to protect the metadata during # shared access. This is the default since `2018.5`, but lets document this # explicitly here. - ostree("config", "set", "repo.locking", "true", repo=self.repo) + ostree.cli("config", "set", "repo.locking", "true", repo=self.repo) # pylint: disable=[no-self-use] def exists(self, checksum, _desc): try: - show(self.repo, checksum) + ostree.show(self.repo, checksum) except RuntimeError: return False return True diff --git a/stages/org.osbuild.ostree.deploy b/stages/org.osbuild.ostree.deploy index 7006f07f6..724209685 100755 --- a/stages/org.osbuild.ostree.deploy +++ b/stages/org.osbuild.ostree.deploy @@ -23,7 +23,7 @@ import os import sys import osbuild.api -from osbuild.util import ostree +from osbuild.util import containers, ostree from osbuild.util.mnt import MountGuard CAPABILITIES = ["CAP_MAC_ADMIN"] @@ -31,7 +31,7 @@ CAPABILITIES = ["CAP_MAC_ADMIN"] SCHEMA_2 = """ "options": { "additionalProperties": false, - "required": ["osname", "ref"], + "required": ["osname"], "properties": { "mounts": { "description": "Mount points of the final file system", @@ -84,12 +84,33 @@ SCHEMA_2 = """ }, "inputs": { "type": "object", - "required": ["commits"], "additionalProperties": false, + "oneOf": [{ + "required": ["commits"] + }, { + "required": ["images"] + }, { + "not": { + "anyOf": [{ + "required": ["commits"] + }, { + "required": ["images"] + }] + } + }], "properties": { "commits": { "type": "object", "additionalProperties": true + }, + "images": { + "type": "object", + "additionalProperties": true + }, + "manifest-lists": { + "type": "object", + "description": "Optional manifest lists to merge into images. The metadata must specify an image ID to merge to.", + "additionalProperties": true } } } @@ -104,33 +125,68 @@ def make_fs_identifier(desc): raise ValueError("unknown rootfs type") -def main(tree, inputs, options): - osname = options["osname"] - rootfs = options.get("rootfs") - mounts = options.get("mounts", []) - kopts = options.get("kernel_opts", []) - ref = options["ref"] - remote = options.get("remote") +def ostree_commit_deploy(tree, inputs, osname, remote, ref, kopts): + if len(inputs) == 0: + if not ref: + raise ValueError("ref should be specified in options") + elif len(inputs) == 1: + if ref: + raise ValueError("Should not specify ref if input was specified") - # If provided an input then do the pull into the tree - if len(inputs) != 0: + # If we have an input then we need to pull_local() from the input + # first before we deploy. source_repo, commits = ostree.parse_input_commits(inputs["commits"]) target_repo = f"{tree}/ostree/repo" for commit, data in commits.items(): - loopref = data.get("ref", commit) - ostree.pull_local(source_repo, target_repo, remote, loopref) + ref = data.get("ref", commit) + ostree.pull_local(source_repo, target_repo, remote, ref) if remote: ref = f"{remote}:{ref}" - kargs = [] + kargs = [f'--karg-append={v}' for v in kopts] + ostree.cli("admin", "deploy", ref, + *kargs, sysroot=tree, os=osname) + + +def ostree_container_deploy(tree, inputs, osname, kopts): + images = containers.parse_containers_input(inputs) + for image in images.values(): + with containers.container_source(image) as (image_name, image_source): + extra_args = [] + imgref = f"ostree-unverified-image:{image_source}" + + extra_args.append(f'--imgref={imgref}') + extra_args.append(f'--stateroot={osname}') + extra_args.append(f'--target-imgref=ostree-unverified-registry:{image_name}') + + kargs = [f'--karg={v}' for v in kopts] + + ostree.cli("container", "image", "deploy", + *extra_args, sysroot=tree, *kargs) + + +def main(tree, inputs, options): + osname = options["osname"] + rootfs = options.get("rootfs") + mounts = options.get("mounts", []) + kopts = options.get("kernel_opts", []) + ref = options.get("ref", "") + remote = options.get("remote") + + # schema should catch the case in which there are more + # than one input but this adds a second layer of security + if len(inputs) > 1: + raise ValueError("Only one input accepted") + + # distingush between ostree commit or container image input + input_type = None + for key in inputs: + input_type = key if rootfs: rootfs_id = make_fs_identifier(rootfs) - kargs += [f"--karg=root={rootfs_id}"] - - for opt in kopts: - kargs += [f"--karg-append={opt}"] + kopts += [f"root={rootfs_id}"] with MountGuard() as mounter: for mount in mounts: @@ -138,10 +194,10 @@ def main(tree, inputs, options): path = os.path.join(tree, path) mounter.mount(path, path) - ostree.cli("admin", "deploy", ref, - *kargs, - sysroot=tree, - os=osname) + if input_type == 'images': + ostree_container_deploy(tree, inputs, osname, kopts) + else: + ostree_commit_deploy(tree, inputs, osname, remote, ref, kopts) if __name__ == '__main__': diff --git a/test/data/manifests/fedora-coreos-container.mpp.yaml b/test/data/manifests/fedora-coreos-container.mpp.yaml new file mode 100644 index 000000000..f70337aaf --- /dev/null +++ b/test/data/manifests/fedora-coreos-container.mpp.yaml @@ -0,0 +1,256 @@ +version: '2' +mpp-define-image: + id: image + #10G + size: '10737418240' + table: + uuid: 00000000-0000-4000-a000-000000000001 + label: gpt + partitions: + - id: BIOS-BOOT + size: 2048 + type: 21686148-6449-6E6F-744E-656564454649 + bootable: true + uuid: FAC7F1FB-3E8D-4137-A512-961DE09A5549 + - id: EFI-SYSTEM + size: 260096 + type: C12A7328-F81F-11D2-BA4B-00A0C93EC93B + uuid: 68B2905B-DF3E-4FB3-80FA-49D1E773AA33 + - id: boot + size: 786432 + type: 0FC63DAF-8483-4772-8E79-3D69D8477DE4 + uuid: 61B2905B-DF3E-4FB3-80FA-49D1E773AA32 + - id: root + # XXX: Dynamically set this size in the future + size: 8388608 + type: 0FC63DAF-8483-4772-8E79-3D69D8477DE4 + uuid: CA7D7CCB-63ED-4C53-861C-1742536059CC +# sources: +# org.osbuild.ostree: +# items: +# 2c39e9b6a6b26226b626f4daf815d5307a96b2cd57463e94f7c618e312a61980: +# remote: +# url: https://kojipkgs.fedoraproject.org/ostree/repo/ +pipelines: + - mpp-import-pipelines: + path: fedora-vars.ipp.yaml + # - mpp-import-pipeline: + # path: fedora-build-v2.ipp.yaml + # id: build + runner: + mpp-format-string: org.osbuild.fedora{release} + - name: image-tree + # build: name:build + source-epoch: 1659397331 + stages: + - type: org.osbuild.ostree.init-fs + - type: org.osbuild.ostree.os-init + options: + osname: fedora-coreos + - type: org.osbuild.ostree.config + options: + repo: /ostree/repo + config: + sysroot: + readonly: false + bootloader: none + - type: org.osbuild.mkdir + options: + paths: + - path: /boot/efi + mode: 448 + - type: org.osbuild.ignition + - type: org.osbuild.ostree.deploy + options: + osname: fedora-coreos + # ref: fedora/x86_64/coreos/stable + # remote: fedora + mounts: + - /boot + - /boot/efi + rootfs: + label: root + kernel_opts: + - rw + - console=tty0 + - console=ttyS0 + - ignition.platform.id=qemu + - '$ignition_firstboot' + - 'enforcing=0' + inputs: + images: + type: org.osbuild.containers + origin: org.osbuild.source + mpp-resolve-images: + images: + - source: quay.io/fedora/fedora-coreos + tag: stable + name: quay.io/fedora/fedora-coreos:stable + # commits: + # type: org.osbuild.ostree + # origin: org.osbuild.source + # references: + # "2c39e9b6a6b26226b626f4daf815d5307a96b2cd57463e94f7c618e312a61980": + # ref: fedora/x86_64/coreos/stable + - type: org.osbuild.ostree.selinux + options: + deployment: + osname: fedora-coreos + ref: ostree/1/1/0 + - type: org.osbuild.grub2 + options: + rootfs: + label: root + bootfs: + label: boot + uefi: + vendor: fedora + install: true + legacy: i386-pc + write_defaults: false + greenboot: false + ignition: true + - name: image + # build: name:build + stages: + - type: org.osbuild.truncate + options: + filename: disk.img + size: + mpp-format-string: '{image.size}' + - type: org.osbuild.sfdisk + devices: + device: + type: org.osbuild.loopback + options: + filename: disk.img + options: + mpp-format-json: '{image.layout}' + - type: org.osbuild.mkfs.fat + devices: + device: + type: org.osbuild.loopback + options: + filename: disk.img + start: + mpp-format-int: '{image.layout[''EFI-SYSTEM''].start}' + size: + mpp-format-int: '{image.layout[''EFI-SYSTEM''].size}' + lock: true + options: + label: EFI-SYSTEM + volid: 7B7795E7 + - type: org.osbuild.mkfs.ext4 + devices: + device: + type: org.osbuild.loopback + options: + filename: disk.img + start: + mpp-format-int: '{image.layout[''boot''].start}' + size: + mpp-format-int: '{image.layout[''boot''].size}' + lock: true + options: + uuid: 96d15588-3596-4b3c-adca-a2ff7279ea63 + label: boot + - type: org.osbuild.mkfs.xfs + devices: + device: + type: org.osbuild.loopback + options: + filename: disk.img + start: + mpp-format-int: '{image.layout[''root''].start}' + size: + mpp-format-int: '{image.layout[''root''].size}' + lock: true + options: + uuid: 910678ff-f77e-4a7d-8d53-86f2ac47a823 + label: root + - type: org.osbuild.copy + inputs: + tree: + type: org.osbuild.tree + origin: org.osbuild.pipeline + references: + - name:image-tree + options: + paths: + # skopeo creates a /usr folder in sysroot + # only copy the boot and ostree folders + - from: input://tree/boot + to: mount://root/ + - from: input://tree/ostree + to: mount://root/ + devices: + efi: + type: org.osbuild.loopback + options: + filename: disk.img + start: + mpp-format-int: '{image.layout[''EFI-SYSTEM''].start}' + size: + mpp-format-int: '{image.layout[''EFI-SYSTEM''].size}' + boot: + type: org.osbuild.loopback + options: + filename: disk.img + start: + mpp-format-int: '{image.layout[''boot''].start}' + size: + mpp-format-int: '{image.layout[''boot''].size}' + root: + type: org.osbuild.loopback + options: + filename: disk.img + start: + mpp-format-int: '{image.layout[''root''].start}' + size: + mpp-format-int: '{image.layout[''root''].size}' + mounts: + - name: root + type: org.osbuild.xfs + source: root + target: / + - name: boot + type: org.osbuild.ext4 + source: boot + target: /boot + - name: efi + type: org.osbuild.fat + source: efi + target: /boot/efi + - type: org.osbuild.grub2.inst + options: + platform: i386-pc + filename: disk.img + location: + mpp-format-int: '{image.layout[''BIOS-BOOT''].start}' + core: + type: mkimage + partlabel: gpt + filesystem: ext4 + prefix: + type: partition + partlabel: + mpp-format-string: '{image.layout.label}' + number: + mpp-format-int: '{image.layout[''boot''].index}' + path: /grub2 + - name: qcow2 + # build: name:build + stages: + - type: org.osbuild.qemu + inputs: + image: + type: org.osbuild.files + origin: org.osbuild.pipeline + references: + name:image: + file: disk.img + options: + filename: disk.qcow2 + format: + type: qcow2 + compat: '1.1' diff --git a/test/data/manifests/fedora-coreos-ostree-image.json b/test/data/manifests/fedora-coreos-ostree-image.json new file mode 100644 index 000000000..16bc48336 --- /dev/null +++ b/test/data/manifests/fedora-coreos-ostree-image.json @@ -0,0 +1,1186 @@ +{ + "version": "2", + "pipelines": [ + { + "runner": "org.osbuild.fedora38", + "name": "build", + "source-epoch": 1659397331, + "stages": [ + { + "type": "org.osbuild.rpm", + "inputs": { + "packages": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": { + "sha256:66604d04522a860a1c755a9629b0cb1e25a2c24747945f1f69b41ab8522787b3": {}, + "sha256:4dc70c4a90ddede4f38d96e8184da5d3113f9404d3cd4b98b45ffd40cc503249": {}, + "sha256:718d95c40b41c2f0ecc8dc2290ebb91b529ba3be7accbad9c30c88e9ce408349": {}, + "sha256:961883b6ac18ca54b525209adce0c593f81fd8a7e71bb75bc07724e4ef72bc5f": {}, + "sha256:80619785d2f0eeccd00cd2c1afc830517cfc32eae3f33f842868474d986e9e0a": {}, + "sha256:65cd2a73c575c91c3a149d3d5ae42c11a23364ab59c710ad21b87d62a414a755": {}, + "sha256:bbe3eb89df059162bda14c6f0c06e6251984d79502806c87ae4c6befc4e392ab": {}, + "sha256:8afb9acec0a418447eebab454e992d46369e2379c31ef0d431c15ffb58c3371a": {}, + "sha256:95273426afa05a81e6cf77f941e1156f6a0a3305a7768a02c04a4164280cf876": {}, + "sha256:738f573c50a537b556e2fbb8fa4a2c0d22fc2ce4a67344f89d478989cc323ab3": {}, + "sha256:75ecf8c60bea53432b973d9391e3bdb1b6cdc1f1cad0a7b56aabfb8b70252832": {}, + "sha256:6809fe060dc93dfed723bd8faca0f5d65e4f6c62aebd2f9f39f679413b260539": {}, + "sha256:d1880b8f3e8a5fa943ba033c96dc964fac3e07c34cbd0bb8ac2b0fdcb57abcbc": {}, + "sha256:418287cd51f9ae9e5b74a18112a062a49ee51d22656dea86d08daba311c93e44": {}, + "sha256:070d86aca4548e9148901881a4ef64d98c5dfd4ea158e9208c650c7f4b225c47": {}, + "sha256:b570b4857289cf32ed57d0d84cb861677a649cef7c5cc2498a249d6593eb3614": {}, + "sha256:6652f5d40acfaeda20555bdd63e964f123e8ab4a52f8c8890e749e06b6bae3e0": {}, + "sha256:19c51da8f7703fae87c656f5312179362367f5c6a20c7de56a64c590254c5e21": {}, + "sha256:695aab11fda4b6a396c3ca141fb3ccc48af757a70f36ea3a1be2292e90c40d6f": {}, + "sha256:e8c1626c4179f11e3f597ad8e73b2ac80537d51de0181da96c0836614fdb8c0a": {}, + "sha256:0e01de6950ca71089aa2240a6b9d762b7def229e5f95d58695c7cf8670e43b1e": {}, + "sha256:42e8600a8d7e7109de32df6cb6a619b9805f9335bf467a085009f6b82dda6e22": {}, + "sha256:fc593550a01333bc07a6b35002ec85b4de40198887d3237984c4e203526db8f2": {}, + "sha256:e0a6768f0ca08572b79a265ba0d3fdeba09408431d9e717b8d45af9e1ae67cf6": {}, + "sha256:8bcdb9b5ce9b5e19c4f772f52c2c40712491d2a953496e415c380a21a792b050": {}, + "sha256:2dbbb95686253e343dc8398a0a7f331d805a4e1e72ee7a95ffd1e517db0bbc0f": {}, + "sha256:b25a042f52c8cdc1ddab56fc726d98789ff902d5264d9835f5b910db3e565213": {}, + "sha256:1ca049bff926a8ec9b6e0e69f23662934eab96c35d8eda1cf429a2a31f186045": {}, + "sha256:99d2a2b787dba361884081a84c38bb89e413e9d1ef127d63b88e285ce01c2535": {}, + "sha256:a007fe955a4fba751f211b4e8e16f916e9b7ba1c020b69d62ccb4d437a3ddd1d": {}, + "sha256:082f0c1a8a60cb45a5c30cfc745a368c03327a5e6bae71bf63683163f2ddd1a9": {}, + "sha256:575ba7ab8e3b6d5b7508a505694a37c390a64ec070659b9393c1a5283c19ce90": {}, + "sha256:fbeb7a7a95051df0dfeb7c4ab379b77ccfb0bf0174a39dae4a423b9108627771": {}, + "sha256:6c64fea958acfb77da5ee23ec1e8d0916c7809ce39987f219927e8f94e5f2755": {}, + "sha256:fc11b9f6795419afa9c958675458dbcc1b00aff25fa5e8c8e8678ec3d7cbf81e": {}, + "sha256:ee1a2034ffa2e60bf292ceca77df739ed1d8a23a285126060b56a22c7428774e": {}, + "sha256:7f7c78f598f7ff131bbe77913b9fc6b7b49d1fce30f2d8505b2d8a85458f519a": {}, + "sha256:916b75b58e9a2afe5d53cb73fdabea4d0cd8b1eba9f1213754384d0ccd531e57": {}, + "sha256:196b3612e50069c68d67ffaf3081d25923e2b4ca7e1bad8f124515b3fa472d4a": {}, + "sha256:83bb8576a018ae028ff1434c32e1f3dfab66a781e1af9057862a2d7f3d725f58": {}, + "sha256:b0fc6c55f5989aebf6e71279541206070b32b3b28b708a249bd3bdeaa6c088a4": {}, + "sha256:79986f917ef1bae7ca2378b16515ba44c19160f5a5eae4f6b697eda160bc26c1": {}, + "sha256:b38a6a0f2f9581d169e349e582b0dac3858aaa3d338b6cf1b14c6213d1f33c09": {}, + "sha256:c2987d34ab8511b86a565af0491510f1a370175bd6fb99819c1afd50a6851425": {}, + "sha256:05d3a6fbd1917fc7c304c913e4de85d65ea7281a4e4dd5648680c52e03139c47": {}, + "sha256:871c591fb98e17bbd6eaec5967c7689d1151508941cdf0c2de673bd87354e47f": {}, + "sha256:3881f1c6b5274eaf85732ed106019159805fcdb8c25031200e67a159945e85d4": {}, + "sha256:8c70948b04d05290d6441359d461d9f7ec45439b3c97430c41b8a862d59e7b60": {}, + "sha256:56df47937646df892dad25c6b9ae63d111328febfe86eb93096b8b0a11700b60": {}, + "sha256:e607df61803999da46a199d23d4acadb45b290f29b5b644e583c5526d8081178": {}, + "sha256:254c6789b4a98b96a53172e1b3fb866f71ea29a5b5fa7b39f072f33c27d897bc": {}, + "sha256:eb376264750aae673aa2a3218c291756023dea980640b30a3efe0f2199ff3889": {}, + "sha256:c8bd5bb71a475e7e86f83ff118d4fe18e02e661a4e711c0282f7da32accfc7d8": {}, + "sha256:eda39928e85cf036a1bc37084637ff3752457b4ad300503bb73c7baad888e4b6": {}, + "sha256:276c7af4b13262c0307cf2528c6d79c859ed348db68c0d2780869ea4b179dd02": {}, + "sha256:4fb6fcf7eef64a48666ff9fe5a46344087979d9e8fd87be4d58a17cf9c3ef108": {}, + "sha256:3837cbe450ceb59e1f9e7469aeb6ec98e08150773b83463725acfb2ebb77a98a": {}, + "sha256:fd4dc8fa303e14b851eb33d6d1656d84b983b9bbcfea4b4f3be9ae3de3ad64f1": {}, + "sha256:69e48c73d962e3798fbc84150dfd79258b32a4f9250ee801d8cdb9540edfc21a": {}, + "sha256:e97507c58de5625e5dea8a161eb1a8d1b4c4bb3d87b59cc1362bd7deba8db152": {}, + "sha256:940192d99005896a29de3c682259b3505652778d58ec74a003639f3ba3193a1a": {}, + "sha256:cd41c94b8c668602f7fb5eae595e5d5c34bd1b91690b5cc06f4c8c199794dfa8": {}, + "sha256:6170bb84006ad1d74202125a21308b15be0b36ec95e9dbb6552aa35026e966ea": {}, + "sha256:5d03cdd184cabb17f123dc30384c93ae2f56c502463c1c48a2df605ca8c3235d": {}, + "sha256:1300fabb5a042997633ae8f1afc7828a2f58273392eda5b99d79ed7d6a94c8e9": {}, + "sha256:fbd7e2ca35798a60402b2b6c0387694be511a8e043abb7659063ab963025d917": {}, + "sha256:7d5eb1e8f80ae1dddc082b58c387f8d7b66d48dbf1d9ab4bcf9c9c138996085b": {}, + "sha256:55ca9073756a092ccb78f3cc3d8b31f1b5d64b3b93b9cc135ce20b273ad46361": {}, + "sha256:60ed241ec381a23d03fac733a72132dbdc4ba04c412add78bfc67f1b9f1b4daa": {}, + "sha256:d48579aa97fba34dc3a4c4dd3fb10e8fd66186d970e37c2f7fc28bebbc2d31eb": {}, + "sha256:166e842798813a72e4d075dcd9b6e814d7ad3fc8d1b5860281cffe7a68784b25": {}, + "sha256:7edbfc57da668fe01a84b8eb3739034c323b3d63fb95e9ec1e0fb8d0e542e0b5": {}, + "sha256:40577e831faf421cbe15b373b48809938ed700f16e2c3441b458f343ad0996b2": {}, + "sha256:275a73dcee6d2082f20c50cd94d4b91daec6073bf8217fb5d1a2bcd7595cfe19": {}, + "sha256:10177e858a14eddec89f457b7dc74461ca9c8ecb53829386b04cf3af68a91ac6": {}, + "sha256:0ba1c05c6aabcc8345683fac7fce6b5cae576c179229dd030c65430f274f320f": {}, + "sha256:f74d1e8ba95ff5df02477ba6430d09476e8a1af6e8476453d08d99b276924b25": {}, + "sha256:736182ae69e03a19be60ed57486990f9b88cd06eeecb5e06cebc7f4b64ab0f5d": {}, + "sha256:c2ae86002363a331661c72eec5cad90a100216e46176d4bdbe2c20e465c1d73c": {}, + "sha256:8a3a4007d921c6a9b372e4573520866b445c18476f907b023ea19b436436ec33": {}, + "sha256:97fcab8f93c5213714e0a9d15e48440c567d2ac39e4ed12743198268082f0583": {}, + "sha256:2ea5dfd9d8c8fe7f61022b41fd6f8a2653692acf30253f45e1dc67def1648f32": {}, + "sha256:df0c9c337ac37f2ff367b7f045b77014ba838b5d965b95b26a408da65c25490b": {}, + "sha256:b66376e78fe54024531d94036d10b22b5050d52a9e65682b36dc7fdf24405997": {}, + "sha256:7419671c64795b96be18231e2f5d3f95eca8e6a71771863ac035f961041c1d7c": {}, + "sha256:19f873b67f23362074c03d5825e709ad521278c02e44bdeb30eba6d3bb3a8e0f": {}, + "sha256:ac8a7628a2a4b1f742fc90719145f50cfad9ecf67e3309fcf623fb3d82c2a768": {}, + "sha256:6adfb391ac7b753e103762a43837276236abbf5771d99ae214290e9423e88bfb": {}, + "sha256:487f8391033a854782006c4379e6c4e4914656b5d743199a0661c56880446aa0": {}, + "sha256:f606d5be4cefddabe67be0cefac437f15295005d24f6695d7d6e7a23b65d0c67": {}, + "sha256:9b093be8a99bfbae03c2f3dd5435fc9508003f7ef21e4280ff72fe814c1d794e": {}, + "sha256:8068b025fe7051320d35257c9ef8aef2dbdcd2adf5a5e3af356a49127173c2ec": {}, + "sha256:0d0890dba8274458d068b981164111f554b47632bf9c82d1ec41c14697f2b4af": {}, + "sha256:dd044973c572e64f505f3d00482249b2b4d71369babb5395a22861fd55b21d79": {}, + "sha256:d78d7bc485f099bb08c9de55dd12ea6a984b948face1f947de6ec805663a96c5": {}, + "sha256:9e73a2b591ebf2915bfbe7f9479498a73c982a4c74e96cc555930022e3ef0aba": {}, + "sha256:21b5a1a024c2d1877d2b7271fd3f82424eb0bd6b95395ad3a3dae5776eec8714": {}, + "sha256:bdd3f5e8edc77ce3e183134535ec838f033ed3bf0e6802e864c0a6c5fc94b22d": {}, + "sha256:b6a2b3872182fe877fcd1dd85ef66282fdeec79fab87157327c9fc6cbd80ab15": {}, + "sha256:1e0bee6fd4e234796795cd45185b250d8cf894aef0bb95f2793d9453246e1a4a": {}, + "sha256:5922028bb5642faf00d781f34bf105ef30f1988932b4b80f6bb54e9f6eed0fd6": {}, + "sha256:07fd2f8d83136d7704f9d98e553201c767a920ee3e1f9daf655edc04e699044c": {}, + "sha256:4ed3e7b6b0727b86ae9af17bd4839c06762a417a263a5d22eb7fcb39714bb480": {}, + "sha256:3096cf4153e3b487f4a97c44c8873b53b4e064c6c2b4744d41f0665d2705cbc6": {}, + "sha256:d7030af9e9e0dd9afc5b9ee02839c94757d6a4f8ebd3b21e6d81ba6141a76d46": {}, + "sha256:6e57ebf25ad25e7a6809aa0d99b5692598fb009a5438e90a2005f9fae5fd3b13": {}, + "sha256:974a64a10a3021de8a440ff4810a720f738951abd5bb944110cb9355d4ae8fa8": {}, + "sha256:e9741c40e94cf45bdc699b950c238646c2d56b3ee7984e748b94d8e6f87ba3cd": {}, + "sha256:2fb7ee2d94f7ee34cff49ab28659c07b075ed67ac147f817e19d8ee8e0adbc9c": {}, + "sha256:098e8ba05482205c70c3510907da71819faf5d40b588f865ad2a77d6eaf4af09": {}, + "sha256:0a30628b39d9c5ca81c4e073dfbf64d543284f17d4ae1325e23e3eda55f92fd9": {}, + "sha256:aafd382a4d91a3a4a37e7092b8bfe63a12b6a273ecc7b59379150a29e95f440b": {}, + "sha256:d3416e2b6c7565d7a607225d86b556398827316ae7ce43280b82630f0a022bc0": {}, + "sha256:75c0097330fa3c995e80b7791cbe7baf75d86f3523f67b3becaf37360fdb4b16": {}, + "sha256:e552fae193775507d8264f7a856fbdc51f7e594d7d8726f181312aeb9cf8b973": {}, + "sha256:14541cda2a4516ad6a17f46be6b7ad85ef5f6508d36f209f2ba7bd45bc1504e2": {}, + "sha256:33631973ecf9e6b23e0b7d07d61100fdc2db33261f4a6c43b5a09791b9455291": {}, + "sha256:28697cf1b5cb4d62c3bd154fc24a23d91a84a5bda2f974fb64bdd04e91b6cec5": {}, + "sha256:6b6c98d21642a18c20c24d2b136b02d9842179eb9e63a10a89b55ac24449f58f": {}, + "sha256:b5860547ef64d6c35aea6db2c4cb0b2a6781e0dd19c492e0600a68d845069bbc": {}, + "sha256:e0bccc94a740acf317caa4fa1fae6b0d57442ef4be36341472b7db93d588ec13": {}, + "sha256:aefb7d2d96af03f4d7ac5a132138d383faf858011b1740c48fcd152000f3c617": {}, + "sha256:845f6731b9e784784494fe9711c116631fc9ceede2fd0fa15b5f9575dee25e10": {}, + "sha256:dec378b594b79258dd8b44836c5371f316bcf5e4596d53dd84badcb6d00090df": {}, + "sha256:46ed6b8fee11c16bb8b58f698dfba9874a8f393c1e72eb7f9a7b6802ac68dd1a": {}, + "sha256:790c6d821ff575ad51242ec6832ed61c8a3c4e0ece245c3dee3292d19acb23b7": {}, + "sha256:78a15621e7e3dfb5a65b8b8aa482cf5b07f08bcef217ad29435e299d6c8aec74": {}, + "sha256:1b6b7ad33391919a3315e398d737a764121e2fc9581f75318a999e02bfc0c7c4": {}, + "sha256:15ec70665f200a5423589539c3253677eb3c15d7d620fd9bdfe2d1e429735198": {}, + "sha256:ac0a6bf295151973d2e34392a134e246560b19b7351ced244abc1ed81dfe5b8e": {}, + "sha256:dbf5c73c71c798533cbecfa54ba28c42878c455df8cb382087d8a758c3ffe290": {}, + "sha256:db9229087c86f9d5725daf2066e3a52c84dc44bb31ac940461fc8d7510681297": {}, + "sha256:faccff819eecffcee9dad49bda930a007e78b905b775b4ac0103121d7a8100db": {}, + "sha256:b7456feebe68aac1a17bbfed9ab9dcbba7955315cdb9e6700ad0323a431ef48e": {}, + "sha256:8b49dd88579f1c37e05780202e81022c9400422b830d9bdd9087161683628b22": {}, + "sha256:c3bebadfffac33733cfb7887a592efd78ed6cc99f60edf3d9a707fac0e0d6c21": {}, + "sha256:020e95a935f261f0ac6a355e101ad4ced8dc1cf9da318a6b1c081555531c79e4": {}, + "sha256:aa187ea45be32306620ad8ec6318d755075b2cad99fba7c01dc4763228a98190": {}, + "sha256:c4012952872a08b9662963b13e29f89388ce6e695e68fa8c37eb6e62bad62441": {}, + "sha256:cd0e8eb5d983a985f7df99718fde6245997bdf088fb6086442a883ddb9ed03e3": {}, + "sha256:19c1d6967a045ba091af6e87da0c40487a6c49df0382d468518c7336decc9503": {}, + "sha256:805da27b46f0d8cca2cf21a30e52401ae61ca472ae7c2d096de1cfb4b7a0d15c": {}, + "sha256:c5c409a2d5f8890eeab48b27b9f4f02925a6bbabeb21ee5e45694c7c9009f037": {}, + "sha256:876ef0556ddeca2c8f56536c80a2f6e0f64357f40bacb92f483adb8a0ff29af2": {}, + "sha256:292791eb37bc312e845e777b2e0e3173e2d951c2bfbbda125bc619dced7f40bc": {}, + "sha256:6ee063251e12f5fb0fde6d5aee982d9b9d27103335e93fcc72f6b2e829769f05": {}, + "sha256:507ffdb912296768699a70c30169077b531b1612e47041551bfe523a4b7b6c7d": {}, + "sha256:9f531fbcc52871aace8fdcdb816207c4196d5ab30ba233c71adb41371fa47e19": {}, + "sha256:f0a48ec36269d83120425b269e47ba5c86d5a9a44e0de2665c1d55c10732d25b": {}, + "sha256:8cf918f391dd521e77b09a456bc3d7f28b04a4ac64d9af19f66c6353c63cb21a": {}, + "sha256:98ca6f23dfcd29089994b48a22bc8703359ad347b868d453df2b3924cb91ddb5": {}, + "sha256:c70094904d3b13adfe8bbc8fee9f0761a2ea184b8ec9f5c667b324b789694991": {}, + "sha256:96a8f495896c0ff7520c2cc5c9c173d134efc9ef6c6b0364bc7533aefb578d41": {}, + "sha256:c0a169c3f1295ace00207e4005a1cebf832a34f013f2ed15ac65af936c0c1037": {}, + "sha256:36a1f0412e495e618ccd8636de3dcac9ad37d5d4c287a1acf2c9af4baa7745e0": {}, + "sha256:d9196608152ec34832cc82d3cefa90748f30c75986f2250d8cd0fabc3d0ceba2": {}, + "sha256:22f217f91fc2d2a666304c0b360520b13adde47761baa6fed1663bb514b6faf5": {}, + "sha256:e7c9b0c39f77c6fdf68ff04d8714c10532907a8a9c3e76fb377afe546247737f": {}, + "sha256:1c055813f64e964a2647da2c889fedb183d4ff27c8a4f4b0674bdbedaee9386a": {}, + "sha256:602145f27fd017858256c6ee880863ef5be17c6d3c6c1354f7f16f6f6348db57": {}, + "sha256:6ce309d9fd208bfff831981ee4298ccb25fa72363cb7464f1da03b8214d4351f": {}, + "sha256:605d6710ba42104ce0434bb37b0ca9a922a8392c14175bc782f8acb70b94c3aa": {}, + "sha256:c9e8b62c6af7a60a505f881d3cc35294d8b4f51c671c05401133b02ab229c2a7": {}, + "sha256:2f7ccfe2164b0063349128dd1fba018fe76a679f6ecfa8306f04dc5a5db341c7": {}, + "sha256:e96d8fe98b485ee34a20f123b1364e7015688da3e86e8331a99bb719344b4636": {}, + "sha256:8030535d92d39049b167e8ad50f8813a85eccc373b7c4bcbac981037347d8394": {}, + "sha256:13509309959035c338299a33985d56f10896466367e1f62d4fea98123e74bfc7": {}, + "sha256:cfa3d6feba480abdeb425bc045b525c641c7a864625b1864c2f5721903e364d8": {}, + "sha256:06d2101874ea4d14b4c73131c5c359d1a2e0ebe0c36a501250026e7b867a0a86": {}, + "sha256:8e4afbcb9488d9c6a9bf7d0739173b8757ce33a6f5e00f0ab7ccfcf605ed9273": {}, + "sha256:9030a26ff737b7bbb71d5208feebba1a0b2774d58dfb6016824a042e059642d8": {}, + "sha256:065b99f3541fd5f1281be2082b77e48b835a591776e92f2327bb0462c67baed0": {}, + "sha256:63e970f7b3f8c54e1dff90661c26519f32a4bf7486c40f2dd38d55e40660230e": {}, + "sha256:8d846f866158409c775656b39e372d59cf224936d29972d3b6d14e40d3b832ca": {}, + "sha256:d74ae15fc82b999c633dce0ce3c91f54451477d9127e0611284a1b93707b8d1f": {}, + "sha256:10f9551322b456444c591326a998e2d41737e8bbeabc02d2e312827aaefc49dd": {}, + "sha256:831cd40f850133336d3345317a99de66cbbadfe8e64dfb92306f62d79ac3534f": {}, + "sha256:cb1caf3e9a4ddc8343c0757c7a2730bf5de2b5f0b4c9ee7d928609566f64f010": {}, + "sha256:756f64de1e4673f0f617a9f3f12f74cceef5fc093e309d1b1d5dffef287b7d67": {}, + "sha256:48efa34ce50ae936ab9fe437aa59396d4557ff39fa22cf36c5460d3a986e502f": {}, + "sha256:aa02afed121e9f5fa9590d75c0b237b6c497ae58c91e0022844b38f594feaeb7": {}, + "sha256:07dc5536982278f38c89517465384ef9f376cd27f0b200806268723993da01ad": {}, + "sha256:be8037b8b02f797c10203a132b4e6eab125079f243da7c508251f82175f456e7": {}, + "sha256:e7509cf0ec99ce89e8e88e9352f733eb9ad14a9c77e0bbfd64826a3de0e4a150": {}, + "sha256:e521385a42b3350c0d17e3cbddc0b69c9cf4052d1b77cc8bea2179e05b7d374a": {}, + "sha256:81e9fade703e1f69587b65633da04f13a6be7f900e20a699d0f4fdb6c5085984": {}, + "sha256:90fff1832a2af9b5575eb169e9ebf3428e8a59571dd2a4a9d40a5c046c7d2586": {}, + "sha256:24eee58ec1e2406f58dadad135aa1e39bbd86664c6b60b102ff2ebd070c5a2be": {}, + "sha256:52bdcde05929fc2fee65b76892e6bb7366f32c633a0a81e9bc52c84b9736fe92": {}, + "sha256:440fc5c6e6a37c47f13d1fb53a03f5cb0155592a5bcf9312e2d083d4bed0ad40": {}, + "sha256:7ffa0438229228bf5ba18945936d52c3620c95f4a3ffc5c5f0f8774fececac0a": {}, + "sha256:fb3fabd657b8f8603c6e19858beb0d506cf957bbca2f3feb827b64c94563b31f": {}, + "sha256:fdb3e6e4578d8bb90f1f917edf5a7f52432df2eb5b0fab000eab662b15476479": {}, + "sha256:8b3f681cd05e071d4c7b21eff4684a3ca7674599ee984cccd6a69a685eb8a41c": {}, + "sha256:6983318d6b2dfd4eea29448e9853b74b1d009ab37be7add3ff304ff0483714cb": {}, + "sha256:ee100ea7fe8bf26d44df719283554a36398d484eee28682694c9e7a249c2d49c": {}, + "sha256:7417816bd96d7b49e5a98c85eba313afaa8b8802458d7cd9f5ba72ecc31933e3": {}, + "sha256:225e227ddf3bf9afad711f9d8fccc542ef29235b06aea580c296ba48b1db0853": {}, + "sha256:48d74b90720979dd38eba46d6e2a286f7b0f27bce40a226dae3acb75a7ce2fc6": {}, + "sha256:cac67bb5140793fbcfe9ccefe0696822210815b7425716bccbcd434476464dd1": {}, + "sha256:a67e08600434ddfe6ffeb26718e55a366d746c32e8f37a130a6a348b2ee21f77": {}, + "sha256:7c7574874694665f54130b563a0192f09d5dc88f97b09e4c07ffd926aa1902bf": {}, + "sha256:287a6c5a786cd6c263e8f2190c0a85790c122637deb3fcd11549ce9b065157c6": {}, + "sha256:25330419d06a107fe8f32feef42895e51f4b9387c2132ebd65cc58c92171532e": {}, + "sha256:795a03873e39cfe22e6b91870b1e97e5bdbac7ce069f84703f4319d793ce284e": {}, + "sha256:15b7880e062890b88befef1af918c04a27c57842acc22cafaec15087efb6f5f1": {}, + "sha256:b722169c1bf3ab629b9e4b45df76f51b8560797e30d6f14adf71951177792b83": {}, + "sha256:31e384774bf8f3873892f17ffc97e49d9fe8daece8aecdf0d6efbaea4037bd83": {}, + "sha256:ab3613a91acb43aa2977aab8133254f6a3fd72b2a5835370033671b68582c035": {}, + "sha256:c7dd6eaacb3b6f3c82204c5c626a3e5cf871564584f1fa10375e683085f3ed55": {}, + "sha256:12c6f5732a5ea0fcb1ed1cba12882d3cf4453001e047a3400d4ae29e10fce927": {}, + "sha256:c430892a13e3415e4660b21d7993022d584e9bd0ca9618fc20456244292100ce": {}, + "sha256:2fb45f352d4f8f51c2124e8857ccbd7d5fe3a477174c7a4597f1fba88073bd39": {}, + "sha256:f54fbd6a9442b792b310a959e04ce9b823214f2ed3938368dd7d97dd87adbd84": {}, + "sha256:3847ba975499130c18a5d6dfddaa5e729a0008a21c8eb7754c5ed8f517231a8f": {}, + "sha256:4736ee342ce025cbff041341d76a06180c5196e3eaab41617a130b4a9da54638": {}, + "sha256:02b5bba261346b60c0c0b715f18bbe93f00048266d57728bcc20764277b008ee": {}, + "sha256:e5c3a058963cb95eddfe2a8b641d6176f3f99f951dff755eaf4022d6ce32c45f": {}, + "sha256:9bdcc8e684bc210b2e58e51a0d03a580a9febf59a50011a893a7f2a87c8089ce": {}, + "sha256:bd0143035e956be9c39e06503c405b059ef7960a415b95130aa06443cb394cc9": {}, + "sha256:4c0a98cd79110fc394123f6b13e1967d9f5719d1045595818eda0ff9b31e8f29": {}, + "sha256:bdf429e9e79cbaaf49a37d53ba96a4e3197a3410080968ac2d0e2bd5560521e2": {}, + "sha256:66e1fea6d0e73a0631f2926cc835e589eb9bb01791c0dea5bbe89b7d48e1bf29": {}, + "sha256:6d809624847cf620e3060938474120a473572b0ffa3785013069c63c964b8b4b": {}, + "sha256:0ac49fd1615cbbcd5dc87bfb8220a3953e23a309cdd1e791c6bd30babb7805d3": {}, + "sha256:57c012e31a9903c3bdc70cc636f016bf998dbacdd0918fc53dd21a154f491391": {}, + "sha256:fa61f497c2f94b4bbe9022f2e7a1bb4138aa02db1b5f60706a0056cccf2eb7ac": {}, + "sha256:3c8624ac1dd45bb0c9fe55370e34131c167bec40edf5b8ada25130204c085405": {}, + "sha256:ab473d0afc7fb2e6a442ca8adcc81edf9c375df0187d5d70a08d0afaf6d962c8": {}, + "sha256:9b6786563d5349038815167e46c7aa7fa5edf1110bdb38085c2600e3f84118e1": {}, + "sha256:cbdc4b8b16cba6a2e1a40b12d14b9151cdef7f37993b3adc9d4d81286ff08bd4": {}, + "sha256:1389587e1da5e29f4698bb2eac00b9a795758bf813df7ebd5919616370822f1e": {}, + "sha256:49ec489f168c1671a2babb690edfb020a5252f38e8d0b2d96465070abd2b0d70": {}, + "sha256:a7099c322c45030738bdd90e3de4402c0c80c6ebd993a1749c2e582cf33ee6f2": {}, + "sha256:bf1f08c470535b6d2e9184870f4988d934185919b9b1a7525dd33c68a0233f96": {}, + "sha256:ecd98b1aca2d5dfa1beeab71964f2470cdc579f0e0087cdbd39c38fcedd8466c": {}, + "sha256:07fa49d8df654b38be80cd672d7afc7ce04a60c8bd2e320afe4bc9ba26a5bd7d": {}, + "sha256:a6e01b89e814ec42d1c2c6be79240a97a9bd151c857f82a11e129547e069e27f": {}, + "sha256:c7efb8634b62cdab9e8894174a8c70d20eb431482277231bc54fa8ca8c3681e3": {}, + "sha256:8be96e09e2e44491b287be44b2b6be0c9f8aeab75fe061d3e8a28b9be19144ef": {}, + "sha256:7262a011271fa6b74b8696582fc844e260a511a30fac7214930ee45410a0669c": {}, + "sha256:85bb1aa32f6345349c9cf09c35217caae441dca6b2be8f21619ea6808d3c5af6": {}, + "sha256:be6d9e9b98733494ee5901d45b849e2dc012a6b41c3ff09d0d212002dbe15dce": {}, + "sha256:80abb08eb9041d43fba2d46276ecb338479e1ea38d034839e448d90566cd07a2": {}, + "sha256:225184e52259b71342bb2d0aba459331f19696576a8cfcd77d9b1409ef89cee0": {}, + "sha256:1136237ae5145ecb9f69b5bbc3ec1122dfe4599611aaa1afe98472430edfeeb2": {}, + "sha256:1d6caa060ef12ab32bf7220b49bc0d9c858c68a8f50b060f5117a2aca63a4dc5": {}, + "sha256:8adf29af85920514902bc4332ceb896a54f9cf89e08993c9345b62c4140f91d9": {}, + "sha256:041e8b9be8a87757da8d5b8a2ced4b5aec8bcafd1c0747234cdfe10206eae27b": {}, + "sha256:c7cade63cf1d4dffc3d3295ac05b58fcfe8c8b3a59fefb976176a69f1f6541b9": {}, + "sha256:95ea79593c6ef3cc7e561f222b3c13db8b1c17facd1786bb366a0663624a7580": {}, + "sha256:3ae67c6a162b44bbf33c86f66b25dcb5db3e6dc8f872c9e7e2cefd725dd1e0c4": {}, + "sha256:76b58342bb839cf953fb2685bb91a929f397da361535766de6a597e9279abfa1": {}, + "sha256:f0f8e33332df97afd911093f28c487bc84cbe4dcc7bb468eac5551d235acee62": {}, + "sha256:b57dbbbee14301e89df618b398ef39b7fc841eaba6be1b6346cf37ed7695c26a": {}, + "sha256:2c8b143f3cb83efa5a31c85bea1da3164ca2dde5e2d75d25115f3e21ef98b4e0": {}, + "sha256:2a51dc341aa4b2f16f60d9a453d01b535394e9334da85dbf09241e706ff3dd63": {}, + "sha256:59a7a5a775c196961cdc51fb89440a055295c767a632bfa684760e73650aa9a0": {}, + "sha256:a92e1f4689cf3774070bf217c0a0c8628fd877a9c0f98fdadbb597eeb44fa2cb": {}, + "sha256:07ddba0160d6bd64f4cad277e7892b99d92ce685420d1335951f7ed227191b90": {}, + "sha256:67eeb497253607e61b1887897a735da49537c193c4774fd1b81b68a71684de91": {}, + "sha256:e911703ffceee37ec1066344820ab0cf9ba8e43d7957395981ba68c4d411a0a4": {}, + "sha256:bfce8ac2a2a78a23fb931531fb3d8f530a78f4d5b17f6199bf99b93ca21858c0": {}, + "sha256:63e05ebe75fac85e4c62d059910d701eb632e7126715b6a1a78a7c8af302fa08": {}, + "sha256:84c673872557825fafafd016fffddd0a4c3459472925fe92b2f09f91258af843": {}, + "sha256:c26d4d161f8eddd7cb794075e383d0f4d3a77aa88e453a2db51e53346981f04c": {}, + "sha256:96a7e71271d334497b5f108f8aaadb4210e488948947b108375eb8636e7118f5": {}, + "sha256:7ac9238855e41c8544607efea663a8c0d2d3f26c50b2148813a4c0c452539c27": {}, + "sha256:49e693f6812e04450b0c98a108f302a799f5ee21f8000675f59d47e097ad24c7": {}, + "sha256:9771c78e900cf46e3a5831ac10a3aafb84ba569ca8f11e5ccb4a72b129648bda": {}, + "sha256:684fa6dfb42f2ec09b8763afa246bb24e136619dc2bd6049f3af70ac0a4e40e1": {}, + "sha256:1f308cee3f0cd672217baf46b0044ffa385121c4697ef7be8f327ef800ec0569": {}, + "sha256:cd9583500892b5f50f51167f5c4b16855e15808a79e5137e0c6674e19f305930": {}, + "sha256:ea77373517525f6e976fe9c062274b176e86eb378ed82e72a76854c741b2c25e": {}, + "sha256:e873cefdeee846f6d1d7e8f00c60bd1714cb2b9d26572d9bf43ea0ce15fd0d75": {}, + "sha256:9e13cb10c94f5de3573a2cacd153050d6dad05fe13c50c8fa69406e8f881d3d9": {}, + "sha256:c09679c55fdeef598c6cd9118e8a2141da369dcf27ed9e9ede8e42ffc44743f2": {}, + "sha256:4e3d6c1b87d3e309ce6fff82a4822ebe7706fa7ab16398931675acb356e796c1": {}, + "sha256:c3a909c1fd2267e1d523f1b046e6329dea43c939405c6d23afd3bd89bbc0a71a": {}, + "sha256:2697f6469e610a979b46af75a504d96d3bc4eaae2f3169961433bc312462cddb": {}, + "sha256:53232b41a42b8f990cc94eb487e5fdc95f1672f48edcd048ae9d27c784e6a6de": {}, + "sha256:d23e010ca414fcc627189f8b4f1470d4230ae3d9810ee6f589bc57205919b0ba": {}, + "sha256:f20b884c9452d4cf839707d4ff38191d34dd2035c87f832c697f6f328fa1b36b": {}, + "sha256:c8510c5ff0f80131d9f2a69d9b6e06200d0f16f8b160357bffb39151bc2cca31": {}, + "sha256:4b51d01944f4b05d5b16eb265965ca41d08ac0887992d487e2f6e847dd82d007": {}, + "sha256:a19f14b4776a70fed369c279df99fe65a73b9928c23cc443c51e5353fc549080": {}, + "sha256:6679a077af52889edd68509ab130f364fa8188b3acdd83ec0abb579cd36afb9d": {}, + "sha256:77a4098c35a7366a75cbd0c2cef2885d52d569aa211893fb2f026fdf479f19b0": {}, + "sha256:67510dd0b6ea031e4182bd10ab3b4a18fe6b5c48bf9ac9a160006f9e3a041ce7": {}, + "sha256:e3570a5f03e9117e730a051d95bb8513c02cf224b160734db534c60a4aa8e67c": {}, + "sha256:d93615d941d93d565b7c32bd4e64a108ec51d530adf63ab65436643890084e8c": {}, + "sha256:d69d41ada35587f5b1f21f43273199d03793e2bdfc1276cf7250704dd90fab16": {}, + "sha256:40f7d64e38ae31dcb3e7273c7e089705e816dc131ae87c176e2c1aad02d5b510": {}, + "sha256:ac9ede79357b33f0d0c9087333b0dd3e3fd1cf5ccab5c36310b0ec446390e0c7": {}, + "sha256:bacf386d747343cb10a2c3847c426d3e044b7de1742b4918e3b1b78cc1b54bc4": {}, + "sha256:d5ae6a7d99826a17d163d9846c2705442b5792a7ccacc5169e4986cdf4b6bae2": {}, + "sha256:1e9e8b6447c2650a306e8d107dbdcdaa4f81d4175012eea0c87846faecd64c70": {}, + "sha256:55ca555fe815bd360b08500889b652f50fe4c56dfafbed0cc459f2362641f1a0": {}, + "sha256:f54340fec047cc359a6a164a1ce88d0d7ffcd8f7d6334b50dc5b3d234e3a19ac": {}, + "sha256:1afeaf1d9aae2827b957c279533e2546618881ddd73e554b4d04e2ab112cd351": {}, + "sha256:a312b89d5f0d21ac7dd3acfa7c6b0c07a184ae73adfdcd8597158c20928c55fa": {}, + "sha256:1d17f327a83ccb5ec42f412c78ae6aaf787bd46f10645b65af43f6f5ae9d8c15": {}, + "sha256:82f7c74c4f31dad16dec9fc52556f76051979b8dea69877b71aa0ac3060c25d4": {}, + "sha256:a37d38ffe36c63ab5ef58c41101cb7b2b17b3d8c954fc5e25b25a1cc82c9d7d2": {}, + "sha256:e3418df9795e4d82bbdd906c94dc4a86bb67e92760875eda33d21dd0379c66fd": {}, + "sha256:d40c9b41e9b45492e3d7ad37334ea19faac35b9117a0274ad21384f1cf6dc412": {}, + "sha256:b548a865d143f26dd511074f0e58482d8967eeff25c8b386dd99a5b30861acc8": {}, + "sha256:e38aab71d7460d41c871c5da206f56a5d8372a35e300f57e377bf20d6503416b": {}, + "sha256:b41f1f364f53aa4b8cfb7cc45171cd9afc734b1988f941efc701ac683ff05a11": {}, + "sha256:74c7da10b2467e3cc9358f511982bbd938464a6c6917946dd475921ab1eae143": {}, + "sha256:e46f30ff71c5685aa1d411cc34e3644a5bd46cb681eb25ae47f3093d8a4c01b4": {}, + "sha256:0fbb820c1b92541baaabe1d68ac188999be8004f9fe07c893ded807c93466a7e": {}, + "sha256:405e237a7852b763a3a7ebde766103a007975a9bd8f8443f721e384a237344db": {}, + "sha256:d5110791ff7f071eaab243f1142882c306c1fbc1ced882e1008a7ae31e61bfaf": {}, + "sha256:70d0012cc27784aa402ff1873feb46a6cac24e7231795c0ef74be8e0e5462ed7": {}, + "sha256:54f80d720b6656ae12c37ff54143da540f464822ec86c8fed5f0122e5834dba9": {}, + "sha256:474d313e8fe10db2020adff50432248f73766082d915d13906c5e8856b597fd0": {}, + "sha256:5a3f84520b454df79881a920ef07378aee8d5d6d0107e28eecf2f9ba40511a29": {}, + "sha256:ba5712ac129c7870dd00556b421a89fd485074d41ee6d0449821a43a9b5753a0": {}, + "sha256:81a1026f5fd6dc344689929048a8bd75313b2ee5544bb80abd9c0d9c02debdcd": {}, + "sha256:77799c4067ade64fce291f4d1374d3acf06109288e7aed567b3bedc9c0098750": {}, + "sha256:56f72f1a9e2b939382860e7a8addc5b991475f49caca13de7da1e5ea75bd2118": {}, + "sha256:2826b059dcf06e0a366ee51e68a2019c4292d6f5ca38f8ae77aaed0457bd79fa": {}, + "sha256:a4e7033017e54c657ed0cfb161a388d13b32089e83755bc9395342f5300e3375": {}, + "sha256:03c7ea2565af3b61a6ff0d5d4e0e5c65747053fc43903b913a46337903c6fdb5": {}, + "sha256:056afe729e2b277d0b4e58118c9b46b4a0fc0498080ead7ce29dd4979a67c14d": {}, + "sha256:c502e6d5a4bdc52819d352bb929094674722cf8ead751e5aa4b6190761b0ac01": {}, + "sha256:6d749499a0ef3323e3454de7d6f050d04b1ca8db6713101aa17ac82f4c59d16f": {}, + "sha256:5e9c1f6eb801c4af90d0905487f49c81d7d6d3aff15e3fa353f64035d4fc85e6": {}, + "sha256:ef4b2686134e6be036755ee093aad43eb0ce4a4c84c93a2defb755cfeb398754": {}, + "sha256:07108b67335e1bac97f1c8d2dff2be35225981372535d6ced508d9b08eea2e0f": {}, + "sha256:4f87fb54a6222d78fde0ebb18dc1f457fc4dd173c05695e16ee6b081e3f8b00a": {}, + "sha256:40b98bdd00b44fbf808df1d653ecf0f0ed8549643d52b68da2455c5a878f0021": {}, + "sha256:3a6189cc2e67a9119085cdd7c1fa9db09bf7240eff3b4f1fd4a2ff0a21ff4449": {}, + "sha256:5508b475b68c87c87f3312d6a0bd0893334128dc0edd13aedc7f0a1d5ddd2f18": {}, + "sha256:4c5af4c1d44e1720beb79fd4202d3754e2c47c4faeb4ff5bdbe2ee3d24c9a5e0": {}, + "sha256:5edeec0be1144c7eea7040a8232b08add6b1b319a0ec2cf3d13f7e1c2da2cfd9": {}, + "sha256:aad2c4821c191a9c93c919563c946d793f54b4339f61a61937a66ceebc93d0e4": {}, + "sha256:a383d65f22be848a24bc8e328d136260f15dd8b0401da273bb27e18228bada4a": {}, + "sha256:2aefc576f770dc60682929c5de6a80b3c6adbe596398f8d5a1fb89ef7070a1eb": {}, + "sha256:6ea8e30785451c3052bf7482debed98b5c6ace4a36fe5b256a5eb90ceb26a744": {}, + "sha256:e13941f4a922a76da599fb0e00884e530d9ed8ce5145fb5a54f7337a6af5085e": {}, + "sha256:e1371ff618285e7d4f8fbcecc0e2575d3a152abefb414fc3d035091873cbf86b": {}, + "sha256:52d90d6fbd1ad93f81aad2c4aa38aa52b1c1c94b83560ede25c91b5542da97a4": {}, + "sha256:e5befc91bfd39ab624cf40c8a1ed32caedc0f74f9ea4fb913e4d9915c1d708c6": {}, + "sha256:13f2ec62e10333000a13123a4cae5ebbda270c32ece03247e45bd2b244e7bba5": {}, + "sha256:fa545e6ec3e787f8ea67224b41b2d912a32054f16d557c7ea82ba1f7e46187bb": {}, + "sha256:7d9a98372505c9c1dff7dfea558b20a44820fda416a609467790577a848de110": {}, + "sha256:e990ab2d16eb98d5c3759964976aff716991ee22e90085d0e06e58349b5f42ac": {}, + "sha256:f08cc45a1a23ce90ab3da61d15cc6c7cf01f8d956ea6844f8caa37629109b2f2": {}, + "sha256:77b74224b3f6669c1e2c17c371a411d350e120c1ba2080ff2009e1b47b3c2563": {}, + "sha256:19ce3347cac4f209d5aa31c5631510246137f755423b3c6d46e30dbd65b219e3": {}, + "sha256:0045391c8dfd3c8709f1f52b9dad6348ef106945f7b7d61905a6740064c850b8": {}, + "sha256:9021dd92b1473c95f9ef08a576b21e8b431e8c11dff3a0b52d5b36a8f4608993": {}, + "sha256:c9984097ed1c330ccf4369b4e0c2e006b2de3211f0b128804b2992dea401f914": {}, + "sha256:2874670be48764992979fa2908b52029f93c3534f7efc771e7276ee4e2ededf0": {}, + "sha256:6853c9d0c6ce4bc73de5c68260a8fd22a9935756a296ea75393cf0549a869fa8": {}, + "sha256:f0d951dd18b72451818dd13c8daa14145de3f81cedf6397148a41ce3845b50e2": {}, + "sha256:716096df1b34d768c3e6a5985de8e1ee58b2183ad9f987aa754e592bd2793c70": {}, + "sha256:56705b6a1526960d534b0d3e4247deb4eef2b5fa64ceb03544281b8e9bdc4597": {}, + "sha256:2a326fb0009de92b17051e083a9aef592dc68084b9e5d916c0d12cb4b23b67fa": {}, + "sha256:9ad066179d9786ea384769d46805a1aab89624cbc66b54c51bdf40af9ec2ebc1": {}, + "sha256:b184ce15b4abaac8cb47ce5bc790e1c6d3bf6e8318d84e6b0c1705f01f6dd2b2": {}, + "sha256:5da0c28315411128a940caa196e7a23a41edaeb1b595f6132c8b860c88a60751": {}, + "sha256:00df870cdbc119305ce24f1cb8a554a2c5957e613a7cc8b0fa8a2ca42e13c73e": {}, + "sha256:45e78b9ac3ea47b604ef7c7f8e615d42790114ac0828173445943da72b3d64b7": {}, + "sha256:aacbdbb501a2cea12e3a8b3234c7f809ea5a32fa8549726f3fd7899dc7bc4531": {}, + "sha256:1377def5f025248585edda9469c74dca12f63b875c3d7c31ecfc870bbc45a37d": {}, + "sha256:79a6c35fece0f92d655f07de734b1c0c421a7521f717d156e682bd42f0266fc4": {}, + "sha256:f2cd7708c8796f59814fff5da90adc484bf50c39b0f46deb343e5a1462f452bd": {}, + "sha256:d4e4f443e194cc6298d54f81cc713966ef846f69a83d110a8ae7330ac4347dfd": {}, + "sha256:6d9dbe9bfab0ea5ce5f50da459c5607c9b2ff6f953cd07efd31c05a05561e617": {}, + "sha256:95af904a4ef7f36d357a93f3930a93a6135a35295ec3ea021114e8e95a0a8bcc": {}, + "sha256:d822399553d067ff2d74b41ac5dd7febe85ded927e5efeeacabdc3778a105ca1": {}, + "sha256:9586bd047892cd8307f0865e2f36dda28404a0664379a3fd55933b2fffb7bf4b": {}, + "sha256:2f287153abd9888e5beec367d30c3a4c2e0b3859b6b3dcdef40ce305e2f1f01d": {}, + "sha256:840bf28d52bc9b1b0f90e415f507fdb9e875dc52c3153425ecc112a0735fc757": {}, + "sha256:4394eb9fcc7f5b2ef505c618ced3aba19ff6eeafc9bde16b18eab558b7bd98c7": {}, + "sha256:fcd827a4f95db14a707bc604efac1db86973eaa97bd8bf9f78c37a925c09a297": {}, + "sha256:80d4acc0fbcd177387698aab66812214992df5138660262cf82de81673b9d72f": {}, + "sha256:ab3b16ef840dcf502300e178e576e82483f3cf7a04a9a13d580304945ee8408f": {}, + "sha256:10196a125eccfe91f3eb187be4e07d7a7d9304f738c3feed087b6f8c4375f305": {}, + "sha256:85ea05de694ddda37ccde33d800398efcb24c191bd976ec161d5f6208e631646": {}, + "sha256:60f58fce0f9f4e2c2a736e5c6183f13797a9fa345ee0510c2c7fe74c675f6ee5": {}, + "sha256:edc3846d881c4ad341c5e97f7a2b7ec8f5164c26e73839449374b3c6fc2483fd": {}, + "sha256:c7d3279aea06be9d4fd4e455b9327fddd3fa837d836d55a63e1389f2271ddee2": {}, + "sha256:7f26ae199b2493734de4b977fd9211131d00ca87c8882b9eef4ac863a9d4bbd5": {}, + "sha256:e790a18368a9292ee62861b2533ac602454dd62e0c2caf26cc75566b6c95676b": {}, + "sha256:4710038b95fa5ac1f9f2ce676cc36041f625b983dc4d5dda78cfba3f49047677": {}, + "sha256:384f6cea7aac9b8da1462df266aad80fe776ddecefbd2e614a0832a83f211ddc": {}, + "sha256:6c5726df4acbfa4196b50f948b0673862f5e8794088128919ff3b6492a0725f4": {}, + "sha256:6907ca79c5560126e336ee56c9934defbbce7a28f9540afa990fc45f2b23124d": {}, + "sha256:be43458e321ec5320f20af5d908b9506b346646ecdd8a8e68111069d22c66ebe": {}, + "sha256:6cbf0f136a942432ee4c8a1cc75b83fb5679b26fb45d7104eacda84fdc036051": {}, + "sha256:dbb3be8f8a1fa75a783624a25520cd4f4257a68a85d67b4575b0801a76e9a97d": {}, + "sha256:b35dfadd576ddc748d0c12bf3ab18a9033c4e61bb4373800f60bdf534255d156": {}, + "sha256:332c96a2feec18d8d6c9efb051b479677fd304482e2660828984a6de93de6e98": {}, + "sha256:2efe1dc5a40c4b4dd99317e5f1d85246d54f4035afa254fc5f737e620107e0b3": {}, + "sha256:1711d39fadc0d6a578acc4d2aa455b6ef9777fbe83daf3d41bb0c19d3b6aed43": {}, + "sha256:5cc364cad8cb613a0ec68076f7f8e10b72ef2e266a10d2463bf548b2b0abd13e": {}, + "sha256:23555f58d70d04c3bdf94efee8b829e0cbb2aba38f78fe6d76b8e19aa5058e52": {}, + "sha256:07ee6c35c5a5f2296c4151d9672cf0e3aa00c9e84f30478f0f4c0670e51914aa": {}, + "sha256:35723c263a43a41c471f0bff749b0431d0a048c822e9779d28781b41c5a60260": {}, + "sha256:dca922285b9f680f084fef9c5b48096574313a0f7ae41ef8251e018c5df8dbda": {}, + "sha256:e38ad825c896732bb99970ac992d56265961f72c485182fab06f328fcc35e76a": {} + } + } + }, + "options": { + "gpgkeys": [ + "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBGIC2cYBEADJye1aE0AR17qwj6wsHWlCQlcihmqkL8s4gbOk1IevBbH4iXJx\nlu6bN+NhTcCCX6eHmaL5Pwb/bpkMmLR+/r1D2cLDK24YzvN6kJnwRQUTf2dbqYmg\nmNBgIMm+kAabBZPwUHUzyQ9CT/WJpYr1OYu8JIkdxF35nrPewnnOUUqxqbi8fXRQ\ngskSLF8UveiOjFIqmWwlPwT1UtnevAaF80UGQlkwFvqjjh4b9vKY2gHMAQwt+wg5\nHFFCSwSrnd88ZoDb3pKvDMeurYUiPzF5f2r+ziVkMuaSNckvp58uge7HvyqQPAdJ\nZRswCCxhUAo9VqkNfB4Ud25ASyalk9jOE3HB8E35gFfPXvuX1n15THXNcwMEiybk\nOmne2YwXL8ShGNr5otjqywThMrrqcl2g/pJVTcpDHTR5Hn9YRp+GHlYLjyEr+/x7\nxM19y9ca9GUiJqDbEREHcKKIhYiGmcIjjcJvei/3C/aM4pqeGFJBbVSnw3qeMxH/\n6ArAMA1sAdShCkv2YjlcF0r4uoCjXdS3xrKLz9PSCquot7RySnOE9TZ7flfJll7Z\nq+lNaSeJg7FK8VWSUb9Lit6VEYVbzWKzespDDbujrHbFpydyq8gXurk7bSR2w0te\ngsmytQqT/w1z2bydgGF6SfY9Px0wuA8GQKr48l5Bhdc6+vHHFqPKzz0PVQARAQAB\ntDFGZWRvcmEgKDM4KSA8ZmVkb3JhLTM4LXByaW1hcnlAZmVkb3JhcHJvamVjdC5v\ncmc+iQJOBBMBCAA4FiEEalG7q7o9VGe2FxIhgJqNfOsQtGQFAmIC2cYCGw8FCwkI\nBwIGFQoJCAsCBBYCAwECHgECF4AACgkQgJqNfOsQtGScyw/7BLmD4Fwi4QZY94zl\nvlJdNufZRavOemSIVVDHoCr8pQBAdrvoMypxJd5zM4ODIqFsjdYpFti+Tkeq4/4U\n25UoLPEOtU8UDt2uq7LqfdCxspaj7VyXAJIkpf7wEvLS4Jzo+YaMIlsd0dCrMXTM\nvhu4gKpBFW6C+gGlmuDyTJbyrf7ilytgVzVtIfRrT7XffylviIlZHwKm43UDjvzX\nYEl3EAFR1RjATwXMy2aJh7GCNsz+fKs+7YRKQUhpMF5un/2pyNJO+LbVGGwGZvga\nK9Kfsg/4r1ync4nDDD1dadKIHhobDeiJ9uZLoBvvVDz7Ywu7q/vv4zIPxstYBNq4\n6fLKDtYXuJCK0EV9Qy4ox67t0UGlaRGH8y5YUqOI10xH7iQej0xWlSc8w2dKhPz8\nz9XLv2OMK+PvqvflhFHhWkqEoQRqTu0TVD0fLLe4lqieJlqZcJqW0F9G/vNSSWmf\nPOLa/Nim71gL2fPjCJOIRV4K/cJSyBmu5NchG7dHD5sUtJxZ4TFSuepaBZ8cPK1x\ne26TaCBqoUWgUXWmw+P89aOpYOJYEFfT/VAm2Ywn+c1EFUmD+30wQ7aP/RUFl94z\nn0BjqsWDnCKVFHydZ0TZSpeADmXMg2VYZPcp/cQR1KjoBoDxAscis7b1XPQUg7CB\nzquq5jBVAnsNIhs7g47GWKyDUJM=\n=aCLl\n-----END PGP PUBLIC KEY BLOCK-----\n" + ], + "exclude": { + "docs": true + } + } + }, + { + "type": "org.osbuild.selinux", + "options": { + "file_contexts": "etc/selinux/targeted/contexts/files/file_contexts", + "labels": { + "/usr/bin/cp": "system_u:object_r:install_exec_t:s0", + "/usr/bin/tar": "system_u:object_r:install_exec_t:s0" + } + } + } + ] + }, + { + "name": "image-tree", + "build": "name:build", + "source-epoch": 1659397331, + "stages": [ + { + "type": "org.osbuild.ostree.init-fs" + }, + { + "type": "org.osbuild.ostree.os-init", + "options": { + "osname": "fedora-coreos" + } + }, + { + "type": "org.osbuild.ostree.config", + "options": { + "repo": "/ostree/repo", + "config": { + "sysroot": { + "readonly": false, + "bootloader": "none" + } + } + } + }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/boot/efi", + "mode": 448 + } + ] + } + }, + { + "type": "org.osbuild.ignition" + }, + { + "type": "org.osbuild.ostree.deploy", + "options": { + "osname": "fedora-coreos", + "remote": "fedora", + "mounts": [ + "/boot", + "/boot/efi" + ], + "kernel_opts": [ + "rw", + "console=tty0", + "console=ttyS0", + "ignition.platform.id=qemu", + "$ignition_firstboot" + ] + }, + "inputs": { + "commits": { + "type": "org.osbuild.ostree", + "origin": "org.osbuild.source", + "references": { + "bc49c681f6c1f931db8547f7d18ee3b9fef5dc044ff475b0076d58a655479f90": { + "ref": "fedora/x86_64/coreos/stable" + } + } + } + } + }, + { + "type": "org.osbuild.ostree.selinux", + "options": { + "deployment": { + "osname": "fedora-coreos", + "ref": "ostree/1/1/0" + } + } + }, + { + "type": "org.osbuild.grub2", + "options": { + "rootfs": { + "label": "root" + }, + "bootfs": { + "label": "boot" + }, + "uefi": { + "vendor": "fedora", + "install": true + }, + "legacy": "i386-pc", + "write_defaults": false, + "greenboot": false, + "ignition": true + } + } + ] + }, + { + "name": "image", + "build": "name:build", + "stages": [ + { + "type": "org.osbuild.truncate", + "options": { + "filename": "disk.img", + "size": "10737418240" + } + }, + { + "type": "org.osbuild.sfdisk", + "devices": { + "device": { + "type": "org.osbuild.loopback", + "options": { + "filename": "disk.img" + } + } + }, + "options": { + "uuid": "00000000-0000-4000-a000-000000000001", + "label": "gpt", + "partitions": [ + { + "start": 2048, + "size": 2048, + "type": "21686148-6449-6E6F-744E-656564454649", + "bootable": true, + "uuid": "FAC7F1FB-3E8D-4137-A512-961DE09A5549" + }, + { + "start": 4096, + "size": 260096, + "type": "C12A7328-F81F-11D2-BA4B-00A0C93EC93B", + "uuid": "68B2905B-DF3E-4FB3-80FA-49D1E773AA33" + }, + { + "start": 264192, + "size": 786432, + "type": "0FC63DAF-8483-4772-8E79-3D69D8477DE4", + "uuid": "61B2905B-DF3E-4FB3-80FA-49D1E773AA32" + }, + { + "start": 1050624, + "size": 4194304, + "type": "0FC63DAF-8483-4772-8E79-3D69D8477DE4", + "uuid": "CA7D7CCB-63ED-4C53-861C-1742536059CC" + } + ] + } + }, + { + "type": "org.osbuild.mkfs.fat", + "devices": { + "device": { + "type": "org.osbuild.loopback", + "options": { + "filename": "disk.img", + "start": 4096, + "size": 260096, + "lock": true + } + } + }, + "options": { + "label": "EFI-SYSTEM", + "volid": "7B7795E7" + } + }, + { + "type": "org.osbuild.mkfs.ext4", + "devices": { + "device": { + "type": "org.osbuild.loopback", + "options": { + "filename": "disk.img", + "start": 264192, + "size": 786432, + "lock": true + } + } + }, + "options": { + "uuid": "96d15588-3596-4b3c-adca-a2ff7279ea63", + "label": "boot" + } + }, + { + "type": "org.osbuild.mkfs.xfs", + "devices": { + "device": { + "type": "org.osbuild.loopback", + "options": { + "filename": "disk.img", + "start": 1050624, + "size": 4194304, + "lock": true + } + } + }, + "options": { + "uuid": "910678ff-f77e-4a7d-8d53-86f2ac47a823", + "label": "root" + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "tree": { + "type": "org.osbuild.tree", + "origin": "org.osbuild.pipeline", + "references": [ + "name:image-tree" + ] + } + }, + "options": { + "paths": [ + { + "from": "input://tree/", + "to": "mount://root/" + } + ] + }, + "devices": { + "efi": { + "type": "org.osbuild.loopback", + "options": { + "filename": "disk.img", + "start": 4096, + "size": 260096 + } + }, + "boot": { + "type": "org.osbuild.loopback", + "options": { + "filename": "disk.img", + "start": 264192, + "size": 786432 + } + }, + "root": { + "type": "org.osbuild.loopback", + "options": { + "filename": "disk.img", + "start": 1050624, + "size": 4194304 + } + } + }, + "mounts": [ + { + "name": "root", + "type": "org.osbuild.xfs", + "source": "root", + "target": "/" + }, + { + "name": "boot", + "type": "org.osbuild.ext4", + "source": "boot", + "target": "/boot" + }, + { + "name": "efi", + "type": "org.osbuild.fat", + "source": "efi", + "target": "/boot/efi" + } + ] + }, + { + "type": "org.osbuild.grub2.inst", + "options": { + "platform": "i386-pc", + "filename": "disk.img", + "location": 2048, + "core": { + "type": "mkimage", + "partlabel": "gpt", + "filesystem": "ext4" + }, + "prefix": { + "type": "partition", + "partlabel": "gpt", + "number": 2, + "path": "/grub2" + } + } + } + ] + }, + { + "name": "qcow2", + "build": "name:build", + "stages": [ + { + "type": "org.osbuild.qemu", + "inputs": { + "image": { + "type": "org.osbuild.files", + "origin": "org.osbuild.pipeline", + "references": { + "name:image": { + "file": "disk.img" + } + } + } + }, + "options": { + "filename": "disk.qcow2", + "format": { + "type": "qcow2", + "compat": "1.1" + } + } + } + ] + } + ], + "sources": { + "org.osbuild.curl": { + "items": { + "sha256:66604d04522a860a1c755a9629b0cb1e25a2c24747945f1f69b41ab8522787b3": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/a/authselect-1.4.2-2.fc38.x86_64.rpm", + "sha256:4dc70c4a90ddede4f38d96e8184da5d3113f9404d3cd4b98b45ffd40cc503249": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/a/authselect-libs-1.4.2-2.fc38.x86_64.rpm", + "sha256:718d95c40b41c2f0ecc8dc2290ebb91b529ba3be7accbad9c30c88e9ce408349": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/b/basesystem-11-15.fc38.noarch.rpm", + "sha256:961883b6ac18ca54b525209adce0c593f81fd8a7e71bb75bc07724e4ef72bc5f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/b/bash-5.2.15-3.fc38.x86_64.rpm", + "sha256:80619785d2f0eeccd00cd2c1afc830517cfc32eae3f33f842868474d986e9e0a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/b/binutils-2.39-9.fc38.x86_64.rpm", + "sha256:65cd2a73c575c91c3a149d3d5ae42c11a23364ab59c710ad21b87d62a414a755": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/b/binutils-gold-2.39-9.fc38.x86_64.rpm", + "sha256:bbe3eb89df059162bda14c6f0c06e6251984d79502806c87ae4c6befc4e392ab": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/b/bubblewrap-0.7.0-1.fc38.x86_64.rpm", + "sha256:8afb9acec0a418447eebab454e992d46369e2379c31ef0d431c15ffb58c3371a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/b/bzip2-1.0.8-13.fc38.x86_64.rpm", + "sha256:95273426afa05a81e6cf77f941e1156f6a0a3305a7768a02c04a4164280cf876": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/b/bzip2-libs-1.0.8-13.fc38.x86_64.rpm", + "sha256:738f573c50a537b556e2fbb8fa4a2c0d22fc2ce4a67344f89d478989cc323ab3": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/c/ca-certificates-2023.2.60-2.fc38.noarch.rpm", + "sha256:75ecf8c60bea53432b973d9391e3bdb1b6cdc1f1cad0a7b56aabfb8b70252832": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/c/cpio-2.13-14.fc38.x86_64.rpm", + "sha256:6809fe060dc93dfed723bd8faca0f5d65e4f6c62aebd2f9f39f679413b260539": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/c/crypto-policies-20230301-1.gita12f7b2.fc38.noarch.rpm", + "sha256:d1880b8f3e8a5fa943ba033c96dc964fac3e07c34cbd0bb8ac2b0fdcb57abcbc": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/c/crypto-policies-scripts-20230301-1.gita12f7b2.fc38.noarch.rpm", + "sha256:418287cd51f9ae9e5b74a18112a062a49ee51d22656dea86d08daba311c93e44": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/c/cryptsetup-2.6.1-1.fc38.x86_64.rpm", + "sha256:070d86aca4548e9148901881a4ef64d98c5dfd4ea158e9208c650c7f4b225c47": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/c/cryptsetup-libs-2.6.1-1.fc38.x86_64.rpm", + "sha256:b570b4857289cf32ed57d0d84cb861677a649cef7c5cc2498a249d6593eb3614": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/c/cyrus-sasl-lib-2.1.28-9.fc38.x86_64.rpm", + "sha256:6652f5d40acfaeda20555bdd63e964f123e8ab4a52f8c8890e749e06b6bae3e0": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/d/dbus-broker-33-1.fc38.x86_64.rpm", + "sha256:19c51da8f7703fae87c656f5312179362367f5c6a20c7de56a64c590254c5e21": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/d/deltarpm-3.6.3-8.fc38.x86_64.rpm", + "sha256:695aab11fda4b6a396c3ca141fb3ccc48af757a70f36ea3a1be2292e90c40d6f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/d/device-mapper-1.02.189-2.fc38.x86_64.rpm", + "sha256:e8c1626c4179f11e3f597ad8e73b2ac80537d51de0181da96c0836614fdb8c0a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/d/device-mapper-event-1.02.189-2.fc38.x86_64.rpm", + "sha256:0e01de6950ca71089aa2240a6b9d762b7def229e5f95d58695c7cf8670e43b1e": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/d/device-mapper-event-libs-1.02.189-2.fc38.x86_64.rpm", + "sha256:42e8600a8d7e7109de32df6cb6a619b9805f9335bf467a085009f6b82dda6e22": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/d/device-mapper-libs-1.02.189-2.fc38.x86_64.rpm", + "sha256:fc593550a01333bc07a6b35002ec85b4de40198887d3237984c4e203526db8f2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/d/device-mapper-persistent-data-0.9.0-10.fc38.x86_64.rpm", + "sha256:e0a6768f0ca08572b79a265ba0d3fdeba09408431d9e717b8d45af9e1ae67cf6": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/d/dosfstools-4.2-6.fc38.x86_64.rpm", + "sha256:8bcdb9b5ce9b5e19c4f772f52c2c40712491d2a953496e415c380a21a792b050": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/d/duktape-2.7.0-2.fc38.x86_64.rpm", + "sha256:2dbbb95686253e343dc8398a0a7f331d805a4e1e72ee7a95ffd1e517db0bbc0f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/d/dwz-0.15-2.fc38.x86_64.rpm", + "sha256:b25a042f52c8cdc1ddab56fc726d98789ff902d5264d9835f5b910db3e565213": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/e/e2fsprogs-1.46.5-4.fc38.x86_64.rpm", + "sha256:1ca049bff926a8ec9b6e0e69f23662934eab96c35d8eda1cf429a2a31f186045": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/e/e2fsprogs-libs-1.46.5-4.fc38.x86_64.rpm", + "sha256:99d2a2b787dba361884081a84c38bb89e413e9d1ef127d63b88e285ce01c2535": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/e/ed-1.19-2.fc38.x86_64.rpm", + "sha256:a007fe955a4fba751f211b4e8e16f916e9b7ba1c020b69d62ccb4d437a3ddd1d": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/e/efi-filesystem-5-7.fc38.noarch.rpm", + "sha256:082f0c1a8a60cb45a5c30cfc745a368c03327a5e6bae71bf63683163f2ddd1a9": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/e/efi-srpm-macros-5-7.fc38.noarch.rpm", + "sha256:575ba7ab8e3b6d5b7508a505694a37c390a64ec070659b9393c1a5283c19ce90": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/e/efibootmgr-18-3.fc38.x86_64.rpm", + "sha256:fbeb7a7a95051df0dfeb7c4ab379b77ccfb0bf0174a39dae4a423b9108627771": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/e/efivar-libs-38-7.fc38.x86_64.rpm", + "sha256:6c64fea958acfb77da5ee23ec1e8d0916c7809ce39987f219927e8f94e5f2755": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/e/expat-2.5.0-2.fc38.x86_64.rpm", + "sha256:fc11b9f6795419afa9c958675458dbcc1b00aff25fa5e8c8e8678ec3d7cbf81e": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/f/fakeroot-1.31-1.fc38.x86_64.rpm", + "sha256:ee1a2034ffa2e60bf292ceca77df739ed1d8a23a285126060b56a22c7428774e": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/f/fakeroot-libs-1.31-1.fc38.x86_64.rpm", + "sha256:7f7c78f598f7ff131bbe77913b9fc6b7b49d1fce30f2d8505b2d8a85458f519a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/f/fedora-gpg-keys-38-1.noarch.rpm", + "sha256:916b75b58e9a2afe5d53cb73fdabea4d0cd8b1eba9f1213754384d0ccd531e57": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/f/fedora-repos-38-1.noarch.rpm", + "sha256:196b3612e50069c68d67ffaf3081d25923e2b4ca7e1bad8f124515b3fa472d4a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/f/file-5.44-3.fc38.x86_64.rpm", + "sha256:83bb8576a018ae028ff1434c32e1f3dfab66a781e1af9057862a2d7f3d725f58": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/f/file-libs-5.44-3.fc38.x86_64.rpm", + "sha256:b0fc6c55f5989aebf6e71279541206070b32b3b28b708a249bd3bdeaa6c088a4": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/f/filesystem-3.18-3.fc38.x86_64.rpm", + "sha256:79986f917ef1bae7ca2378b16515ba44c19160f5a5eae4f6b697eda160bc26c1": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/f/findutils-4.9.0-3.fc38.x86_64.rpm", + "sha256:b38a6a0f2f9581d169e349e582b0dac3858aaa3d338b6cf1b14c6213d1f33c09": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/f/fontconfig-2.14.2-1.fc38.x86_64.rpm", + "sha256:c2987d34ab8511b86a565af0491510f1a370175bd6fb99819c1afd50a6851425": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/f/fonts-filesystem-2.0.5-11.fc38.noarch.rpm", + "sha256:05d3a6fbd1917fc7c304c913e4de85d65ea7281a4e4dd5648680c52e03139c47": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/f/fonts-srpm-macros-2.0.5-11.fc38.noarch.rpm", + "sha256:871c591fb98e17bbd6eaec5967c7689d1151508941cdf0c2de673bd87354e47f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/f/fpc-srpm-macros-1.3-7.fc38.noarch.rpm", + "sha256:3881f1c6b5274eaf85732ed106019159805fcdb8c25031200e67a159945e85d4": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/f/freetype-2.13.0-2.fc38.x86_64.rpm", + "sha256:8c70948b04d05290d6441359d461d9f7ec45439b3c97430c41b8a862d59e7b60": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/f/fuse-2.9.9-16.fc38.x86_64.rpm", + "sha256:56df47937646df892dad25c6b9ae63d111328febfe86eb93096b8b0a11700b60": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/f/fuse-libs-2.9.9-16.fc38.x86_64.rpm", + "sha256:e607df61803999da46a199d23d4acadb45b290f29b5b644e583c5526d8081178": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/gawk-5.1.1-5.fc38.x86_64.rpm", + "sha256:254c6789b4a98b96a53172e1b3fb866f71ea29a5b5fa7b39f072f33c27d897bc": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/gawk-all-langpacks-5.1.1-5.fc38.x86_64.rpm", + "sha256:eb376264750aae673aa2a3218c291756023dea980640b30a3efe0f2199ff3889": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/gdbm-libs-1.23-3.fc38.x86_64.rpm", + "sha256:c8bd5bb71a475e7e86f83ff118d4fe18e02e661a4e711c0282f7da32accfc7d8": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/gdisk-1.0.9-5.fc38.x86_64.rpm", + "sha256:eda39928e85cf036a1bc37084637ff3752457b4ad300503bb73c7baad888e4b6": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/genisoimage-1.1.11-51.fc38.x86_64.rpm", + "sha256:276c7af4b13262c0307cf2528c6d79c859ed348db68c0d2780869ea4b179dd02": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/gettext-envsubst-0.21.1-2.fc38.x86_64.rpm", + "sha256:4fb6fcf7eef64a48666ff9fe5a46344087979d9e8fd87be4d58a17cf9c3ef108": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/gettext-libs-0.21.1-2.fc38.x86_64.rpm", + "sha256:3837cbe450ceb59e1f9e7469aeb6ec98e08150773b83463725acfb2ebb77a98a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/gettext-runtime-0.21.1-2.fc38.x86_64.rpm", + "sha256:fd4dc8fa303e14b851eb33d6d1656d84b983b9bbcfea4b4f3be9ae3de3ad64f1": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/ghc-srpm-macros-1.6.1-1.fc38.noarch.rpm", + "sha256:69e48c73d962e3798fbc84150dfd79258b32a4f9250ee801d8cdb9540edfc21a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/gmp-6.2.1-4.fc38.x86_64.rpm", + "sha256:e97507c58de5625e5dea8a161eb1a8d1b4c4bb3d87b59cc1362bd7deba8db152": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/gnat-srpm-macros-6-2.fc38.noarch.rpm", + "sha256:940192d99005896a29de3c682259b3505652778d58ec74a003639f3ba3193a1a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/gnupg2-2.4.0-3.fc38.x86_64.rpm", + "sha256:cd41c94b8c668602f7fb5eae595e5d5c34bd1b91690b5cc06f4c8c199794dfa8": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/gnupg2-smime-2.4.0-3.fc38.x86_64.rpm", + "sha256:6170bb84006ad1d74202125a21308b15be0b36ec95e9dbb6552aa35026e966ea": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/gnutls-3.8.0-2.fc38.x86_64.rpm", + "sha256:5d03cdd184cabb17f123dc30384c93ae2f56c502463c1c48a2df605ca8c3235d": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/go-srpm-macros-3.2.0-2.fc38.noarch.rpm", + "sha256:1300fabb5a042997633ae8f1afc7828a2f58273392eda5b99d79ed7d6a94c8e9": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/google-noto-fonts-common-20230201-1.fc38.noarch.rpm", + "sha256:fbd7e2ca35798a60402b2b6c0387694be511a8e043abb7659063ab963025d917": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/google-noto-sans-vf-fonts-20230201-1.fc38.noarch.rpm", + "sha256:7d5eb1e8f80ae1dddc082b58c387f8d7b66d48dbf1d9ab4bcf9c9c138996085b": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/gpgme-1.17.1-3.fc38.x86_64.rpm", + "sha256:55ca9073756a092ccb78f3cc3d8b31f1b5d64b3b93b9cc135ce20b273ad46361": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/graphite2-1.3.14-11.fc38.x86_64.rpm", + "sha256:60ed241ec381a23d03fac733a72132dbdc4ba04c412add78bfc67f1b9f1b4daa": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/grep-3.8-3.fc38.x86_64.rpm", + "sha256:d48579aa97fba34dc3a4c4dd3fb10e8fd66186d970e37c2f7fc28bebbc2d31eb": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/grubby-8.40-69.fc38.x86_64.rpm", + "sha256:166e842798813a72e4d075dcd9b6e814d7ad3fc8d1b5860281cffe7a68784b25": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/g/gzip-1.12-3.fc38.x86_64.rpm", + "sha256:7edbfc57da668fe01a84b8eb3739034c323b3d63fb95e9ec1e0fb8d0e542e0b5": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/h/harfbuzz-7.1.0-1.fc38.x86_64.rpm", + "sha256:40577e831faf421cbe15b373b48809938ed700f16e2c3441b458f343ad0996b2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/h/hfsplus-tools-540.1.linux3-28.fc38.x86_64.rpm", + "sha256:275a73dcee6d2082f20c50cd94d4b91daec6073bf8217fb5d1a2bcd7595cfe19": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/h/http-parser-2.9.4-8.fc38.x86_64.rpm", + "sha256:10177e858a14eddec89f457b7dc74461ca9c8ecb53829386b04cf3af68a91ac6": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/i/ima-evm-utils-1.4-7.fc38.x86_64.rpm", + "sha256:0ba1c05c6aabcc8345683fac7fce6b5cae576c179229dd030c65430f274f320f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/i/isomd5sum-1.2.3-19.fc38.x86_64.rpm", + "sha256:f74d1e8ba95ff5df02477ba6430d09476e8a1af6e8476453d08d99b276924b25": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/j/jansson-2.13.1-6.fc38.x86_64.rpm", + "sha256:736182ae69e03a19be60ed57486990f9b88cd06eeecb5e06cebc7f4b64ab0f5d": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/j/json-c-0.16-4.fc38.x86_64.rpm", + "sha256:c2ae86002363a331661c72eec5cad90a100216e46176d4bdbe2c20e465c1d73c": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/j/json-glib-1.6.6-4.fc38.x86_64.rpm", + "sha256:8a3a4007d921c6a9b372e4573520866b445c18476f907b023ea19b436436ec33": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/k/kbd-2.5.1-5.fc38.x86_64.rpm", + "sha256:97fcab8f93c5213714e0a9d15e48440c567d2ac39e4ed12743198268082f0583": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/k/kbd-legacy-2.5.1-5.fc38.noarch.rpm", + "sha256:2ea5dfd9d8c8fe7f61022b41fd6f8a2653692acf30253f45e1dc67def1648f32": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/k/kbd-misc-2.5.1-5.fc38.noarch.rpm", + "sha256:df0c9c337ac37f2ff367b7f045b77014ba838b5d965b95b26a408da65c25490b": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/k/kde-filesystem-4-69.fc38.x86_64.rpm", + "sha256:b66376e78fe54024531d94036d10b22b5050d52a9e65682b36dc7fdf24405997": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/k/keyutils-libs-1.6.1-6.fc38.x86_64.rpm", + "sha256:7419671c64795b96be18231e2f5d3f95eca8e6a71771863ac035f961041c1d7c": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/k/kmod-30-4.fc38.x86_64.rpm", + "sha256:19f873b67f23362074c03d5825e709ad521278c02e44bdeb30eba6d3bb3a8e0f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/k/kmod-libs-30-4.fc38.x86_64.rpm", + "sha256:ac8a7628a2a4b1f742fc90719145f50cfad9ecf67e3309fcf623fb3d82c2a768": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/k/kpartx-0.9.4-2.fc38.x86_64.rpm", + "sha256:6adfb391ac7b753e103762a43837276236abbf5771d99ae214290e9423e88bfb": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libXau-1.0.11-2.fc38.x86_64.rpm", + "sha256:487f8391033a854782006c4379e6c4e4914656b5d743199a0661c56880446aa0": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libXext-1.3.5-2.fc38.x86_64.rpm", + "sha256:f606d5be4cefddabe67be0cefac437f15295005d24f6695d7d6e7a23b65d0c67": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libXrender-0.9.11-2.fc38.x86_64.rpm", + "sha256:9b093be8a99bfbae03c2f3dd5435fc9508003f7ef21e4280ff72fe814c1d794e": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libacl-2.3.1-6.fc38.x86_64.rpm", + "sha256:8068b025fe7051320d35257c9ef8aef2dbdcd2adf5a5e3af356a49127173c2ec": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libaio-0.3.111-15.fc38.x86_64.rpm", + "sha256:0d0890dba8274458d068b981164111f554b47632bf9c82d1ec41c14697f2b4af": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libarchive-3.6.1-4.fc38.x86_64.rpm", + "sha256:dd044973c572e64f505f3d00482249b2b4d71369babb5395a22861fd55b21d79": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libargon2-20190702-2.fc38.x86_64.rpm", + "sha256:d78d7bc485f099bb08c9de55dd12ea6a984b948face1f947de6ec805663a96c5": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libattr-2.5.1-6.fc38.x86_64.rpm", + "sha256:9e73a2b591ebf2915bfbe7f9479498a73c982a4c74e96cc555930022e3ef0aba": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libb2-0.98.1-8.fc38.x86_64.rpm", + "sha256:21b5a1a024c2d1877d2b7271fd3f82424eb0bd6b95395ad3a3dae5776eec8714": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libblkid-2.38.1-4.fc38.x86_64.rpm", + "sha256:bdd3f5e8edc77ce3e183134535ec838f033ed3bf0e6802e864c0a6c5fc94b22d": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libbrotli-1.0.9-11.fc38.x86_64.rpm", + "sha256:b6a2b3872182fe877fcd1dd85ef66282fdeec79fab87157327c9fc6cbd80ab15": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libcap-2.48-6.fc38.x86_64.rpm", + "sha256:1e0bee6fd4e234796795cd45185b250d8cf894aef0bb95f2793d9453246e1a4a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libcap-ng-0.8.3-5.fc38.x86_64.rpm", + "sha256:5922028bb5642faf00d781f34bf105ef30f1988932b4b80f6bb54e9f6eed0fd6": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libcbor-0.7.0-9.fc38.x86_64.rpm", + "sha256:07fd2f8d83136d7704f9d98e553201c767a920ee3e1f9daf655edc04e699044c": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libcdio-2.1.0-9.fc38.x86_64.rpm", + "sha256:4ed3e7b6b0727b86ae9af17bd4839c06762a417a263a5d22eb7fcb39714bb480": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libcom_err-1.46.5-4.fc38.x86_64.rpm", + "sha256:3096cf4153e3b487f4a97c44c8873b53b4e064c6c2b4744d41f0665d2705cbc6": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libcomps-0.1.18-6.fc38.x86_64.rpm", + "sha256:d7030af9e9e0dd9afc5b9ee02839c94757d6a4f8ebd3b21e6d81ba6141a76d46": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libdb-5.3.28-55.fc38.x86_64.rpm", + "sha256:6e57ebf25ad25e7a6809aa0d99b5692598fb009a5438e90a2005f9fae5fd3b13": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libeconf-0.4.0-5.fc38.x86_64.rpm", + "sha256:974a64a10a3021de8a440ff4810a720f738951abd5bb944110cb9355d4ae8fa8": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libedit-3.1-45.20221030cvs.fc38.x86_64.rpm", + "sha256:e9741c40e94cf45bdc699b950c238646c2d56b3ee7984e748b94d8e6f87ba3cd": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libevent-2.1.12-8.fc38.x86_64.rpm", + "sha256:2fb7ee2d94f7ee34cff49ab28659c07b075ed67ac147f817e19d8ee8e0adbc9c": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libfdisk-2.38.1-4.fc38.x86_64.rpm", + "sha256:098e8ba05482205c70c3510907da71819faf5d40b588f865ad2a77d6eaf4af09": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libffi-3.4.4-2.fc38.x86_64.rpm", + "sha256:0a30628b39d9c5ca81c4e073dfbf64d543284f17d4ae1325e23e3eda55f92fd9": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libfido2-1.12.0-3.fc38.x86_64.rpm", + "sha256:aafd382a4d91a3a4a37e7092b8bfe63a12b6a273ecc7b59379150a29e95f440b": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libfsverity-1.4-9.fc38.x86_64.rpm", + "sha256:d3416e2b6c7565d7a607225d86b556398827316ae7ce43280b82630f0a022bc0": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libidn2-2.3.4-2.fc38.x86_64.rpm", + "sha256:75c0097330fa3c995e80b7791cbe7baf75d86f3523f67b3becaf37360fdb4b16": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libkcapi-1.4.0-5.fc38.x86_64.rpm", + "sha256:e552fae193775507d8264f7a856fbdc51f7e594d7d8726f181312aeb9cf8b973": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libkcapi-hmaccalc-1.4.0-5.fc38.x86_64.rpm", + "sha256:14541cda2a4516ad6a17f46be6b7ad85ef5f6508d36f209f2ba7bd45bc1504e2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libmount-2.38.1-4.fc38.x86_64.rpm", + "sha256:33631973ecf9e6b23e0b7d07d61100fdc2db33261f4a6c43b5a09791b9455291": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libnghttp2-1.52.0-1.fc38.x86_64.rpm", + "sha256:28697cf1b5cb4d62c3bd154fc24a23d91a84a5bda2f974fb64bdd04e91b6cec5": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libnsl2-2.0.0-5.fc38.x86_64.rpm", + "sha256:6b6c98d21642a18c20c24d2b136b02d9842179eb9e63a10a89b55ac24449f58f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libpkgconf-1.8.0-6.fc38.x86_64.rpm", + "sha256:b5860547ef64d6c35aea6db2c4cb0b2a6781e0dd19c492e0600a68d845069bbc": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libpng-1.6.37-14.fc38.x86_64.rpm", + "sha256:e0bccc94a740acf317caa4fa1fae6b0d57442ef4be36341472b7db93d588ec13": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libpsl-0.21.2-2.fc38.x86_64.rpm", + "sha256:aefb7d2d96af03f4d7ac5a132138d383faf858011b1740c48fcd152000f3c617": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libpwquality-1.4.5-3.fc38.x86_64.rpm", + "sha256:845f6731b9e784784494fe9711c116631fc9ceede2fd0fa15b5f9575dee25e10": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/librepo-1.15.1-2.fc38.x86_64.rpm", + "sha256:dec378b594b79258dd8b44836c5371f316bcf5e4596d53dd84badcb6d00090df": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libseccomp-2.5.3-4.fc38.x86_64.rpm", + "sha256:46ed6b8fee11c16bb8b58f698dfba9874a8f393c1e72eb7f9a7b6802ac68dd1a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libsecret-0.20.5-3.fc38.x86_64.rpm", + "sha256:790c6d821ff575ad51242ec6832ed61c8a3c4e0ece245c3dee3292d19acb23b7": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libselinux-3.5-1.fc38.x86_64.rpm", + "sha256:78a15621e7e3dfb5a65b8b8aa482cf5b07f08bcef217ad29435e299d6c8aec74": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libselinux-utils-3.5-1.fc38.x86_64.rpm", + "sha256:1b6b7ad33391919a3315e398d737a764121e2fc9581f75318a999e02bfc0c7c4": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libsemanage-3.5-2.fc38.x86_64.rpm", + "sha256:15ec70665f200a5423589539c3253677eb3c15d7d620fd9bdfe2d1e429735198": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libsepol-3.5-1.fc38.x86_64.rpm", + "sha256:ac0a6bf295151973d2e34392a134e246560b19b7351ced244abc1ed81dfe5b8e": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libsigsegv-2.14-4.fc38.x86_64.rpm", + "sha256:dbf5c73c71c798533cbecfa54ba28c42878c455df8cb382087d8a758c3ffe290": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libsmartcols-2.38.1-4.fc38.x86_64.rpm", + "sha256:db9229087c86f9d5725daf2066e3a52c84dc44bb31ac940461fc8d7510681297": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libsolv-0.7.22-4.fc38.x86_64.rpm", + "sha256:faccff819eecffcee9dad49bda930a007e78b905b775b4ac0103121d7a8100db": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libss-1.46.5-4.fc38.x86_64.rpm", + "sha256:b7456feebe68aac1a17bbfed9ab9dcbba7955315cdb9e6700ad0323a431ef48e": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libssh2-1.10.0-7.fc38.x86_64.rpm", + "sha256:8b49dd88579f1c37e05780202e81022c9400422b830d9bdd9087161683628b22": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libtasn1-4.19.0-2.fc38.x86_64.rpm", + "sha256:c3bebadfffac33733cfb7887a592efd78ed6cc99f60edf3d9a707fac0e0d6c21": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libtomcrypt-1.18.2-16.fc38.x86_64.rpm", + "sha256:020e95a935f261f0ac6a355e101ad4ced8dc1cf9da318a6b1c081555531c79e4": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libtommath-1.2.0-9.fc38.x86_64.rpm", + "sha256:aa187ea45be32306620ad8ec6318d755075b2cad99fba7c01dc4763228a98190": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libtool-ltdl-2.4.7-6.fc38.x86_64.rpm", + "sha256:c4012952872a08b9662963b13e29f89388ce6e695e68fa8c37eb6e62bad62441": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libunistring-1.1-3.fc38.x86_64.rpm", + "sha256:cd0e8eb5d983a985f7df99718fde6245997bdf088fb6086442a883ddb9ed03e3": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libunistring1.0-1.0-1.fc38.x86_64.rpm", + "sha256:19c1d6967a045ba091af6e87da0c40487a6c49df0382d468518c7336decc9503": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libusal-1.1.11-51.fc38.x86_64.rpm", + "sha256:805da27b46f0d8cca2cf21a30e52401ae61ca472ae7c2d096de1cfb4b7a0d15c": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libusb1-1.0.26-2.fc38.x86_64.rpm", + "sha256:c5c409a2d5f8890eeab48b27b9f4f02925a6bbabeb21ee5e45694c7c9009f037": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libutempter-1.2.1-8.fc38.x86_64.rpm", + "sha256:876ef0556ddeca2c8f56536c80a2f6e0f64357f40bacb92f483adb8a0ff29af2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libuuid-2.38.1-4.fc38.x86_64.rpm", + "sha256:292791eb37bc312e845e777b2e0e3173e2d951c2bfbbda125bc619dced7f40bc": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libverto-0.3.2-5.fc38.x86_64.rpm", + "sha256:6ee063251e12f5fb0fde6d5aee982d9b9d27103335e93fcc72f6b2e829769f05": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libxcb-1.13.1-11.fc38.x86_64.rpm", + "sha256:507ffdb912296768699a70c30169077b531b1612e47041551bfe523a4b7b6c7d": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libxkbcommon-1.5.0-2.fc38.x86_64.rpm", + "sha256:9f531fbcc52871aace8fdcdb816207c4196d5ab30ba233c71adb41371fa47e19": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/libyaml-0.2.5-9.fc38.x86_64.rpm", + "sha256:f0a48ec36269d83120425b269e47ba5c86d5a9a44e0de2665c1d55c10732d25b": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/lua-libs-5.4.4-9.fc38.x86_64.rpm", + "sha256:8cf918f391dd521e77b09a456bc3d7f28b04a4ac64d9af19f66c6353c63cb21a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/lua-srpm-macros-1-8.fc38.noarch.rpm", + "sha256:98ca6f23dfcd29089994b48a22bc8703359ad347b868d453df2b3924cb91ddb5": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/lvm2-2.03.18-2.fc38.x86_64.rpm", + "sha256:c70094904d3b13adfe8bbc8fee9f0761a2ea184b8ec9f5c667b324b789694991": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/lvm2-libs-2.03.18-2.fc38.x86_64.rpm", + "sha256:96a8f495896c0ff7520c2cc5c9c173d134efc9ef6c6b0364bc7533aefb578d41": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/lz4-libs-1.9.4-2.fc38.x86_64.rpm", + "sha256:c0a169c3f1295ace00207e4005a1cebf832a34f013f2ed15ac65af936c0c1037": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/l/lzo-2.10-8.fc38.x86_64.rpm", + "sha256:36a1f0412e495e618ccd8636de3dcac9ad37d5d4c287a1acf2c9af4baa7745e0": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/m/memstrack-0.2.5-1.fc38.x86_64.rpm", + "sha256:d9196608152ec34832cc82d3cefa90748f30c75986f2250d8cd0fabc3d0ceba2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/m/mokutil-0.6.0-6.fc38.x86_64.rpm", + "sha256:22f217f91fc2d2a666304c0b360520b13adde47761baa6fed1663bb514b6faf5": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/m/mpdecimal-2.5.1-6.fc38.x86_64.rpm", + "sha256:e7c9b0c39f77c6fdf68ff04d8714c10532907a8a9c3e76fb377afe546247737f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/m/mpfr-4.1.1-3.fc38.x86_64.rpm", + "sha256:1c055813f64e964a2647da2c889fedb183d4ff27c8a4f4b0674bdbedaee9386a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/m/mtools-4.0.43-1.fc38.x86_64.rpm", + "sha256:602145f27fd017858256c6ee880863ef5be17c6d3c6c1354f7f16f6f6348db57": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/n/ncurses-base-6.4-3.20230114.fc38.noarch.rpm", + "sha256:6ce309d9fd208bfff831981ee4298ccb25fa72363cb7464f1da03b8214d4351f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/n/ncurses-libs-6.4-3.20230114.fc38.x86_64.rpm", + "sha256:605d6710ba42104ce0434bb37b0ca9a922a8392c14175bc782f8acb70b94c3aa": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/n/nettle-3.8-3.fc38.x86_64.rpm", + "sha256:c9e8b62c6af7a60a505f881d3cc35294d8b4f51c671c05401133b02ab229c2a7": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/n/npth-1.6-12.fc38.x86_64.rpm", + "sha256:2f7ccfe2164b0063349128dd1fba018fe76a679f6ecfa8306f04dc5a5db341c7": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/n/numactl-libs-2.0.16-2.fc38.x86_64.rpm", + "sha256:e96d8fe98b485ee34a20f123b1364e7015688da3e86e8331a99bb719344b4636": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/o/ocaml-srpm-macros-7-3.fc38.noarch.rpm", + "sha256:8030535d92d39049b167e8ad50f8813a85eccc373b7c4bcbac981037347d8394": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/o/openblas-srpm-macros-2-13.fc38.noarch.rpm", + "sha256:13509309959035c338299a33985d56f10896466367e1f62d4fea98123e74bfc7": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/o/openldap-2.6.4-1.fc38.x86_64.rpm", + "sha256:cfa3d6feba480abdeb425bc045b525c641c7a864625b1864c2f5721903e364d8": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/o/openssl-pkcs11-0.4.12-3.fc38.x86_64.rpm", + "sha256:06d2101874ea4d14b4c73131c5c359d1a2e0ebe0c36a501250026e7b867a0a86": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/o/os-prober-1.81-3.fc38.x86_64.rpm", + "sha256:8e4afbcb9488d9c6a9bf7d0739173b8757ce33a6f5e00f0ab7ccfcf605ed9273": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/p11-kit-0.24.1-6.fc38.x86_64.rpm", + "sha256:9030a26ff737b7bbb71d5208feebba1a0b2774d58dfb6016824a042e059642d8": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/p11-kit-trust-0.24.1-6.fc38.x86_64.rpm", + "sha256:065b99f3541fd5f1281be2082b77e48b835a591776e92f2327bb0462c67baed0": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/pam-1.5.2-16.fc38.x86_64.rpm", + "sha256:63e970f7b3f8c54e1dff90661c26519f32a4bf7486c40f2dd38d55e40660230e": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/pam-libs-1.5.2-16.fc38.x86_64.rpm", + "sha256:8d846f866158409c775656b39e372d59cf224936d29972d3b6d14e40d3b832ca": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/parted-3.5-11.fc38.x86_64.rpm", + "sha256:d74ae15fc82b999c633dce0ce3c91f54451477d9127e0611284a1b93707b8d1f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/patch-2.7.6-19.fc38.x86_64.rpm", + "sha256:10f9551322b456444c591326a998e2d41737e8bbeabc02d2e312827aaefc49dd": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/pbzip2-1.1.13-8.fc38.x86_64.rpm", + "sha256:831cd40f850133336d3345317a99de66cbbadfe8e64dfb92306f62d79ac3534f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/pcre-8.45-1.fc38.3.x86_64.rpm", + "sha256:cb1caf3e9a4ddc8343c0757c7a2730bf5de2b5f0b4c9ee7d928609566f64f010": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/pcre2-10.42-1.fc38.1.x86_64.rpm", + "sha256:756f64de1e4673f0f617a9f3f12f74cceef5fc093e309d1b1d5dffef287b7d67": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/pcre2-syntax-10.42-1.fc38.1.noarch.rpm", + "sha256:48efa34ce50ae936ab9fe437aa59396d4557ff39fa22cf36c5460d3a986e502f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/pcsc-lite-1.9.9-3.fc38.x86_64.rpm", + "sha256:aa02afed121e9f5fa9590d75c0b237b6c497ae58c91e0022844b38f594feaeb7": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/pcsc-lite-ccid-1.5.2-1.fc38.x86_64.rpm", + "sha256:07dc5536982278f38c89517465384ef9f376cd27f0b200806268723993da01ad": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/pcsc-lite-libs-1.9.9-3.fc38.x86_64.rpm", + "sha256:be8037b8b02f797c10203a132b4e6eab125079f243da7c508251f82175f456e7": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/perl-srpm-macros-1-48.fc38.noarch.rpm", + "sha256:e7509cf0ec99ce89e8e88e9352f733eb9ad14a9c77e0bbfd64826a3de0e4a150": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/pigz-2.7-3.fc38.x86_64.rpm", + "sha256:e521385a42b3350c0d17e3cbddc0b69c9cf4052d1b77cc8bea2179e05b7d374a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/pinentry-1.2.1-2.fc38.x86_64.rpm", + "sha256:81e9fade703e1f69587b65633da04f13a6be7f900e20a699d0f4fdb6c5085984": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/pixman-0.42.2-1.fc38.x86_64.rpm", + "sha256:90fff1832a2af9b5575eb169e9ebf3428e8a59571dd2a4a9d40a5c046c7d2586": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/pkgconf-1.8.0-6.fc38.x86_64.rpm", + "sha256:24eee58ec1e2406f58dadad135aa1e39bbd86664c6b60b102ff2ebd070c5a2be": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/pkgconf-m4-1.8.0-6.fc38.noarch.rpm", + "sha256:52bdcde05929fc2fee65b76892e6bb7366f32c633a0a81e9bc52c84b9736fe92": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/pkgconf-pkg-config-1.8.0-6.fc38.x86_64.rpm", + "sha256:440fc5c6e6a37c47f13d1fb53a03f5cb0155592a5bcf9312e2d083d4bed0ad40": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/policycoreutils-3.5-1.fc38.x86_64.rpm", + "sha256:7ffa0438229228bf5ba18945936d52c3620c95f4a3ffc5c5f0f8774fececac0a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/polkit-pkla-compat-0.1-23.fc38.x86_64.rpm", + "sha256:fb3fabd657b8f8603c6e19858beb0d506cf957bbca2f3feb827b64c94563b31f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/popt-1.19-2.fc38.x86_64.rpm", + "sha256:fdb3e6e4578d8bb90f1f917edf5a7f52432df2eb5b0fab000eab662b15476479": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/procps-ng-3.3.17-9.fc38.x86_64.rpm", + "sha256:8b3f681cd05e071d4c7b21eff4684a3ca7674599ee984cccd6a69a685eb8a41c": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/protobuf-c-1.4.1-4.fc38.x86_64.rpm", + "sha256:6983318d6b2dfd4eea29448e9853b74b1d009ab37be7add3ff304ff0483714cb": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/psmisc-23.6-2.fc38.x86_64.rpm", + "sha256:ee100ea7fe8bf26d44df719283554a36398d484eee28682694c9e7a249c2d49c": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python-pip-wheel-22.3.1-2.fc38.noarch.rpm", + "sha256:7417816bd96d7b49e5a98c85eba313afaa8b8802458d7cd9f5ba72ecc31933e3": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python-setuptools-wheel-65.5.1-2.fc38.noarch.rpm", + "sha256:225e227ddf3bf9afad711f9d8fccc542ef29235b06aea580c296ba48b1db0853": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python-srpm-macros-3.11-10.fc38.noarch.rpm", + "sha256:48d74b90720979dd38eba46d6e2a286f7b0f27bce40a226dae3acb75a7ce2fc6": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-babel-2.11.0-2.fc38.noarch.rpm", + "sha256:cac67bb5140793fbcfe9ccefe0696822210815b7425716bccbcd434476464dd1": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-cffi-1.15.1-4.fc38.x86_64.rpm", + "sha256:a67e08600434ddfe6ffeb26718e55a366d746c32e8f37a130a6a348b2ee21f77": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-charset-normalizer-3.1.0-1.fc38.noarch.rpm", + "sha256:7c7574874694665f54130b563a0192f09d5dc88f97b09e4c07ffd926aa1902bf": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-crypto-2.6.1-42.fc38.x86_64.rpm", + "sha256:287a6c5a786cd6c263e8f2190c0a85790c122637deb3fcd11549ce9b065157c6": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-cryptography-37.0.2-8.fc38.x86_64.rpm", + "sha256:25330419d06a107fe8f32feef42895e51f4b9387c2132ebd65cc58c92171532e": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-dateutil-2.8.2-5.fc38.noarch.rpm", + "sha256:795a03873e39cfe22e6b91870b1e97e5bdbac7ce069f84703f4319d793ce284e": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-decorator-5.1.1-5.fc38.noarch.rpm", + "sha256:15b7880e062890b88befef1af918c04a27c57842acc22cafaec15087efb6f5f1": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-gpg-1.17.1-3.fc38.x86_64.rpm", + "sha256:b722169c1bf3ab629b9e4b45df76f51b8560797e30d6f14adf71951177792b83": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-gssapi-1.7.3-4.fc38.x86_64.rpm", + "sha256:31e384774bf8f3873892f17ffc97e49d9fe8daece8aecdf0d6efbaea4037bd83": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-idna-3.4-2.fc38.noarch.rpm", + "sha256:ab3613a91acb43aa2977aab8133254f6a3fd72b2a5835370033671b68582c035": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-iniparse-0.5-4.fc38.noarch.rpm", + "sha256:c7dd6eaacb3b6f3c82204c5c626a3e5cf871564584f1fa10375e683085f3ed55": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-kickstart-3.47-1.fc38.noarch.rpm", + "sha256:12c6f5732a5ea0fcb1ed1cba12882d3cf4453001e047a3400d4ae29e10fce927": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-libcomps-0.1.18-6.fc38.x86_64.rpm", + "sha256:c430892a13e3415e4660b21d7993022d584e9bd0ca9618fc20456244292100ce": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-librepo-1.15.1-2.fc38.x86_64.rpm", + "sha256:2fb45f352d4f8f51c2124e8857ccbd7d5fe3a477174c7a4597f1fba88073bd39": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-libselinux-3.5-1.fc38.x86_64.rpm", + "sha256:f54fbd6a9442b792b310a959e04ce9b823214f2ed3938368dd7d97dd87adbd84": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-mako-1.2.3-2.fc38.noarch.rpm", + "sha256:3847ba975499130c18a5d6dfddaa5e729a0008a21c8eb7754c5ed8f517231a8f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-markupsafe-2.1.2-1.fc38.x86_64.rpm", + "sha256:4736ee342ce025cbff041341d76a06180c5196e3eaab41617a130b4a9da54638": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-paste-3.5.2-2.fc38.noarch.rpm", + "sha256:02b5bba261346b60c0c0b715f18bbe93f00048266d57728bcc20764277b008ee": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-ply-3.11-18.fc38.noarch.rpm", + "sha256:e5c3a058963cb95eddfe2a8b641d6176f3f99f951dff755eaf4022d6ce32c45f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-progressbar2-3.53.2-7.fc38.noarch.rpm", + "sha256:9bdcc8e684bc210b2e58e51a0d03a580a9febf59a50011a893a7f2a87c8089ce": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-pyOpenSSL-21.0.0-4.fc37.noarch.rpm", + "sha256:bd0143035e956be9c39e06503c405b059ef7960a415b95130aa06443cb394cc9": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-pycdio-2.1.0-10.fc38.x86_64.rpm", + "sha256:4c0a98cd79110fc394123f6b13e1967d9f5719d1045595818eda0ff9b31e8f29": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-pycparser-2.20-9.fc38.noarch.rpm", + "sha256:bdf429e9e79cbaaf49a37d53ba96a4e3197a3410080968ac2d0e2bd5560521e2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-pysocks-1.7.1-16.fc38.noarch.rpm", + "sha256:66e1fea6d0e73a0631f2926cc835e589eb9bb01791c0dea5bbe89b7d48e1bf29": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-pytz-2023.3-1.fc38.noarch.rpm", + "sha256:6d809624847cf620e3060938474120a473572b0ffa3785013069c63c964b8b4b": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-pyyaml-6.0-6.fc38.x86_64.rpm", + "sha256:0ac49fd1615cbbcd5dc87bfb8220a3953e23a309cdd1e791c6bd30babb7805d3": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-requests-gssapi-1.2.3-7.fc38.noarch.rpm", + "sha256:57c012e31a9903c3bdc70cc636f016bf998dbacdd0918fc53dd21a154f491391": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-rpmautospec-0.3.5-1.fc38.noarch.rpm", + "sha256:fa61f497c2f94b4bbe9022f2e7a1bb4138aa02db1b5f60706a0056cccf2eb7ac": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-setuptools-65.5.1-2.fc38.noarch.rpm", + "sha256:3c8624ac1dd45bb0c9fe55370e34131c167bec40edf5b8ada25130204c085405": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-six-1.16.0-9.fc38.noarch.rpm", + "sha256:ab473d0afc7fb2e6a442ca8adcc81edf9c375df0187d5d70a08d0afaf6d962c8": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-tempita-0.5.2-8.fc38.noarch.rpm", + "sha256:9b6786563d5349038815167e46c7aa7fa5edf1110bdb38085c2600e3f84118e1": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-toml-0.10.2-11.fc38.noarch.rpm", + "sha256:cbdc4b8b16cba6a2e1a40b12d14b9151cdef7f37993b3adc9d4d81286ff08bd4": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-unbound-1.17.1-2.fc38.x86_64.rpm", + "sha256:1389587e1da5e29f4698bb2eac00b9a795758bf813df7ebd5919616370822f1e": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/p/python3-utils-3.3.3-2.fc38.noarch.rpm", + "sha256:49ec489f168c1671a2babb690edfb020a5252f38e8d0b2d96465070abd2b0d70": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/q/qrencode-libs-4.1.1-4.fc38.x86_64.rpm", + "sha256:a7099c322c45030738bdd90e3de4402c0c80c6ebd993a1749c2e582cf33ee6f2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/r/readline-8.2-3.fc38.x86_64.rpm", + "sha256:bf1f08c470535b6d2e9184870f4988d934185919b9b1a7525dd33c68a0233f96": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/r/redhat-rpm-config-252-1.fc38.noarch.rpm", + "sha256:ecd98b1aca2d5dfa1beeab71964f2470cdc579f0e0087cdbd39c38fcedd8466c": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/r/rpmautospec-rpm-macros-0.3.5-1.fc38.noarch.rpm", + "sha256:07fa49d8df654b38be80cd672d7afc7ce04a60c8bd2e320afe4bc9ba26a5bd7d": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/r/rpmdevtools-9.6-3.fc38.noarch.rpm", + "sha256:a6e01b89e814ec42d1c2c6be79240a97a9bd151c857f82a11e129547e069e27f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/s/sed-4.8-12.fc38.x86_64.rpm", + "sha256:c7efb8634b62cdab9e8894174a8c70d20eb431482277231bc54fa8ca8c3681e3": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/s/setup-2.14.3-2.fc38.noarch.rpm", + "sha256:8be96e09e2e44491b287be44b2b6be0c9f8aeab75fe061d3e8a28b9be19144ef": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/s/shadow-utils-4.13-6.fc38.x86_64.rpm", + "sha256:7262a011271fa6b74b8696582fc844e260a511a30fac7214930ee45410a0669c": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/s/shim-ia32-15.6-2.x86_64.rpm", + "sha256:85bb1aa32f6345349c9cf09c35217caae441dca6b2be8f21619ea6808d3c5af6": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/s/shim-x64-15.6-2.x86_64.rpm", + "sha256:be6d9e9b98733494ee5901d45b849e2dc012a6b41c3ff09d0d212002dbe15dce": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/s/sqlite-libs-3.40.1-2.fc38.x86_64.rpm", + "sha256:80abb08eb9041d43fba2d46276ecb338479e1ea38d034839e448d90566cd07a2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/s/squashfs-tools-4.5.1-3.fc38.x86_64.rpm", + "sha256:225184e52259b71342bb2d0aba459331f19696576a8cfcd77d9b1409ef89cee0": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/s/syslinux-6.04-0.24.fc38.x86_64.rpm", + "sha256:1136237ae5145ecb9f69b5bbc3ec1122dfe4599611aaa1afe98472430edfeeb2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/s/syslinux-nonlinux-6.04-0.24.fc38.noarch.rpm", + "sha256:1d6caa060ef12ab32bf7220b49bc0d9c858c68a8f50b060f5117a2aca63a4dc5": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/t/tar-1.34-8.fc38.x86_64.rpm", + "sha256:8adf29af85920514902bc4332ceb896a54f9cf89e08993c9345b62c4140f91d9": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/t/tpm2-tss-4.0.1-3.fc38.x86_64.rpm", + "sha256:041e8b9be8a87757da8d5b8a2ced4b5aec8bcafd1c0747234cdfe10206eae27b": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/t/tzdata-2023c-1.fc38.noarch.rpm", + "sha256:c7cade63cf1d4dffc3d3295ac05b58fcfe8c8b3a59fefb976176a69f1f6541b9": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/u/unbound-anchor-1.17.1-2.fc38.x86_64.rpm", + "sha256:95ea79593c6ef3cc7e561f222b3c13db8b1c17facd1786bb366a0663624a7580": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/u/unbound-libs-1.17.1-2.fc38.x86_64.rpm", + "sha256:3ae67c6a162b44bbf33c86f66b25dcb5db3e6dc8f872c9e7e2cefd725dd1e0c4": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/u/unzip-6.0-60.fc38.x86_64.rpm", + "sha256:76b58342bb839cf953fb2685bb91a929f397da361535766de6a597e9279abfa1": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/u/userspace-rcu-0.13.2-2.fc38.x86_64.rpm", + "sha256:f0f8e33332df97afd911093f28c487bc84cbe4dcc7bb468eac5551d235acee62": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/u/util-linux-2.38.1-4.fc38.x86_64.rpm", + "sha256:b57dbbbee14301e89df618b398ef39b7fc841eaba6be1b6346cf37ed7695c26a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/u/util-linux-core-2.38.1-4.fc38.x86_64.rpm", + "sha256:2c8b143f3cb83efa5a31c85bea1da3164ca2dde5e2d75d25115f3e21ef98b4e0": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/w/which-2.21-39.fc38.x86_64.rpm", + "sha256:2a51dc341aa4b2f16f60d9a453d01b535394e9334da85dbf09241e706ff3dd63": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/x/xfsprogs-6.1.0-3.fc38.x86_64.rpm", + "sha256:59a7a5a775c196961cdc51fb89440a055295c767a632bfa684760e73650aa9a0": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/x/xkeyboard-config-2.38-1.fc38.noarch.rpm", + "sha256:a92e1f4689cf3774070bf217c0a0c8628fd877a9c0f98fdadbb597eeb44fa2cb": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/x/xml-common-0.6.3-60.fc38.noarch.rpm", + "sha256:07ddba0160d6bd64f4cad277e7892b99d92ce685420d1335951f7ed227191b90": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/x/xmlsec1-1.2.37-2.fc38.x86_64.rpm", + "sha256:67eeb497253607e61b1887897a735da49537c193c4774fd1b81b68a71684de91": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/x/xmlsec1-openssl-1.2.37-2.fc38.x86_64.rpm", + "sha256:e911703ffceee37ec1066344820ab0cf9ba8e43d7957395981ba68c4d411a0a4": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/x/xz-5.4.1-1.fc38.x86_64.rpm", + "sha256:bfce8ac2a2a78a23fb931531fb3d8f530a78f4d5b17f6199bf99b93ca21858c0": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/x/xz-libs-5.4.1-1.fc38.x86_64.rpm", + "sha256:63e05ebe75fac85e4c62d059910d701eb632e7126715b6a1a78a7c8af302fa08": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/x/xz-lzma-compat-5.4.1-1.fc38.x86_64.rpm", + "sha256:84c673872557825fafafd016fffddd0a4c3459472925fe92b2f09f91258af843": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/z/zip-3.0-36.fc38.x86_64.rpm", + "sha256:c26d4d161f8eddd7cb794075e383d0f4d3a77aa88e453a2db51e53346981f04c": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-fedora-20230413/Packages/z/zlib-1.2.13-3.fc38.x86_64.rpm", + "sha256:96a7e71271d334497b5f108f8aaadb4210e488948947b108375eb8636e7118f5": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/a/alternatives-1.24-1.fc38.x86_64.rpm", + "sha256:7ac9238855e41c8544607efea663a8c0d2d3f26c50b2148813a4c0c452539c27": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/a/ansible-srpm-macros-1-10.fc38.noarch.rpm", + "sha256:49e693f6812e04450b0c98a108f302a799f5ee21f8000675f59d47e097ad24c7": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/a/audit-libs-3.1.1-1.fc38.x86_64.rpm", + "sha256:9771c78e900cf46e3a5831ac10a3aafb84ba569ca8f11e5ccb4a72b129648bda": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/b/btrfs-progs-6.3.2-1.fc38.x86_64.rpm", + "sha256:684fa6dfb42f2ec09b8763afa246bb24e136619dc2bd6049f3af70ac0a4e40e1": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/c/cairo-1.17.8-4.fc38.x86_64.rpm", + "sha256:1f308cee3f0cd672217baf46b0044ffa385121c4697ef7be8f327ef800ec0569": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/c/container-selinux-2.219.0-1.fc38.noarch.rpm", + "sha256:cd9583500892b5f50f51167f5c4b16855e15808a79e5137e0c6674e19f305930": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/c/containers-common-1-89.fc38.noarch.rpm", + "sha256:ea77373517525f6e976fe9c062274b176e86eb378ed82e72a76854c741b2c25e": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/c/coreutils-9.1-12.fc38.x86_64.rpm", + "sha256:e873cefdeee846f6d1d7e8f00c60bd1714cb2b9d26572d9bf43ea0ce15fd0d75": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/c/coreutils-common-9.1-12.fc38.x86_64.rpm", + "sha256:9e13cb10c94f5de3573a2cacd153050d6dad05fe13c50c8fa69406e8f881d3d9": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/c/cracklib-2.9.11-1.fc38.x86_64.rpm", + "sha256:c09679c55fdeef598c6cd9118e8a2141da369dcf27ed9e9ede8e42ffc44743f2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/c/cracklib-dicts-2.9.11-1.fc38.x86_64.rpm", + "sha256:4e3d6c1b87d3e309ce6fff82a4822ebe7706fa7ab16398931675acb356e796c1": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/c/curl-8.0.1-3.fc38.x86_64.rpm", + "sha256:c3a909c1fd2267e1d523f1b046e6329dea43c939405c6d23afd3bd89bbc0a71a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/d/dbus-1.14.8-1.fc38.x86_64.rpm", + "sha256:2697f6469e610a979b46af75a504d96d3bc4eaae2f3169961433bc312462cddb": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/d/dbus-common-1.14.8-1.fc38.noarch.rpm", + "sha256:53232b41a42b8f990cc94eb487e5fdc95f1672f48edcd048ae9d27c784e6a6de": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/d/dbus-libs-1.14.8-1.fc38.x86_64.rpm", + "sha256:d23e010ca414fcc627189f8b4f1470d4230ae3d9810ee6f589bc57205919b0ba": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/d/debugedit-5.0-9.fc38.x86_64.rpm", + "sha256:f20b884c9452d4cf839707d4ff38191d34dd2035c87f832c697f6f328fa1b36b": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/d/diffutils-3.10-1.fc38.x86_64.rpm", + "sha256:c8510c5ff0f80131d9f2a69d9b6e06200d0f16f8b160357bffb39151bc2cca31": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/d/dnf-4.16.1-1.fc38.noarch.rpm", + "sha256:4b51d01944f4b05d5b16eb265965ca41d08ac0887992d487e2f6e847dd82d007": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/d/dnf-data-4.16.1-1.fc38.noarch.rpm", + "sha256:a19f14b4776a70fed369c279df99fe65a73b9928c23cc443c51e5353fc549080": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/d/dracut-059-3.fc38.x86_64.rpm", + "sha256:6679a077af52889edd68509ab130f364fa8188b3acdd83ec0abb579cd36afb9d": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/e/elfutils-0.189-3.fc38.x86_64.rpm", + "sha256:77a4098c35a7366a75cbd0c2cef2885d52d569aa211893fb2f026fdf479f19b0": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/e/elfutils-debuginfod-client-0.189-3.fc38.x86_64.rpm", + "sha256:67510dd0b6ea031e4182bd10ab3b4a18fe6b5c48bf9ac9a160006f9e3a041ce7": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/e/elfutils-default-yama-scope-0.189-3.fc38.noarch.rpm", + "sha256:e3570a5f03e9117e730a051d95bb8513c02cf224b160734db534c60a4aa8e67c": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/e/elfutils-libelf-0.189-3.fc38.x86_64.rpm", + "sha256:d93615d941d93d565b7c32bd4e64a108ec51d530adf63ab65436643890084e8c": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/e/elfutils-libs-0.189-3.fc38.x86_64.rpm", + "sha256:d69d41ada35587f5b1f21f43273199d03793e2bdfc1276cf7250704dd90fab16": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/e/emacs-filesystem-28.2-7.fc38.noarch.rpm", + "sha256:40f7d64e38ae31dcb3e7273c7e089705e816dc131ae87c176e2c1aad02d5b510": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/f/fedora-release-38-36.noarch.rpm", + "sha256:ac9ede79357b33f0d0c9087333b0dd3e3fd1cf5ccab5c36310b0ec446390e0c7": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/f/fedora-release-common-38-36.noarch.rpm", + "sha256:bacf386d747343cb10a2c3847c426d3e044b7de1742b4918e3b1b78cc1b54bc4": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/f/fedora-release-identity-basic-38-36.noarch.rpm", + "sha256:d5ae6a7d99826a17d163d9846c2705442b5792a7ccacc5169e4986cdf4b6bae2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/f/fuse-common-3.14.1-1.fc38.x86_64.rpm", + "sha256:1e9e8b6447c2650a306e8d107dbdcdaa4f81d4175012eea0c87846faecd64c70": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/f/fuse-overlayfs-1.12-1.fc38.x86_64.rpm", + "sha256:55ca555fe815bd360b08500889b652f50fe4c56dfafbed0cc459f2362641f1a0": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/f/fuse3-3.14.1-1.fc38.x86_64.rpm", + "sha256:f54340fec047cc359a6a164a1ce88d0d7ffcd8f7d6334b50dc5b3d234e3a19ac": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/f/fuse3-libs-3.14.1-1.fc38.x86_64.rpm", + "sha256:1afeaf1d9aae2827b957c279533e2546618881ddd73e554b4d04e2ab112cd351": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/gdb-minimal-13.2-2.fc38.x86_64.rpm", + "sha256:a312b89d5f0d21ac7dd3acfa7c6b0c07a184ae73adfdcd8597158c20928c55fa": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/glib2-2.76.4-3.fc38.x86_64.rpm", + "sha256:1d17f327a83ccb5ec42f412c78ae6aaf787bd46f10645b65af43f6f5ae9d8c15": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/glibc-2.37-4.fc38.x86_64.rpm", + "sha256:82f7c74c4f31dad16dec9fc52556f76051979b8dea69877b71aa0ac3060c25d4": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/glibc-common-2.37-4.fc38.x86_64.rpm", + "sha256:a37d38ffe36c63ab5ef58c41101cb7b2b17b3d8c954fc5e25b25a1cc82c9d7d2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/glibc-gconv-extra-2.37-4.fc38.x86_64.rpm", + "sha256:e3418df9795e4d82bbdd906c94dc4a86bb67e92760875eda33d21dd0379c66fd": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/glibc-minimal-langpack-2.37-4.fc38.x86_64.rpm", + "sha256:d40c9b41e9b45492e3d7ad37334ea19faac35b9117a0274ad21384f1cf6dc412": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/grub2-common-2.06-95.fc38.noarch.rpm", + "sha256:b548a865d143f26dd511074f0e58482d8967eeff25c8b386dd99a5b30861acc8": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/grub2-efi-ia32-2.06-95.fc38.x86_64.rpm", + "sha256:e38aab71d7460d41c871c5da206f56a5d8372a35e300f57e377bf20d6503416b": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/grub2-efi-ia32-cdboot-2.06-95.fc38.x86_64.rpm", + "sha256:b41f1f364f53aa4b8cfb7cc45171cd9afc734b1988f941efc701ac683ff05a11": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/grub2-efi-x64-2.06-95.fc38.x86_64.rpm", + "sha256:74c7da10b2467e3cc9358f511982bbd938464a6c6917946dd475921ab1eae143": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/grub2-efi-x64-cdboot-2.06-95.fc38.x86_64.rpm", + "sha256:e46f30ff71c5685aa1d411cc34e3644a5bd46cb681eb25ae47f3093d8a4c01b4": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/grub2-pc-2.06-95.fc38.x86_64.rpm", + "sha256:0fbb820c1b92541baaabe1d68ac188999be8004f9fe07c893ded807c93466a7e": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/grub2-pc-modules-2.06-95.fc38.noarch.rpm", + "sha256:405e237a7852b763a3a7ebde766103a007975a9bd8f8443f721e384a237344db": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/grub2-tools-2.06-95.fc38.x86_64.rpm", + "sha256:d5110791ff7f071eaab243f1142882c306c1fbc1ced882e1008a7ae31e61bfaf": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/grub2-tools-efi-2.06-95.fc38.x86_64.rpm", + "sha256:70d0012cc27784aa402ff1873feb46a6cac24e7231795c0ef74be8e0e5462ed7": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/grub2-tools-extra-2.06-95.fc38.x86_64.rpm", + "sha256:54f80d720b6656ae12c37ff54143da540f464822ec86c8fed5f0122e5834dba9": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/g/grub2-tools-minimal-2.06-95.fc38.x86_64.rpm", + "sha256:474d313e8fe10db2020adff50432248f73766082d915d13906c5e8856b597fd0": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/i/inih-57-1.fc38.x86_64.rpm", + "sha256:5a3f84520b454df79881a920ef07378aee8d5d6d0107e28eecf2f9ba40511a29": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/k/kernel-srpm-macros-1.0-19.fc38.noarch.rpm", + "sha256:ba5712ac129c7870dd00556b421a89fd485074d41ee6d0449821a43a9b5753a0": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/k/kf5-filesystem-5.108.0-1.fc38.x86_64.rpm", + "sha256:81a1026f5fd6dc344689929048a8bd75313b2ee5544bb80abd9c0d9c02debdcd": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/k/koji-1.33.0-1.fc38.noarch.rpm", + "sha256:77799c4067ade64fce291f4d1374d3acf06109288e7aed567b3bedc9c0098750": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/k/krb5-libs-1.21-2.fc38.x86_64.rpm", + "sha256:56f72f1a9e2b939382860e7a8addc5b991475f49caca13de7da1e5ea75bd2118": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/langpacks-core-font-en-3.0-32.fc38.noarch.rpm", + "sha256:2826b059dcf06e0a366ee51e68a2019c4292d6f5ca38f8ae77aaed0457bd79fa": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libX11-1.8.6-1.fc38.x86_64.rpm", + "sha256:a4e7033017e54c657ed0cfb161a388d13b32089e83755bc9395342f5300e3375": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libX11-common-1.8.6-1.fc38.noarch.rpm", + "sha256:03c7ea2565af3b61a6ff0d5d4e0e5c65747053fc43903b913a46337903c6fdb5": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libassuan-2.5.6-1.fc38.x86_64.rpm", + "sha256:056afe729e2b277d0b4e58118c9b46b4a0fc0498080ead7ce29dd4979a67c14d": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libburn-1.5.6-1.fc38.x86_64.rpm", + "sha256:c502e6d5a4bdc52819d352bb929094674722cf8ead751e5aa4b6190761b0ac01": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libcurl-8.0.1-3.fc38.x86_64.rpm", + "sha256:6d749499a0ef3323e3454de7d6f050d04b1ca8db6713101aa17ac82f4c59d16f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libdnf-0.70.1-1.fc38.x86_64.rpm", + "sha256:5e9c1f6eb801c4af90d0905487f49c81d7d6d3aff15e3fa353f64035d4fc85e6": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libgcc-13.1.1-4.fc38.x86_64.rpm", + "sha256:ef4b2686134e6be036755ee093aad43eb0ce4a4c84c93a2defb755cfeb398754": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libgcrypt-1.10.2-1.fc38.x86_64.rpm", + "sha256:07108b67335e1bac97f1c8d2dff2be35225981372535d6ced508d9b08eea2e0f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libgit2-1.6.4-1.fc38.x86_64.rpm", + "sha256:4f87fb54a6222d78fde0ebb18dc1f457fc4dd173c05695e16ee6b081e3f8b00a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libgomp-13.1.1-4.fc38.x86_64.rpm", + "sha256:40b98bdd00b44fbf808df1d653ecf0f0ed8549643d52b68da2455c5a878f0021": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libgpg-error-1.47-1.fc38.x86_64.rpm", + "sha256:3a6189cc2e67a9119085cdd7c1fa9db09bf7240eff3b4f1fd4a2ff0a21ff4449": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libisoburn-1.5.6-1.fc38.x86_64.rpm", + "sha256:5508b475b68c87c87f3312d6a0bd0893334128dc0edd13aedc7f0a1d5ddd2f18": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libisofs-1.5.6-1.fc38.x86_64.rpm", + "sha256:4c5af4c1d44e1720beb79fd4202d3754e2c47c4faeb4ff5bdbe2ee3d24c9a5e0": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libksba-1.6.4-1.fc38.x86_64.rpm", + "sha256:5edeec0be1144c7eea7040a8232b08add6b1b319a0ec2cf3d13f7e1c2da2cfd9": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libmodulemd-2.15.0-2.fc38.x86_64.rpm", + "sha256:aad2c4821c191a9c93c919563c946d793f54b4339f61a61937a66ceebc93d0e4": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libreport-filesystem-2.17.11-1.fc38.noarch.rpm", + "sha256:a383d65f22be848a24bc8e328d136260f15dd8b0401da273bb27e18228bada4a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libssh-0.10.5-1.fc38.x86_64.rpm", + "sha256:2aefc576f770dc60682929c5de6a80b3c6adbe596398f8d5a1fb89ef7070a1eb": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libssh-config-0.10.5-1.fc38.noarch.rpm", + "sha256:6ea8e30785451c3052bf7482debed98b5c6ace4a36fe5b256a5eb90ceb26a744": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libstdc++-13.1.1-4.fc38.x86_64.rpm", + "sha256:e13941f4a922a76da599fb0e00884e530d9ed8ce5145fb5a54f7337a6af5085e": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libtirpc-1.3.3-1.rc1.fc38.x86_64.rpm", + "sha256:e1371ff618285e7d4f8fbcecc0e2575d3a152abefb414fc3d035091873cbf86b": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/liburing-2.4-2.fc38.x86_64.rpm", + "sha256:52d90d6fbd1ad93f81aad2c4aa38aa52b1c1c94b83560ede25c91b5542da97a4": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libxcrypt-4.4.36-1.fc38.x86_64.rpm", + "sha256:e5befc91bfd39ab624cf40c8a1ed32caedc0f74f9ea4fb913e4d9915c1d708c6": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libxcrypt-compat-4.4.36-1.fc38.x86_64.rpm", + "sha256:13f2ec62e10333000a13123a4cae5ebbda270c32ece03247e45bd2b244e7bba5": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libxml2-2.10.4-1.fc38.x86_64.rpm", + "sha256:fa545e6ec3e787f8ea67224b41b2d912a32054f16d557c7ea82ba1f7e46187bb": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libxslt-1.1.38-1.fc38.x86_64.rpm", + "sha256:7d9a98372505c9c1dff7dfea558b20a44820fda416a609467790577a848de110": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/libzstd-1.5.5-1.fc38.x86_64.rpm", + "sha256:e990ab2d16eb98d5c3759964976aff716991ee22e90085d0e06e58349b5f42ac": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/lorax-38.10-2.fc38.x86_64.rpm", + "sha256:f08cc45a1a23ce90ab3da61d15cc6c7cf01f8d956ea6844f8caa37629109b2f2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/l/lorax-templates-generic-38.10-2.fc38.x86_64.rpm", + "sha256:77b74224b3f6669c1e2c17c371a411d350e120c1ba2080ff2009e1b47b3c2563": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/m/mkpasswd-5.5.17-1.fc38.x86_64.rpm", + "sha256:19ce3347cac4f209d5aa31c5631510246137f755423b3c6d46e30dbd65b219e3": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/o/openscap-1.3.8-1.fc38.x86_64.rpm", + "sha256:0045391c8dfd3c8709f1f52b9dad6348ef106945f7b7d61905a6740064c850b8": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/o/openscap-scanner-1.3.8-1.fc38.x86_64.rpm", + "sha256:9021dd92b1473c95f9ef08a576b21e8b431e8c11dff3a0b52d5b36a8f4608993": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/o/openscap-utils-1.3.8-1.fc38.x86_64.rpm", + "sha256:c9984097ed1c330ccf4369b4e0c2e006b2de3211f0b128804b2992dea401f914": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/o/openssl-libs-3.0.9-1.fc38.x86_64.rpm", + "sha256:2874670be48764992979fa2908b52029f93c3534f7efc771e7276ee4e2ededf0": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/o/ostree-2023.4-2.fc38.x86_64.rpm", + "sha256:6853c9d0c6ce4bc73de5c68260a8fd22a9935756a296ea75393cf0549a869fa8": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/o/ostree-libs-2023.4-2.fc38.x86_64.rpm", + "sha256:f0d951dd18b72451818dd13c8daa14145de3f81cedf6397148a41ce3845b50e2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/package-notes-srpm-macros-0.5-8.fc38.noarch.rpm", + "sha256:716096df1b34d768c3e6a5985de8e1ee58b2183ad9f987aa754e592bd2793c70": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/polkit-122-3.fc38.1.x86_64.rpm", + "sha256:56705b6a1526960d534b0d3e4247deb4eef2b5fa64ceb03544281b8e9bdc4597": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/polkit-libs-122-3.fc38.1.x86_64.rpm", + "sha256:2a326fb0009de92b17051e083a9aef592dc68084b9e5d916c0d12cb4b23b67fa": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/publicsuffix-list-dafsa-20230614-1.fc38.noarch.rpm", + "sha256:9ad066179d9786ea384769d46805a1aab89624cbc66b54c51bdf40af9ec2ebc1": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/pyproject-srpm-macros-1.9.0-1.fc38.noarch.rpm", + "sha256:b184ce15b4abaac8cb47ce5bc790e1c6d3bf6e8318d84e6b0c1705f01f6dd2b2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/python-unversioned-command-3.11.4-1.fc38.noarch.rpm", + "sha256:5da0c28315411128a940caa196e7a23a41edaeb1b595f6132c8b860c88a60751": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/python3-3.11.4-1.fc38.x86_64.rpm", + "sha256:00df870cdbc119305ce24f1cb8a554a2c5957e613a7cc8b0fa8a2ca42e13c73e": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/python3-argcomplete-2.0.0-8.fc38.noarch.rpm", + "sha256:45e78b9ac3ea47b604ef7c7f8e615d42790114ac0828173445943da72b3d64b7": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/python3-beaker-1.12.1-1.fc38.noarch.rpm", + "sha256:aacbdbb501a2cea12e3a8b3234c7f809ea5a32fa8549726f3fd7899dc7bc4531": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/python3-dnf-4.16.1-1.fc38.noarch.rpm", + "sha256:1377def5f025248585edda9469c74dca12f63b875c3d7c31ecfc870bbc45a37d": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/python3-hawkey-0.70.1-1.fc38.x86_64.rpm", + "sha256:79a6c35fece0f92d655f07de734b1c0c421a7521f717d156e682bd42f0266fc4": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/python3-koji-1.33.0-1.fc38.noarch.rpm", + "sha256:f2cd7708c8796f59814fff5da90adc484bf50c39b0f46deb343e5a1462f452bd": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/python3-libdnf-0.70.1-1.fc38.x86_64.rpm", + "sha256:d4e4f443e194cc6298d54f81cc713966ef846f69a83d110a8ae7330ac4347dfd": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/python3-libs-3.11.4-1.fc38.x86_64.rpm", + "sha256:6d9dbe9bfab0ea5ce5f50da459c5607c9b2ff6f953cd07efd31c05a05561e617": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/python3-pygit2-1.12.2-1.fc38.x86_64.rpm", + "sha256:95af904a4ef7f36d357a93f3930a93a6135a35295ec3ea021114e8e95a0a8bcc": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/python3-requests-2.28.2-2.fc38.noarch.rpm", + "sha256:d822399553d067ff2d74b41ac5dd7febe85ded927e5efeeacabdc3778a105ca1": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/python3-rpm-4.18.1-3.fc38.x86_64.rpm", + "sha256:9586bd047892cd8307f0865e2f36dda28404a0664379a3fd55933b2fffb7bf4b": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/python3-urllib3+socks-1.26.16-1.fc38.noarch.rpm", + "sha256:2f287153abd9888e5beec367d30c3a4c2e0b3859b6b3dcdef40ce305e2f1f01d": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/p/python3-urllib3-1.26.16-1.fc38.noarch.rpm", + "sha256:840bf28d52bc9b1b0f90e415f507fdb9e875dc52c3153425ecc112a0735fc757": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/q/qemu-img-7.2.1-2.fc38.x86_64.rpm", + "sha256:4394eb9fcc7f5b2ef505c618ced3aba19ff6eeafc9bde16b18eab558b7bd98c7": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/q/qt5-srpm-macros-5.15.10-1.fc38.noarch.rpm", + "sha256:fcd827a4f95db14a707bc604efac1db86973eaa97bd8bf9f78c37a925c09a297": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/r/rpm-4.18.1-3.fc38.x86_64.rpm", + "sha256:80d4acc0fbcd177387698aab66812214992df5138660262cf82de81673b9d72f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/r/rpm-build-4.18.1-3.fc38.x86_64.rpm", + "sha256:ab3b16ef840dcf502300e178e576e82483f3cf7a04a9a13d580304945ee8408f": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/r/rpm-build-libs-4.18.1-3.fc38.x86_64.rpm", + "sha256:10196a125eccfe91f3eb187be4e07d7a7d9304f738c3feed087b6f8c4375f305": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/r/rpm-libs-4.18.1-3.fc38.x86_64.rpm", + "sha256:85ea05de694ddda37ccde33d800398efcb24c191bd976ec161d5f6208e631646": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/r/rpm-ostree-2023.5-1.fc38.x86_64.rpm", + "sha256:60f58fce0f9f4e2c2a736e5c6183f13797a9fa345ee0510c2c7fe74c675f6ee5": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/r/rpm-ostree-libs-2023.5-1.fc38.x86_64.rpm", + "sha256:edc3846d881c4ad341c5e97f7a2b7ec8f5164c26e73839449374b3c6fc2483fd": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/r/rpm-plugin-selinux-4.18.1-3.fc38.x86_64.rpm", + "sha256:c7d3279aea06be9d4fd4e455b9327fddd3fa837d836d55a63e1389f2271ddee2": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/r/rpm-plugin-systemd-inhibit-4.18.1-3.fc38.x86_64.rpm", + "sha256:7f26ae199b2493734de4b977fd9211131d00ca87c8882b9eef4ac863a9d4bbd5": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/r/rpm-sequoia-1.4.1-1.fc38.x86_64.rpm", + "sha256:e790a18368a9292ee62861b2533ac602454dd62e0c2caf26cc75566b6c95676b": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/r/rpm-sign-libs-4.18.1-3.fc38.x86_64.rpm", + "sha256:4710038b95fa5ac1f9f2ce676cc36041f625b983dc4d5dda78cfba3f49047677": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/r/rust-srpm-macros-24-2.fc38.noarch.rpm", + "sha256:384f6cea7aac9b8da1462df266aad80fe776ddecefbd2e614a0832a83f211ddc": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/s/selinux-policy-38.21-1.fc38.noarch.rpm", + "sha256:6c5726df4acbfa4196b50f948b0673862f5e8794088128919ff3b6492a0725f4": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/s/selinux-policy-targeted-38.21-1.fc38.noarch.rpm", + "sha256:6907ca79c5560126e336ee56c9934defbbce7a28f9540afa990fc45f2b23124d": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/s/skopeo-1.13.0-1.fc38.x86_64.rpm", + "sha256:be43458e321ec5320f20af5d908b9506b346646ecdd8a8e68111069d22c66ebe": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/s/systemd-253.7-1.fc38.x86_64.rpm", + "sha256:6cbf0f136a942432ee4c8a1cc75b83fb5679b26fb45d7104eacda84fdc036051": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/s/systemd-libs-253.7-1.fc38.x86_64.rpm", + "sha256:dbb3be8f8a1fa75a783624a25520cd4f4257a68a85d67b4575b0801a76e9a97d": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/s/systemd-networkd-253.7-1.fc38.x86_64.rpm", + "sha256:b35dfadd576ddc748d0c12bf3ab18a9033c4e61bb4373800f60bdf534255d156": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/s/systemd-pam-253.7-1.fc38.x86_64.rpm", + "sha256:332c96a2feec18d8d6c9efb051b479677fd304482e2660828984a6de93de6e98": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/s/systemd-resolved-253.7-1.fc38.x86_64.rpm", + "sha256:2efe1dc5a40c4b4dd99317e5f1d85246d54f4035afa254fc5f737e620107e0b3": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/s/systemd-rpm-macros-253.7-1.fc38.noarch.rpm", + "sha256:1711d39fadc0d6a578acc4d2aa455b6ef9777fbe83daf3d41bb0c19d3b6aed43": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/s/systemd-udev-253.7-1.fc38.x86_64.rpm", + "sha256:5cc364cad8cb613a0ec68076f7f8e10b72ef2e266a10d2463bf548b2b0abd13e": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/t/tpm2-tools-5.5-3.fc38.x86_64.rpm", + "sha256:23555f58d70d04c3bdf94efee8b829e0cbb2aba38f78fe6d76b8e19aa5058e52": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/w/whois-nls-5.5.17-1.fc38.noarch.rpm", + "sha256:07ee6c35c5a5f2296c4151d9672cf0e3aa00c9e84f30478f0f4c0670e51914aa": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/x/xorriso-1.5.6-1.fc38.x86_64.rpm", + "sha256:35723c263a43a41c471f0bff749b0431d0a048c822e9779d28781b41c5a60260": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/x/xxhash-libs-0.8.2-1.fc38.x86_64.rpm", + "sha256:dca922285b9f680f084fef9c5b48096574313a0f7ae41ef8251e018c5df8dbda": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/z/zchunk-libs-1.3.1-1.fc38.x86_64.rpm", + "sha256:e38ad825c896732bb99970ac992d56265961f72c485182fab06f328fcc35e76a": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-updates-released-20230724/Packages/z/zstd-1.5.5-1.fc38.x86_64.rpm" + } + }, + "org.osbuild.ostree": { + "items": { + "bc49c681f6c1f931db8547f7d18ee3b9fef5dc044ff475b0076d58a655479f90": { + "remote": { + "url": "https://kojipkgs.fedoraproject.org/ostree/repo/" + } + } + } + } + } +} diff --git a/test/data/manifests/fedora-coreos-ostree-image.mpp.yaml b/test/data/manifests/fedora-coreos-ostree-image.mpp.yaml new file mode 100644 index 000000000..00b9c0608 --- /dev/null +++ b/test/data/manifests/fedora-coreos-ostree-image.mpp.yaml @@ -0,0 +1,235 @@ +version: '2' +mpp-define-image: + id: image + #10G + size: '10737418240' + table: + uuid: 00000000-0000-4000-a000-000000000001 + label: gpt + partitions: + - id: BIOS-BOOT + size: 2048 + type: 21686148-6449-6E6F-744E-656564454649 + bootable: true + uuid: FAC7F1FB-3E8D-4137-A512-961DE09A5549 + - id: EFI-SYSTEM + size: 260096 + type: C12A7328-F81F-11D2-BA4B-00A0C93EC93B + uuid: 68B2905B-DF3E-4FB3-80FA-49D1E773AA33 + - id: boot + size: 786432 + type: 0FC63DAF-8483-4772-8E79-3D69D8477DE4 + uuid: 61B2905B-DF3E-4FB3-80FA-49D1E773AA32 + - id: root + size: 4194304 + type: 0FC63DAF-8483-4772-8E79-3D69D8477DE4 + uuid: CA7D7CCB-63ED-4C53-861C-1742536059CC +pipelines: + - mpp-import-pipelines: + path: fedora-vars.ipp.yaml + - mpp-import-pipeline: + path: fedora-build-v2.ipp.yaml + id: build + runner: + mpp-format-string: org.osbuild.fedora{release} + - name: image-tree + build: name:build + source-epoch: 1659397331 + stages: + - type: org.osbuild.ostree.init-fs + - type: org.osbuild.ostree.os-init + options: + osname: fedora-coreos + - type: org.osbuild.ostree.config + options: + repo: /ostree/repo + config: + sysroot: + readonly: false + bootloader: none + - type: org.osbuild.mkdir + options: + paths: + - path: /boot/efi + mode: 448 + - type: org.osbuild.ignition + - type: org.osbuild.ostree.deploy + options: + osname: fedora-coreos + remote: fedora + mounts: + - /boot + - /boot/efi + kernel_opts: + - rw + - console=tty0 + - console=ttyS0 + - ignition.platform.id=qemu + - '$ignition_firstboot' + inputs: + commits: + type: org.osbuild.ostree + origin: org.osbuild.source + mpp-resolve-ostree-commits: + commits: + - ref: fedora/x86_64/coreos/stable + remote: + url: https://kojipkgs.fedoraproject.org/ostree/repo/ + - type: org.osbuild.ostree.selinux + options: + deployment: + osname: fedora-coreos + ref: ostree/1/1/0 + - type: org.osbuild.grub2 + options: + rootfs: + label: root + bootfs: + label: boot + uefi: + vendor: fedora + install: true + legacy: i386-pc + write_defaults: false + greenboot: false + ignition: true + - name: image + build: name:build + stages: + - type: org.osbuild.truncate + options: + filename: disk.img + size: + mpp-format-string: '{image.size}' + - type: org.osbuild.sfdisk + devices: + device: + type: org.osbuild.loopback + options: + filename: disk.img + options: + mpp-format-json: '{image.layout}' + - type: org.osbuild.mkfs.fat + devices: + device: + type: org.osbuild.loopback + options: + filename: disk.img + start: + mpp-format-int: '{image.layout[''EFI-SYSTEM''].start}' + size: + mpp-format-int: '{image.layout[''EFI-SYSTEM''].size}' + lock: true + options: + label: EFI-SYSTEM + volid: 7B7795E7 + - type: org.osbuild.mkfs.ext4 + devices: + device: + type: org.osbuild.loopback + options: + filename: disk.img + start: + mpp-format-int: '{image.layout[''boot''].start}' + size: + mpp-format-int: '{image.layout[''boot''].size}' + lock: true + options: + uuid: 96d15588-3596-4b3c-adca-a2ff7279ea63 + label: boot + - type: org.osbuild.mkfs.xfs + devices: + device: + type: org.osbuild.loopback + options: + filename: disk.img + start: + mpp-format-int: '{image.layout[''root''].start}' + size: + mpp-format-int: '{image.layout[''root''].size}' + lock: true + options: + uuid: 910678ff-f77e-4a7d-8d53-86f2ac47a823 + label: root + - type: org.osbuild.copy + inputs: + tree: + type: org.osbuild.tree + origin: org.osbuild.pipeline + references: + - name:image-tree + options: + paths: + - from: input://tree/ + to: mount://root/ + devices: + efi: + type: org.osbuild.loopback + options: + filename: disk.img + start: + mpp-format-int: '{image.layout[''EFI-SYSTEM''].start}' + size: + mpp-format-int: '{image.layout[''EFI-SYSTEM''].size}' + boot: + type: org.osbuild.loopback + options: + filename: disk.img + start: + mpp-format-int: '{image.layout[''boot''].start}' + size: + mpp-format-int: '{image.layout[''boot''].size}' + root: + type: org.osbuild.loopback + options: + filename: disk.img + start: + mpp-format-int: '{image.layout[''root''].start}' + size: + mpp-format-int: '{image.layout[''root''].size}' + mounts: + - name: root + type: org.osbuild.xfs + source: root + target: / + - name: boot + type: org.osbuild.ext4 + source: boot + target: /boot + - name: efi + type: org.osbuild.fat + source: efi + target: /boot/efi + - type: org.osbuild.grub2.inst + options: + platform: i386-pc + filename: disk.img + location: + mpp-format-int: '{image.layout[''BIOS-BOOT''].start}' + core: + type: mkimage + partlabel: gpt + filesystem: ext4 + prefix: + type: partition + partlabel: + mpp-format-string: '{image.layout.label}' + number: + mpp-format-int: '{image.layout[''boot''].index}' + path: /grub2 + - name: qcow2 + build: name:build + stages: + - type: org.osbuild.qemu + inputs: + image: + type: org.osbuild.files + origin: org.osbuild.pipeline + references: + name:image: + file: disk.img + options: + filename: disk.qcow2 + format: + type: qcow2 + compat: '1.1' diff --git a/test/data/manifests/fedora-ostree-image.mpp.yaml b/test/data/manifests/fedora-ostree-image.mpp.yaml index 4ac2180a9..e9840efc3 100644 --- a/test/data/manifests/fedora-ostree-image.mpp.yaml +++ b/test/data/manifests/fedora-ostree-image.mpp.yaml @@ -1,120 +1,87 @@ version: '2' mpp-define-image: id: image + #10G size: '10737418240' table: - uuid: D209C89E-EA5E-4FBD-B161-B461CCE297E0 + uuid: 00000000-0000-4000-a000-000000000001 label: gpt partitions: - - id: bios-boot + - id: BIOS-BOOT size: 2048 type: 21686148-6449-6E6F-744E-656564454649 bootable: true uuid: FAC7F1FB-3E8D-4137-A512-961DE09A5549 - - id: efi - size: 204800 + - id: EFI-SYSTEM + size: 260096 type: C12A7328-F81F-11D2-BA4B-00A0C93EC93B uuid: 68B2905B-DF3E-4FB3-80FA-49D1E773AA33 - id: boot - size: 204800 + size: 786432 type: 0FC63DAF-8483-4772-8E79-3D69D8477DE4 uuid: 61B2905B-DF3E-4FB3-80FA-49D1E773AA32 - - id: luks + - id: root + # XXX: Dynamically set this size in the future + size: 4194304 type: 0FC63DAF-8483-4772-8E79-3D69D8477DE4 uuid: CA7D7CCB-63ED-4C53-861C-1742536059CC +sources: + org.osbuild.ostree: + items: + 2c39e9b6a6b26226b626f4daf815d5307a96b2cd57463e94f7c618e312a61980: + remote: + url: https://kojipkgs.fedoraproject.org/ostree/repo/ pipelines: - mpp-import-pipelines: path: fedora-vars.ipp.yaml - - mpp-import-pipeline: - path: fedora-build-v2.ipp.yaml - id: build runner: mpp-format-string: org.osbuild.fedora{release} - - mpp-import-pipelines: - path: fedora-ostree-commit.mpp.yaml - ids: - - ostree-tree - - ostree-commit - name: image-tree - build: name:build source-epoch: 1659397331 stages: - type: org.osbuild.ostree.init-fs - type: org.osbuild.ostree.os-init options: - osname: fedora + osname: fedora-coreos - type: org.osbuild.ostree.config options: repo: /ostree/repo config: sysroot: - readonly: true + readonly: false bootloader: none - type: org.osbuild.mkdir options: paths: - path: /boot/efi mode: 448 + - type: org.osbuild.ignition - type: org.osbuild.ostree.deploy options: - osname: fedora - ref: fedora/x86_64/osbuild - remote: osbuild + osname: fedora-coreos + ref: fedora/x86_64/coreos/stable + remote: fedora mounts: - /boot - /boot/efi - rootfs: - label: root kernel_opts: - rw - console=tty0 - console=ttyS0 - - systemd.log_target=console - - systemd.journald.forward_to_console=1 - - luks.uuid=aedd1eef-f24e-425e-a9f3-bb5a1c996a95 + - ignition.platform.id=qemu + - '$ignition_firstboot' inputs: commits: type: org.osbuild.ostree - origin: org.osbuild.pipeline + origin: org.osbuild.source references: - name:ostree-commit: - ref: fedora/x86_64/osbuild - - type: org.osbuild.ostree.fillvar - options: - deployment: - osname: fedora - ref: fedora/x86_64/osbuild - - type: org.osbuild.fstab - mounts: - - type: org.osbuild.ostree.deployment - name: ostree.deployment - options: - deployment: - osname: fedora - ref: fedora/x86_64/osbuild - options: - filesystems: - - label: boot - vfs_type: ext4 - path: /boot - freq: 1 - passno: 1 - - label: root - vfs_type: xfs - path: / - freq: 1 - passno: 1 - - label: ESP - vfs_type: vfat - path: /boot/efi - options: umask=0077,shortname=winnt - freq: 0 - passno: 2 + "2c39e9b6a6b26226b626f4daf815d5307a96b2cd57463e94f7c618e312a61980": + ref: fedora/x86_64/coreos/stable - type: org.osbuild.ostree.selinux options: deployment: - osname: fedora - ref: fedora/x86_64/osbuild + osname: fedora-coreos + ref: fedora/x86_64/coreos/stable - type: org.osbuild.grub2 options: rootfs: @@ -126,9 +93,9 @@ pipelines: install: true legacy: i386-pc write_defaults: false - greenboot: true + greenboot: false + ignition: true - name: image - build: name:build stages: - type: org.osbuild.truncate options: @@ -150,12 +117,12 @@ pipelines: options: filename: disk.img start: - mpp-format-int: '{image.layout[''efi''].start}' + mpp-format-int: '{image.layout[''EFI-SYSTEM''].start}' size: - mpp-format-int: '{image.layout[''efi''].size}' + mpp-format-int: '{image.layout[''EFI-SYSTEM''].size}' lock: true options: - label: ESP + label: EFI-SYSTEM volid: 7B7795E7 - type: org.osbuild.mkfs.ext4 devices: @@ -169,69 +136,21 @@ pipelines: mpp-format-int: '{image.layout[''boot''].size}' lock: true options: - uuid: 156f0420-627b-4151-ae6f-fda298097515 + uuid: 96d15588-3596-4b3c-adca-a2ff7279ea63 label: boot - - type: org.osbuild.luks2.format + - type: org.osbuild.mkfs.xfs devices: device: type: org.osbuild.loopback options: filename: disk.img start: - mpp-format-int: '{image.layout[''luks''].start}' + mpp-format-int: '{image.layout[''root''].start}' size: - mpp-format-int: '{image.layout[''luks''].size}' + mpp-format-int: '{image.layout[''root''].size}' lock: true options: - passphrase: osbuild - uuid: aedd1eef-f24e-425e-a9f3-bb5a1c996a95 - label: luks - pbkdf: - method: argon2i - memory: 32 - parallelism: 1 - iterations: 4 - - type: org.osbuild.lvm2.create - devices: - luks: - type: org.osbuild.loopback - options: - filename: disk.img - start: - mpp-format-int: '{image.layout[''luks''].start}' - size: - mpp-format-int: '{image.layout[''luks''].size}' - device: - type: org.osbuild.luks2 - parent: luks - options: - passphrase: osbuild - options: - volumes: - - name: root - extents: 100%FREE - - type: org.osbuild.mkfs.xfs - devices: - luks: - type: org.osbuild.loopback - options: - filename: disk.img - start: - mpp-format-int: '{image.layout[''luks''].start}' - size: - mpp-format-int: '{image.layout[''luks''].size}' - lvm: - type: org.osbuild.luks2 - parent: luks - options: - passphrase: osbuild - device: - type: org.osbuild.lvm2.lv - parent: lvm - options: - volume: root - options: - uuid: 76a22bf4-f153-4541-b6c7-0332c0dfaeac + uuid: 910678ff-f77e-4a7d-8d53-86f2ac47a823 label: root - type: org.osbuild.copy inputs: @@ -250,9 +169,9 @@ pipelines: options: filename: disk.img start: - mpp-format-int: '{image.layout[''efi''].start}' + mpp-format-int: '{image.layout[''EFI-SYSTEM''].start}' size: - mpp-format-int: '{image.layout[''efi''].size}' + mpp-format-int: '{image.layout[''EFI-SYSTEM''].size}' boot: type: org.osbuild.loopback options: @@ -261,24 +180,14 @@ pipelines: mpp-format-int: '{image.layout[''boot''].start}' size: mpp-format-int: '{image.layout[''boot''].size}' - luks: + root: type: org.osbuild.loopback options: filename: disk.img start: - mpp-format-int: '{image.layout[''luks''].start}' + mpp-format-int: '{image.layout[''root''].start}' size: - mpp-format-int: '{image.layout[''luks''].size}' - lvm: - type: org.osbuild.luks2 - parent: luks - options: - passphrase: osbuild - root: - type: org.osbuild.lvm2.lv - parent: lvm - options: - volume: root + mpp-format-int: '{image.layout[''root''].size}' mounts: - name: root type: org.osbuild.xfs @@ -297,7 +206,7 @@ pipelines: platform: i386-pc filename: disk.img location: - mpp-format-int: '{image.layout[''bios-boot''].start}' + mpp-format-int: '{image.layout[''BIOS-BOOT''].start}' core: type: mkimage partlabel: gpt @@ -309,27 +218,7 @@ pipelines: number: mpp-format-int: '{image.layout[''boot''].index}' path: /grub2 - - type: org.osbuild.lvm2.metadata - devices: - luks: - type: org.osbuild.loopback - options: - filename: disk.img - start: - mpp-format-int: '{image.layout[''luks''].start}' - size: - mpp-format-int: '{image.layout[''luks''].size}' - device: - type: org.osbuild.luks2 - parent: luks - options: - passphrase: osbuild - options: - vg_name: osbuild - creation_host: osbuild - description: Built with osbuild - name: qcow2 - build: name:build stages: - type: org.osbuild.qemu inputs: diff --git a/tools/osbuild-mpp b/tools/osbuild-mpp index 2e2cb8eeb..8ccca386b 100755 --- a/tools/osbuild-mpp +++ b/tools/osbuild-mpp @@ -158,6 +158,40 @@ of the image, otherwise the "latest" tag is used. If "name" is specified that is used as the custom name for the container when installed. +OSTree commit resolving: + +This tool consumes the `mpp-resolve-ostree-commits` option and produces +source and inputs entries for the ostree commits. + +It supports version version "2" of the manifest description format. + +The parameters for this pre-processor, version "2", look like this: + +``` +... + { + "name": "org.osbuild.deploy", + ... + "inputs": { + "commits": { + "mpp-resolve-ostree-commits": { + "commits": [ + { + "ref": "fedora/x86_64/coreos/stable" + "remote": { + "url": https://kojipkgs.fedoraproject.org/ostree/repo/ + } + } + ] + } + } + } + } +... +``` + + + Variable expansion and substitution: The variables can be set in the mpp-vars toplevel dict (which is removed from @@ -324,6 +358,7 @@ import rpm import yaml from osbuild.util import containers +from osbuild.util import ostree from osbuild.util.rhsm import Subscriptions # We need to resolve an image name to a resolved image manifest digest @@ -1258,6 +1293,7 @@ class ManifestFile: self._process_depsolve(stage, pipeline_name) self._process_embed_files(stage) self._process_container(stage) + self._process_ostree_commits(stage) def _process_depsolve(self, _stage, _pipeline_name): raise NotImplementedError() @@ -1268,6 +1304,8 @@ class ManifestFile: def _process_container(self, _stage): raise NotImplementedError() + def _process_ostree(self, _stage): + raise NotImplementedError() class ManifestFileV1(ManifestFile): def __init__(self, path, overrides, default_vars, data, searchdirs): @@ -1356,6 +1394,9 @@ class ManifestFileV1(ManifestFile): def _process_container(self, stage): "Installing containers is not supported for v1 manifests" + def _process_ostree_commits(self, stage): + "Pre-processing ostree commits is not supported for v1 manifests" + class ManifestFileV2(ManifestFile): def __init__(self, path, overrides, default_vars, data, searchdirs): @@ -1498,10 +1539,22 @@ class ManifestFileV2(ManifestFile): embed_data(ip, mpp) def _process_container(self, stage): - if stage.get("type", "") != "org.osbuild.skopeo": + if stage.get("type", "") not in \ + ["org.osbuild.skopeo", "org.osbuild.ostree.deploy"]: return inputs = element_enter(stage, "inputs", {}) + + # The ostree.deploy stage accepts both containers or + # ostree commits as input. If this is an ostree.deploy + # stage and there are no images in the inputs then let's + # return early. This prevents an empty "images" object + # from being created when an ostree commit is used as + # an input to ostree.deploy and not a container image. + if stage.get("type", "") == "org.osbuild.ostree.deploy": + if "images" not in inputs: + return + inputs_images = element_enter(inputs, "images", {}) if inputs_images.get("type", "") != "org.osbuild.containers": @@ -1568,6 +1621,59 @@ class ManifestFileV2(ManifestFile): inputs_manifests["origin"] = "org.osbuild.source" inputs_manifests["references"] = manifest_lists + def _process_ostree_commits(self, stage): + if stage.get("type", "") not in \ + ["org.osbuild.ostree.pull", "org.osbuild.ostree.deploy"]: + return + + inputs = element_enter(stage, "inputs", {}) + + # The ostree.deploy stage accepts both containers or + # ostree commits as input. If this is an ostree.deploy + # stage and there are no commits in the inputs then let's + # return early. This prevents an empty "commits" object + # from being created when a container image is used as + # an input to ostree.deploy and not an ostree commit. + + if stage.get("type", "") == "org.osbuild.ostree.deploy": + if "commits" not in inputs: + return + + inputs_commits = element_enter(inputs, "commits", {}) + + if inputs_commits.get("type", "") != "org.osbuild.ostree": + return + if inputs_commits.get("origin", "") != "org.osbuild.source": + return + + mpp = self.get_mpp_node(inputs_commits, "resolve-ostree-commits") + if not mpp: + return + + refs = element_enter(inputs_commits, "references", {}) + + ostree_commit_source = element_enter(self.sources, "org.osbuild.ostree", {}) + items = element_enter(ostree_commit_source, "items", {}) + + for commit in element_enter(mpp, "commits", []): + remote = commit["remote"] + ref = commit["ref"] + + with tempfile.TemporaryDirectory() as tmprepo: + ostree.cli("init", mode="archive", repo=tmprepo) + # This is a temporary repo so we'll just use a random name + remote_name = "tmpremote" + ostree.setup_remote(tmprepo, remote_name, remote) + ostree.cli( "pull", "--commit-metadata-only", + "--mirror", remote_name, ref, repo=tmprepo) + checksum = ostree.rev_parse(tmprepo, ref) + items[checksum] = { + "remote": remote + } + refs[checksum] = { + "ref": ref + } + def main(): parser = argparse.ArgumentParser(description="Manifest pre processor")