计算机程序通常由一组小文件链接起来构成。虽然在安装的时候指明了路径(或者根本没有这一步),但注册表、资料存储等东西常常很难去一一寻址。虽然使用的时候只需要点击彩色的图标或者输入对应的指令,但是利用类似“容器”的概念来管理应用程序,除了能让安装和卸载变得方便,还能更容易地管理版本库等软件环境。
所以“容器”是什么呢?它是指一种对应用程序进行隔离和整合的方法,在一个个“容器”里分别安装不同的应用程序和其所需的环境,最终将实现互不干扰:内存不会相互抢占、库不会互相占用和冲突、安装和删除也都能非常干净。在 Linux 系统中,Flatpak 就是一个这样的跨发行版、无守护进程(daemon-less)、分散的应用程序分发系统。
安装 Flatpak
如果你没有安装过它,那么可以通过包管理器来安装:
在 Fedora, Mageia 以及类似的发行版:
$ sudo dnf install flatpak
在 Elementary、Mint 以及其他基于 Debian 的发行版:
$ sudo apt install flatpak
也可以通过 SlackBuilds 来获取它。
安装完 Flatpak 程序后,还需要安装对应的插件,这可以让你摆脱命令行来肆意安装应用:
$ sudo apt install gnome-software-plugin-flatpak
选择一个 Flatpak 存储库
就像新安装的发行版总要换一个下载源一样,Flatpat 也需要添加一个指定的分发中心。和 Flatpat 本身的开源属性相符,它是一个去中心化的系统,所有人都可以托管自己的软件存储库来让别人下载。但无论如何,Flathub 都是 Flatpak 里最大和最受欢迎的存储库。添加 Flathub 库的话,可以参照他们的官方教程,或者下载 Flatpakrepo文件来同步。不用担心,Flatpak 存储库的数量是不受限制的,你可以添加任意个喜欢的存储库。
在图形化界面中使用 Flatpak
在把 Flatpak 存储库添加进软件中心后,就可以在图形化界面里轻松地查看可用的程序们了。
⬇网页版⬇
只需要简单地单击它们的图标,所有想看的应用介绍都在里面。单击“安装”就可以获取到它们了。
在终端中使用 Flatpak
如果使用终端工作的话,Flatpak 就像一个专用的包管理器。可以用类似如下的 flatpak search 命令来检索想要的应用:
$ flatpak search paint
Name Description Application ID
CorePaint A simple painting tool org.cubocore.CorePaint
Pinta Edit images and paint digitally com.github.PintaProject.Pinta
Glimpse Create images and edit photographs org.glimpse_editor.Glimpse
Tux Paint A drawing program for children org.tuxpaint.Tuxpaint
Krita Digital Painting, Creative Freedom org.kde.krita
选择一个喜欢的安装:
$ flatpak install krita
让安装应用变得更简单
只要灵活选择 Flatpak 的库,你可以下载到软件的各种版本。通过库与库之间的分割,冲突也会不复存在。如果你同时使用多个开发版,也可以跨发行版使用 Flatpak 和同一个托管库来保持版本同步。
参考资料:
[…] Flatpak […]
[…] Flatpak […]