From: Daan De Meyer Date: Thu, 15 Feb 2024 14:16:24 +0000 (+0100) Subject: Add mkosi-reinstall X-Git-Tag: v21~51 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1983a960c342ee305ebcf422dae3183e22fcb53e;p=thirdparty%2Fmkosi.git Add mkosi-reinstall --- diff --git a/mkosi/installer/apt.py b/mkosi/installer/apt.py index 8dbd33020..feb9a24e0 100644 --- a/mkosi/installer/apt.py +++ b/mkosi/installer/apt.py @@ -62,9 +62,10 @@ class Apt(PackageManager): "apt-sortpkgs", ) } | { - "mkosi-install": apivfs_cmd(context.root) + cls.cmd(context, "get") + ["install"], - "mkosi-upgrade": apivfs_cmd(context.root) + cls.cmd(context, "get") + ["upgrade"], - "mkosi-remove" : apivfs_cmd(context.root) + cls.cmd(context, "get") + ["purge"], + "mkosi-install" : apivfs_cmd(context.root) + cls.cmd(context, "get") + ["install"], + "mkosi-upgrade" : apivfs_cmd(context.root) + cls.cmd(context, "get") + ["upgrade"], + "mkosi-remove" : apivfs_cmd(context.root) + cls.cmd(context, "get") + ["purge"], + "mkosi-reinstall": apivfs_cmd(context.root) + cls.cmd(context, "get") + ["install", "--reinstall"], } @classmethod diff --git a/mkosi/installer/dnf.py b/mkosi/installer/dnf.py index 910e480a0..9058111aa 100644 --- a/mkosi/installer/dnf.py +++ b/mkosi/installer/dnf.py @@ -41,9 +41,10 @@ class Dnf(PackageManager): return { "dnf": apivfs_cmd(context.root) + cls.cmd(context), "rpm": apivfs_cmd(context.root) + rpm_cmd(context), - "mkosi-install": apivfs_cmd(context.root) + cls.cmd(context) + ["install"], - "mkosi-upgrade": apivfs_cmd(context.root) + cls.cmd(context) + ["upgrade"], - "mkosi-remove" : apivfs_cmd(context.root) + cls.cmd(context) + ["remove"], + "mkosi-install" : apivfs_cmd(context.root) + cls.cmd(context) + ["install"], + "mkosi-upgrade" : apivfs_cmd(context.root) + cls.cmd(context) + ["upgrade"], + "mkosi-remove" : apivfs_cmd(context.root) + cls.cmd(context) + ["remove"], + "mkosi-reinstall": apivfs_cmd(context.root) + cls.cmd(context) + ["reinstall"], } @classmethod diff --git a/mkosi/installer/pacman.py b/mkosi/installer/pacman.py index 7df0fbbf9..dbdad5d95 100644 --- a/mkosi/installer/pacman.py +++ b/mkosi/installer/pacman.py @@ -37,9 +37,10 @@ class Pacman(PackageManager): def scripts(cls, context: Context) -> dict[str, list[PathString]]: return { "pacman": apivfs_cmd(context.root) + cls.cmd(context), - "mkosi-install": apivfs_cmd(context.root) + cls.cmd(context) + ["--sync", "--needed"], - "mkosi-upgrade": apivfs_cmd(context.root) + cls.cmd(context) + ["--sync", "--sysupgrade", "--needed"], - "mkosi-remove" : apivfs_cmd(context.root) + cls.cmd(context) + ["--remove", "--recursive", "--nosave"], + "mkosi-install" : apivfs_cmd(context.root) + cls.cmd(context) + ["--sync", "--needed"], + "mkosi-upgrade" : apivfs_cmd(context.root) + cls.cmd(context) + ["--sync", "--sysupgrade", "--needed"], + "mkosi-remove" : apivfs_cmd(context.root) + cls.cmd(context) + ["--remove", "--recursive", "--nosave"], + "mkosi-reinstall": apivfs_cmd(context.root) + cls.cmd(context) + ["--sync"], } @classmethod diff --git a/mkosi/installer/zypper.py b/mkosi/installer/zypper.py index 7bd43a022..f63286637 100644 --- a/mkosi/installer/zypper.py +++ b/mkosi/installer/zypper.py @@ -39,9 +39,10 @@ class Zypper(PackageManager): return { "zypper": apivfs_cmd(context.root) + cls.cmd(context), "rpm" : apivfs_cmd(context.root) + rpm_cmd(context), - "mkosi-install": apivfs_cmd(context.root) + cls.cmd(context) + install, - "mkosi-upgrade": apivfs_cmd(context.root) + cls.cmd(context) + ["update"], - "mkosi-remove" : apivfs_cmd(context.root) + cls.cmd(context) + ["remove", "--clean-deps"], + "mkosi-install" : apivfs_cmd(context.root) + cls.cmd(context) + install, + "mkosi-upgrade" : apivfs_cmd(context.root) + cls.cmd(context) + ["update"], + "mkosi-remove" : apivfs_cmd(context.root) + cls.cmd(context) + ["remove", "--clean-deps"], + "mkosi-reinstall": apivfs_cmd(context.root) + cls.cmd(context) + install + ["--force"], } @classmethod diff --git a/mkosi/resources/mkosi.md b/mkosi/resources/mkosi.md index 4197ba87c..5dca296ac 100644 --- a/mkosi/resources/mkosi.md +++ b/mkosi/resources/mkosi.md @@ -1988,9 +1988,9 @@ available via `$PATH` to simplify common usecases. the host system. This means that from a script, you can do e.g. `dnf install vim` to install vim into the image. - Additionally, `mkosi-install`, `mkosi-upgrade` and `mkosi-remove` will - invoke the corresponding operation of the package manager being used - to built the image. + Additionally, `mkosi-install`, `mkosi-reinstall`, `mkosi-upgrade` and + `mkosi-remove` will invoke the corresponding operation of the package + manager being used to built the image. * `mkosi-as-caller`: This script uses `setpriv` to switch from the user `root` in the user namespace used for various build steps