From: Daan De Meyer Date: Thu, 13 Jul 2023 07:52:51 +0000 (+0200) Subject: arch: Support enabling testing repositories with --repositories X-Git-Tag: v15~80^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F1674%2Fhead;p=thirdparty%2Fmkosi.git arch: Support enabling testing repositories with --repositories --- diff --git a/mkosi/config.py b/mkosi/config.py index 2bc181f37..b4ee85c91 100644 --- a/mkosi/config.py +++ b/mkosi/config.py @@ -1995,9 +1995,10 @@ def load_config(args: argparse.Namespace) -> MkosiConfig: if args.repositories and not ( is_dnf_distribution(args.distribution) or - is_apt_distribution(args.distribution) + is_apt_distribution(args.distribution) or + args.distribution == Distribution.arch ): - die("Sorry, the --repositories option is only supported on dnf and apt based distributions") + die("Sorry, the --repositories option is only supported on pacman, dnf and apt based distributions") if args.initrds: args.initrds = [p.absolute() for p in args.initrds] diff --git a/mkosi/distributions/arch.py b/mkosi/distributions/arch.py index 7f2cecdd2..e582d2f84 100644 --- a/mkosi/distributions/arch.py +++ b/mkosi/distributions/arch.py @@ -68,6 +68,14 @@ def setup_pacman(state: MkosiState) -> None: config.parent.mkdir(mode=0o755, exist_ok=True, parents=True) + repos = ["core"] + if not state.config.local_mirror: + repos += ["extra"] + + for repo in ("core-testing", "extra-testing"): + if repo in state.config.repositories: + repos += [repo] + with config.open("w") as f: f.write( dedent( @@ -75,19 +83,16 @@ def setup_pacman(state: MkosiState) -> None: [options] SigLevel = {sig_level} ParallelDownloads = 5 - - [core] - {server} """ ) ) - if not state.config.local_mirror: + for repo in repos: f.write( dedent( f"""\ - [extra] + [{repo}] {server} """ )