超級方便的AppImage 和管理器AppImageLauncher(安裝)

背景

一些小的工具性的軟件在ubuntu中安裝,讓我很麻煩,比如有的軟件雖然不常用,偶爾用一次,但安裝卻十分複雜,各種依賴,各種配置,甚至不支持ubuntu,例如QQ,新一些的qq需要安裝wine才能,一頓配置,編譯之後才能用,再比如上網的某個插件,文件不大,安裝起來一堆麻煩事情,本來只是想打開之後放在後臺,但是沒想到需要一頓編譯,還報了很多錯。費時費心費力。

AppImage

一直在想,就真的只能這麼麻煩麼?直到發現了AppImage 格式文件  [1],只需要把軟件的appImage格式文件下載下來,賦予可執行權限之後,雙擊就可以運行。

#只需要在你的AppImage文件所在路徑中,執行 chmod a+x 賦予可執行權限,之後雙擊即可運行,舒服的一批
sudo chmod a+x yourfile.AppImage

關於它的好處,再引用一段別人寫的[2]: 

多年以來,我們一直使用 DEB packages 來管理 Debian/Ubuntu的軟件包,使用 RPM 管理 Fedora/SUSE 的軟件包.

用戶使用這些包管理工具可以很方便的安裝軟件, 但是這些仍然滿足不了開發人員的需求. 開發人員不得不開發更多的工具. 這時AppImage來到了我們面前.

AppImage 使用通用的軟件格式,通過將整個軟件打包成AppImage,一個包包含了所有的功能. 並且幾乎可以在所有的linux發行版本中使用。

AppImage 不需要像傳統的那樣安裝。

通常我們安裝linux軟件將會在不同的目錄生成多個文件,並且需要root權限來對系統進行修改。

AppImage 不需要這麼做。事實上,AppImage 並不需要安裝。AppImage 是一個壓縮的鏡像文件,它包含所有運行所需要的依賴和庫文件。

你可以直接執行AppImage 文件不需要安裝。當你把AppImage 文件刪除,整個軟件也被刪除了。你可以把它當成windows系統中的那些免安裝的exe文件

下面會列出一些AppImage的特性或者優點

可以運行在各種平臺
不需要安裝,直接執行
不需要root權限,不需要修改系統文件
便攜性:可以在位置執行
App 只讀
卸載便利,只需要刪除AppImage文件即可
————————————————
版權聲明:本文爲CSDN博主「aboutmn」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/aboutmn/article/details/87254930

和deb的區別(摘錄另一個[3])

 Applmage某種程度上你可以理解爲windows某些軟件的“便攜版”。它的做法有點類似於docker鏡像,把軟件運行的所有依賴環境都打包在一起,包裝成一個Applmage,運行的時候會將打包到一起的內容釋放到/tmp/下運行,運行完畢之後通常會自動清理。

deb是debian系列傳統的打包方式,取自debian的前三個字母。deb包你可以認爲就是一個壓縮包,同時還包含了一個元數據部分,聲明瞭這個包的依賴。所以通過包管理系統就可以很方便的安裝deb以及相關的依賴項了。這也是debian系列簡化Linux軟件安裝方案做的巨大的貢獻。RHEL的yum+rpm的管理方式實際就是借鑑了apt+deb的方式。debian是第一個將包管理系統引入Linux系列的發行版。

deb包通常需要結合包管理器一起使用,安裝的時候會自動解決依賴。所以會出現不符合目標操作系統的安裝包混入搞壞依賴,甚至因爲卸載了底層依賴導致刪掉上層應用的現象。這也就是依賴地獄的問題。windows的安裝包通常都會將自己的運行環境一併打包進入安裝包,以規避依賴問題。缺點是安裝包通常很大,好處就是規避了依賴地獄。所以你可以認爲snap和flatpak借鑑了windows的安裝程序的設計,並且進行了加強,比如使用了內核提供的沙箱環境運行,這一點在windows上是原生不自帶的。

 AppImageLauncher

作用:AppImage文件雖然可以直接運行,但是不像其他的deb   apt  等獲得的軟件一樣,在系統菜單中顯示圖標,因爲它就像windows中免安裝所謂綠色版的exe一樣,有的不添加到註冊表之類的(個人理解),所以,只在運行的時候纔會和操作系統有關係,這就很麻煩;而且,我把 AppImage放到 /usr/local 文件夾下面,那麼每次都要打開這個文件夾,雙擊它纔可運行,這樣很不好使,我希望能夠像普通的軟件一樣,有系統圖標,可以固定在收藏夾欄中。

1.想要讓AppImage有圖標

2.想固定在收藏欄上

這就需要 AppImageLauncher了,我也直接引用別人的[4]:

使用 AppImageLauncher,這些就都是過去的問題。該程序可讓你輕鬆運行 AppImage 文件,而無需使其可執行。但它最有趣的特點是可以輕鬆地將 AppImage 與你的系統進行整合:AppImageLauncher 可以自動將 AppImage 程序快捷方式添加到桌面環境的程序啓動器/菜單(包括程序圖標和合適的說明)中。

這 裏有個例子,我想在 Ubuntu 上使用 Kdenlive,但我不想從倉庫中安裝它,因爲它有大量的 KDE 依賴,我不想把它們弄到我的 Gnome 系統中。因爲沒有它的 Flatpak 或 Snap 鏡像,我只能去下載了 Kdenlive 的 AppImage。

在沒有把下載的 Kdenline AppImage 變成可執行的情況下,我第一次雙擊它時(安裝好了 AppImageLauncher),AppImageLauncher 提供了兩個選項:

“Run once”或者“Integrate and run”。

點擊 “Integrate and run”,這個 AppImage 就被複制到 ~/.bin/ (家目錄中的隱藏文件夾)並添加到菜單中,然後啓動該程序。

要刪除它也很簡單,只要您使用的桌面環境支持桌面動作就行。例如,在 Gnome Shell 中,只需右鍵單擊“活動概覽”中的應用程序圖標,然後選擇“Remove from system”:

 這樣就很可以很方便的使用一些,工具性的東西了,由上文,這種方式AppImage還是無法完全替代deb  apt等方式的,不過也各有各的優勢。

安裝[4]

AppImageLauncher 支持 Ubuntu、 Debian、Netrunner 和 openSUSE。如果你使用 Ubuntu 18.04,請確保你下載的 deb 包的名字中有“bionic”,而其它的 deb 是用於舊一些的 Ubuntu 版本的。

https://github.com/TheAssassin/AppImageLauncher/releases

 

引用與參考

[1] https://appimage.org/   什麼是AppImage

[2] https://blog.csdn.net/aboutmn/article/details/87254930  什麼是AppImage

[3] https://bbs.deepin.org/forum.php?mod=viewthread&tid=178823   AppImage與deb區別(還有其他的對比,很詳細)

[4] https://www.imooc.com/article/30050  AppImageLauncher的使用方法(很好)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章