Flatpak
基于 OSTree 的应用包管理
软件包包名:flatpak
发行商: openSUSE
开发者: Flatpak Community
许可证: LGPL-2.1
网站: https://flatpak.org/
简介
Flatpak 是一款用于 Linux 软件部署和软件包管理的工具。它为软件提供了一个沙箱环境,在这个环境中,用户可以在与系统其他部分隔离的情况下运行应用软件。
openSUSE 已经预置了 Flatpak 。
部署 Flatpak
- 如果你在使用
flatpak
的时候遇到网络问题(下载缓慢、无法刷新等问题),你可以阅读SDB:配置代理获得更多的帮助; - 有关 Flathub 国内镜像,详见 上海交通大学镜像站服务 - flathub;
- Flatpak 支持
http_proxy
之类的标准环境变量;
安装 Flatpak :
sudo zypper in flatpak
添加 Flatpak 仓库:
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
加入新用户组:
sudo usermod -aG flatpak $USER
然后注销并重新登陆系统。
基本操作
检索软件:
flatpak search [软件名称] #如: flatpak search atom
安装软件:
flatpak install [软件名称] #如: flatpak install Atom
运行软件:
flatpak run [应用 ID] #如: flatpak run io.atom.Atom
查看已安装的软件:
flatpak list
卸载软件:
flatpak uninstall [软件名称]
卸载全部软件:
flatpak uninstall --all
如果你在使用 flatpak search
命令时卡住了,不妨使用 flatpak install
命令让 flatpak 重新检索软件,它会自动列举匹配关键字的软件包。
或者你可以到 FlatHub 直接在线检索软件,并点击 Install 按钮旁的倒角按钮,获取安装与运行的命令。
per-user & per-system
Flatpak 命令可以在系统范围内运行,也可以在每个用户上运行。系统范围内安装的应用程序和运行时可供系统上的所有用户使用。每个用户安装的应用程序和运行时仅可供安装它们的用户使用。
同样的原则也适用于存储库——在系统范围内添加的存储库可供所有用户使用,而每用户存储库只能由特定用户使用。Flatpak 命令默认在系统范围内运行。如果您安装的应用程序用于日常使用,建议您坚持使用此默认行为。
你可以使用 --user
控制 flatpak 将软件安装至用户目录,这样安装或删除应用时就无需 root 权限。例如:
flatpak --user install flathub io.github.xiaoyifang.goldendict_ng
此时,flatpak 的应用程序和库文件会被放置到 ~/.local/share/flatpak
中。如果你没有添加 --user
标志,那么 flatpak 会将应用保存至 /var/lib/flatpak
中。
不论如何,你的 flatpak 应用数据和配置文件都会保存在 ~/.var/app 中。
设置标志和别名
你可以参考 SJTU Flatpak 镜像帮助为 flatpak 配置镜像站(flathub 经常遭到干扰,在国内时常无法正常使用)。
或者,你可以将以下文本写入 ~/.bashrc
中,这样可以缩短所需输入的命令长度:
alias flatpak="proxychains4 flatpak --user" #对 flatpak 使用代理,并增加 --user 标签
或者:
alias flatpak="proxychains4 flatpak" #对 flatpak 使用代理
然后运行:
source ~/.bashrc
相关内容另见:
其他
Flatpak 用户手册:
flatpak --help
Flathub 仓库:https://flathub.org
flatpak 文档: https://docs.flatpak.org/en/latest/index.html
GNOME nightly:
flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo
- 一些国产软件:
WPS: com.wps.Office QQ: com.qq.QQ 网易云音乐: com.netease.CloudMusic QQ Music: com.qq.QQmusic Icalingua++: io.github.Icalingua.Icalingua Wemeet: com.tencent.wemeet