From: Daan De Meyer Date: Wed, 15 May 2024 05:39:21 +0000 (+0200) Subject: Always refresh repository metadata if CacheOnly=never X-Git-Tag: v23.1~53 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a4e02f651b6c3fdf5317fd7c36c25c539a9bfd55;p=thirdparty%2Fmkosi.git Always refresh repository metadata if CacheOnly=never Fixes #2707 --- diff --git a/mkosi/installer/dnf.py b/mkosi/installer/dnf.py index cf2599f75..848820903 100644 --- a/mkosi/installer/dnf.py +++ b/mkosi/installer/dnf.py @@ -198,7 +198,7 @@ class Dnf(PackageManager): context, "makecache", arguments=[ - *(["--refresh"] if context.args.force > 1 else []), + *(["--refresh"] if context.args.force > 1 or context.config.cacheonly == Cacheonly.never else []), *(["--setopt=cacheonly=none"] if cls.executable(context.config) == "dnf5" else []), *options, ], diff --git a/mkosi/installer/pacman.py b/mkosi/installer/pacman.py index 195dea8af..e3f2faa94 100644 --- a/mkosi/installer/pacman.py +++ b/mkosi/installer/pacman.py @@ -6,7 +6,7 @@ from collections.abc import Iterable, Sequence from pathlib import Path from typing import NamedTuple -from mkosi.config import Config +from mkosi.config import Cacheonly, Config from mkosi.context import Context from mkosi.installer import PackageManager from mkosi.mounts import finalize_source_mounts @@ -180,7 +180,13 @@ class Pacman(PackageManager): @classmethod def sync(cls, context: Context) -> None: - cls.invoke(context, "--sync", ["--refresh"] + (["--refresh"] if context.args.force > 1 else [])) + cls.invoke( + context, + "--sync", + ["--refresh"] + ( + ["--refresh"] if context.args.force > 1 or context.config.cacheonly == Cacheonly.never else [] + ) + ) @classmethod def createrepo(cls, context: Context) -> None: diff --git a/mkosi/installer/zypper.py b/mkosi/installer/zypper.py index 73d052df8..2d2ecaed4 100644 --- a/mkosi/installer/zypper.py +++ b/mkosi/installer/zypper.py @@ -5,7 +5,7 @@ import textwrap from collections.abc import Iterable, Sequence from pathlib import Path -from mkosi.config import Config, yes_no +from mkosi.config import Cacheonly, Config, yes_no from mkosi.context import Context from mkosi.installer import PackageManager from mkosi.installer.rpm import RpmRepository, rpm_cmd @@ -144,7 +144,11 @@ class Zypper(PackageManager): @classmethod def sync(cls, context: Context) -> None: - cls.invoke(context, "refresh", ["--force"] if context.args.force > 1 else []) + cls.invoke( + context, + "refresh", + ["--force"] if context.args.force > 1 or context.config.cacheonly == Cacheonly.never else [] + ) @classmethod def createrepo(cls, context: Context) -> None: