from mkosi.log import die
from mkosi.mounts import finalize_certificate_mounts
from mkosi.run import run
+from mkosi.versioncomp import GenericVersion
class Installer(DistributionInstaller, distribution=Distribution.opensuse):
enabled=False,
)
- if context.config.release in ("current", "stable", "leap"):
- url = join_mirror(mirror, f"{subdir}/update/openSUSE-current")
- yield RpmRepository(
- id="oss-update",
- url=f"baseurl={url}",
- gpgurls=fetch_gpgurls(context, url) if not zypper else (),
- )
+ if (
+ context.config.release in ("current", "stable", "leap")
+ or GenericVersion(context.config.release) >= 16
+ ):
+ subdir += f"distribution/{release}/repo"
+ else:
+ subdir += f"update/{release}"
- url = join_mirror(mirror, f"{subdir}/update/openSUSE-non-oss-current")
+ for repo in ("oss", "non-oss"):
+ url = join_mirror(mirror, f"{subdir}/{repo}")
yield RpmRepository(
- id="non-oss-update",
+ id=f"{repo}-update",
url=f"baseurl={url}",
gpgurls=fetch_gpgurls(context, url) if not zypper else (),
- enabled=False,
+ enabled=repo == "oss",
)
- else:
- for repo in ("oss", "non-oss"):
- url = join_mirror(mirror, f"{subdir}/update/{release}/{repo}")
- yield RpmRepository(
- id=f"{repo}-update",
- url=f"baseurl={url}",
- gpgurls=fetch_gpgurls(context, url) if not zypper else (),
- enabled=repo == "oss",
- )
@classmethod
def architecture(cls, arch: Architecture) -> str: