開源軟體Shell

嘗試在 Linux 中使用 Flatpak 來安裝應用吧

計算機程序通常由一組小文件鏈接起來構成。雖然在安裝的時候指明了路徑(或者根本沒有這一步),但註冊表、資料存儲等東西常常很難去一一定址。雖然使用的時候只需要點擊彩色的圖標或者輸入對應的指令,但是利用類似「容器」的概念來管理應用程序,除了能讓安裝和卸載變得方便,還能更容易地管理版本庫等軟體環境。

所以「容器」是什麼呢?它是指一種對應用程序進行隔離和整合的方法,在一個個「容器」里分別安裝不同的應用程序和其所需的環境,最終將實現互不干擾:內存不會相互搶佔、庫不會互相佔用和衝突、安裝和刪除也都能非常乾淨。在 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 和同一個託管庫來保持版本同步。


參考資料:

Install apps on Linux with Flatpak

Flatpak官網

Flathub官網

對這篇文章感覺如何?

太棒了
1
不錯
2
愛死了
1
不太好
0
感覺很糟
1

You may also like

2 Comments

Leave a reply

您的電子郵箱地址不會被公開。 必填項已用 * 標註

此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

More in:開源軟體

開源軟體

嵌入式 Linux 的瑞士軍刀:BusyBox

上期文章中,筆者向各位介紹了 musl,一個 Glibc 的替代方案,它的主要優勢體現在更加整潔的代碼、更小的二進位體積和更優秀的靜態鏈接支持。而本期文章的主角:BusyBox 則是 GNU Core […]