Arch-Linux
AUR 上的 pkg、pkg-bin 和 pkg-git 有什麼區別?
例如,有
https://aur.archlinux.org/packages/github-desktop/,
https://aur.archlinux.org/packages/github-desktop-bin/和
https://aur.archlinux.org/packages/github-desktop-git/.
我查看了 pkgbuilds,發現包之間沒有容易辨識的差異。這不僅僅是一個包,而是其中的許多包。他們之間有什麼區別?我應該安裝哪一個?
- 普通包是從儲存庫的穩定版本或穩定的 git 標籤建構的。該程序在使用者機器中編譯然後安裝。這需要時間。
- 帶有
-bin
後綴的包已經由上游維護者建構並且在某處可用。因此,使用者不必在他們的機器上編譯包。該PKGBUILD
腳本會下載、提取並安裝文件。一些專有軟體以這種格式發布,而原始碼不可用。- 帶有後綴的軟體包
-git
是從 git 儲存庫的最新送出建構的,無論它是否穩定。這樣使用者可以獲得最新的修復或更新檔。這也在使用者機器中編譯,然後安裝。AUR 包之間的區別可以從函式中對應的
PKGBUILD
文件(類似 shell 腳本)中輕鬆理解source()
。這是一個例子:
- 對於
github-desktop
源是一個穩定的 git發布標籤:pkgver=x.y.z _pkgver="${pkgver}-linux1" gitname="release-${_pkgver}" https://github.com/shiftkey/desktop.git#tag=${gitname}
- 對於
github-desktop-bin
源是一個已經打包好的Debian 軟體包:pkgver=x.y.z _pkgver="${pkgver}-linux1" gitname="release-${_pkgver}" https://github.com/shiftkey/desktop/releases/download/${gitname}/GitHubDesktop-linux-${_pkgver}.deb
- 對於
github-desktop-git
源是最新的主分支:https://github.com/shiftkey/desktop.git
進一步閱讀: