如何在 Ubuntu 20.04 上使用 Flatpak 安装以前版本的 Gimp?

如何在 Ubuntu 20.04 上使用 Flatpak 安装以前版本的 Gimp?

我使用的是原装的 Ubuntu 20.04.2,并且我设法使用 Flatpak 安装了最新的 Gimp:当时是 2.10.24 版本。

然而,2.10 版本中存在一些问题我似乎无法解决。

因此,我想安装 Gimp 2.8。

我知道旧版 Gimp 可能也依赖于旧版 Python 版本,因此使用 Flatpak 安装整个版本似乎很方便,因为它将是独立的(与操作系统隔离)并且可以使用它自己的(旧版)Python 版本而没有任何复杂性。

但我似乎无法找到如何使用 Flatpak 列出当前支持的 Gimp 软件包版本,更不用说安装它了。

所以请问:我如何才能查看目前哪些 Gimp 版本(除最新版本之外)可以使用 Flatpak 安装,以及如何安装特定版本?

(此外,我已经使用 Flatpak 安装了另一个(更新的) Gimp 版本,这会使事情变得复杂吗?那么,我可以并行使用两个版本吗,还是必须先删除较新的版本才能安装旧版本?)


更新:

我已遵循@wizardpurple 的回答,并发现以下内容:

所以现在我运行了命令:

$ sudo flatpak update --commit=19dcc22b60e69eaaf740d4311021ed55b7e2537d org.gimp.GIMP

但它说:

Looking for updates…

        ID                                        Branch     Op     Remote      Download
 1.     org.freedesktop.Platform.GL.default       20.08      u      flathub     < 100.8 MB
 2.     org.freedesktop.Platform.VAAPI.Intel      20.08      u      flathub      < 11.6 MB
 3.     org.gnome.Platform.Locale                 40         u      flathub     < 333.7 MB (partial)
 4.     org.gtk.Gtk3theme.Yaru-light              3.22       u      flathub     < 203.4 kB
 5.     org.gnome.Platform                        40         u      flathub     < 362.6 MB
 6.     org.gimp.GIMP                             stable     u      flathub     < 117.2 MB

Proceed with these changes to the system installation? [Y/n]:

这些似乎是 Gimp flatpak 的依赖项。显然,这个较旧的 Gimp 需要它们?我已经安装了它们,因为 Gimp 2.10.24 需要它们;这些/其中一些也会降级吗?

我担心的是,虽然这个 flatpak 生态系统确实与主操作系统隔离,但似乎内部它仍然保留了一些依赖关系。所以我不知道降级 Gimp 是否会破坏这个 flatpak 生态系统...


更新 2:

我已经运行了该flatpak update --commit命令,但它死机了,如下所示:

首先,它毫无问题地检查了所有依赖项(尽管它始终为每个依赖项下载较少的数据,因为下载大小是在前面指示的),然后当它到达 Gimp 时,作为最后一项,它进行如下操作:

OSTree:ERROR:src/libostree/ostree-core.c:1432:ostree_checksum_inplace_to_bytes: assertion failed: (checksum[j])
Bail out! OSTree:ERROR:src/libostree/ostree-core.c:1432:ostree_checksum_inplace_to_bytes: assertion failed: (checksum[j])
Aborted

然后操作系统出现“检测到系统程序问题”对话框。

我想我可以在 Github repo 上提交一个问题。

答案1

已编辑并修正信息。部分内容已重写以提高清晰度。

概括

在 Ubuntu 20.04 上运行 GIMP 2.8 最简单的方法似乎是在 Ubuntu 18.04 VM 中运行它(GNOME Boxes 很方便)并通过官方存储库安装它。可能可以选择尝试构建较旧的 flatpak...但是,GIMP 是一款功能强大的软件,构建 2-3 年前的 flatpak 很可能会带来一系列麻烦。

安装旧版本的 flatpaks

您可以通过指定目标的特定提交来安装旧版本的 flatpak。可以使用命令找到可用的提交remote-info。您需要已安装 flatpak 才能使用此功能。由于您正在执行降级,因此旧版本将取代新版本。

结果remote-info并非完整的历史,因为似乎对保留的版本有一个截止点。由于使用 flatpak 是为了方便开发人员推送最新版本的软件,因此在存储空间上保留所有内容并不容易。

# examine remote
flatpak remote-info --log flathub org.gimp.GIMP

--snip--

    Commit: c53c42d04e88c0b0c416d5b4d3aa7600d1cdbdcd36d051b1af5c4ae980e29bb2
   Subject: Build Little-CMS 2.12 ourselves. (13d146e6)
      Date: 2021-03-29 16:33:51 +0000

--snip--

# install specific commit
# root privileges required for system  
flatpak update --commit=c53c42d04e88c0b0c416d5b4d3aa7600d1cdbdcd36d051b1af5c4ae980e29bb2 org.gimp.GIMP

# to prevent future updates, you can mask the flatpak
flatpak mask org.gimp.GIMP

命令中的提交flatpak remote-info --log不能像我之前想的那样被 GitHub 中的提交所替代。上例中的输出引用了 GitHub 提交,(13d146e6)但这些提交并不是用于在版本之间移动的提交。

扁平包装技巧和窍门

“可能”运行多个版本

如果您想要最新的 gimp 和输出中可用的旧版本remote-info,您可以尝试将一个安装为系统包,将另一个安装为用户包。这可能不是最优雅的方法,但它应该有效。

flatpak install flathub org.gimp.GIMP # system/default

# user method also requires adding the flathub repo to the user repos
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install --user flathub org.gimp.GIMP # user

相关内容