Flatpak

跳转到:导航搜索
Flatpak

基于 OSTree 的应用程序包管理

openSUSE 下载


许可证:LGPL-2.1
网站https://flatpak.org/

概述

Flatpak 是一个免费且开源的软件包管理系统,用于在 Linux 上构建和分发桌面应用程序,独立于宿主系统,在沙盒环境中运行,这有助于解决依赖关系问题,并确保不同发行版的用户拥有相同的体验。

安装

用户 $ sudo zypper install flatpak

设置

用户级别设置(推荐)

添加用户特定的 Flathub 仓库

用户 $ flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
用户 $ flatpak update

使用 KDE DiscoverGnome Software 自动更新 flatpak

KDE DiscoverGnome Software 这样的解决方案可以自动更新 flatpak 应用程序,但如果您不使用这些应用程序,则一个有效的选项是创建一个 systemd unittimer 来自动为您处理此任务。

用户 $ systemctl --user edit --full --force flatpak-user-update.service

添加以下内容

[Unit]
Description=Flatpak Automatic Update
Documentation=man:flatpak(1)
Wants=network-online.target
After=network-online.target

[Service]
Type=oneshot
ExecStart=/usr/bin/flatpak --user uninstall --unused -y --noninteractive ; /usr/bin/flatpak --user update -y --noninteractive ; /usr/bin/flatpak --user repair

然后创建定时器

用户 $ systemctl --user edit --full --force flatpak-user-update.timer

添加以下内容

[Unit]
Description=Flatpak Automatic Update Trigger
Documentation=man:flatpak(1)

[Timer]
RandomizedDelaySec=10m
OnBootSec=2m
OnCalendar=*-*-* 4:00:00
Persistent=true

[Install]
WantedBy=timers.target

要启用该服务,请重新加载 systemd 单元并启用 定时器

用户 $ systemctl --user daemon-reload

然后

用户 $ systemctl --user enable --now flatpak-user-update.timer

系统级别设置

添加仓库

添加系统范围的 Flathub 仓库

用户 $ flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
用户 $ flatpak update

使用 DiscoverGnome Software 自动更新 flatpak

DiscoverGnome Software 这样的解决方案可以自动更新 flatpak 应用程序,但如果您不使用这些应用程序,则一个有效的选项是创建一个 systemd unittimer 来自动为您处理此任务。

手动设置 systemd unittimer 以进行自动设置

要自动更新 flatpaks,请为整个系统设置创建 systemd unit 服务 sudo

用户 $ sudo systemctl edit --full --force flatpak-system-update.service

添加以下内容

[Unit]
Description=Flatpak Automatic Update
Documentation=man:flatpak(1)
Wants=network-online.target
After=network-online.target

[Service]
Type=oneshot
ExecStart=/usr/bin/flatpak --system uninstall --unused -y --noninteractive ; /usr/bin/flatpak --system update -y --noninteractive ; /usr/bin/flatpak --system repair

然后创建一个定时器

用户 $ sudo systemctl edit --full --force flatpak-system-update.timer

添加以下内容

[Unit]
Description=Flatpak Automatic Update Trigger
Documentation=man:flatpak(1)

[Timer]
RandomizedDelaySec=10m
OnBootSec=2m
OnCalendar=*-*-* 4:00:00
Persistent=true

[Install]
WantedBy=timers.target

要启用该服务,请重新加载 systemd 单元并启用 定时器

用户 $ sudo systemctl daemon-reload && sudo systemctl enable --now flatpak-system-update.timer

用法

删除仓库

用户 $ flatpak remote-delete <repo>

列出仓库

要列出所有添加的仓库,请使用此命令

flatpak remotes

安装新应用

要安装新的 flatpak 应用,请使用以下命令

flatpak install <name>

或指定仓库

flatpak install <repo> <name>

或用户特定

flatpak install --user <repo> <name>

卸载应用

flatpak uninstall <name>

查找应用

配置仓库后

flatpak search <name>

更新特定应用

flatpak update <name>

列出已安装的应用

flatpak list

参见

相关文章

外部链接