def setup_dnf(state: MkosiState, repos: Sequence[Repo]) -> None:
config = state.pkgmngr / "etc/dnf/dnf.conf"
- if config.exists():
- return
-
- config.parent.mkdir(exist_ok=True, parents=True)
-
- with config.open("w") as f:
- for repo in repos:
- f.write(
- dedent(
- f"""\
- [{repo.id}]
- name={repo.id}
- {repo.url}
- gpgcheck=1
- enabled={int(repo.enabled)}
- """
+ if not config.exists():
+ config.parent.mkdir(exist_ok=True, parents=True)
+ config.touch()
+
+ repofile = state.pkgmngr / f"etc/yum.repos.d/{state.config.distribution}.repo"
+ if not repofile.exists():
+ repofile.parent.mkdir(exist_ok=True, parents=True)
+ with repofile.open("w") as f:
+ for repo in repos:
+ f.write(
+ dedent(
+ f"""\
+ [{repo.id}]
+ name={repo.id}
+ {repo.url}
+ gpgcheck=1
+ enabled={int(repo.enabled)}
+ """
+ )
)
- )
- for i, url in enumerate(repo.gpgurls):
- f.write("gpgkey=" if i == 0 else len("gpgkey=") * " ")
- f.write(f"{url}\n")
+ for i, url in enumerate(repo.gpgurls):
+ f.write("gpgkey=" if i == 0 else len("gpgkey=") * " ")
+ f.write(f"{url}\n")
def invoke_dnf(