快轉到主要內容

在Arch Linux ARM系統安裝AUR的x86架構套件

分類   Linux系統 Linux使用教巧
標籤   Arch User Repository Arch Linux
🗓️ 民國113年 甲辰年
✍ 切換正體/簡體字

Arch Linux「官方」開發組僅支援x86架構,Arch Linux ARM是由另外一群開發者維護的專案。

你知道Arch Linux ARM跟仍然可以沿用AUR的套件嗎?只要 安裝yay,後面安裝的指令就一模一樣了。

但,不是所有軟體都支援ARM架構。

Arch Linux「官方」開發組僅支援x86架構,Arch Linux ARM是由另外一群開發者維護的專案。

鑑於ARM版的用戶數量比x86版少很多,有人寫PKGBUILD的時候就會限定x86架構安裝,忘記ARM的存在。於是乎PKGBUILD會下載x86版本的程式,yay會跳出xxx並未提供aarch64架構使用xxx is not available for the 'aarch64' architecture的訊息。再加上軟體安裝需要跑sha256驗證,即使你強制用yay安裝它也無法繼續。

這時你就要自己改PKGBUILD的內容,手動指定下載的檔案,嘗試讓Arch Linux x86架構的套件能裝在Arch Linux ARM上。

  1. 我們得先查明,該軟體是否有真的有釋出ARM架構的套件。以Google Chrome為例子,官方到現在都沒有釋出ARM版,所以無從下手。我找了個功能類似的替代品: Thorium Browser

  2. AUR上有thorium-browser-bin套件,下載PKGBUILD

git clone https://aur.archlinux.org/thorium-browser-bin.git

# 如果你想用yay
yay -G thorium-browser-bin

cd thorium-browser-bin
  1. 觀察PKGBUILD可以得知它是從Github下載程式二進位檔的,並且有sha256校驗碼

  2. 手動下載ARM版的Thorium Browser檔案,為其產生校驗碼

wget https://github.com/Alex313031/Thorium-Raspi/releases/download/M119.0.6045.214/thorium-browser_119.0.6045.214_arm64.deb

sha256sum thorium-browser_119.0.6045.214_arm64.deb
  1. 編輯PKGBUILD,修正版本號碼
pkgver=119.0.6045.214
  1. 再加入aarc64支援
arch=('x86_64', 'aarc64')
  1. 將下載網址換掉
 _dl_url="https://github.com/Alex313031/Thorium-Raspi/releases/download/M${_pkgver:?}"
  _dl_filename="${_pkgname}_${_pkgver:?}_arm64.deb"
  1. 將校驗碼換掉
sha256sums=(
    'SKIP'
    '校驗碼'
  )
  1. 如此一來就可以安裝修改過的AUR套件了
makepkg -si

# 如果你要用yay
yay -Bi "PKGBUILD所在目錄"
  1. 萬一該軟體依賴AUR才有的套件,那麼就先把他們裝起來
makepkg --asdeps "套件" "套件" "套件"

# 如果你要用yay
yay -S --asdeps "套件" "套件" "套件"

相關文章

什麼是AUR套件庫?如何安裝Arch Linux的AUR軟體?
分類   Linux系統 Linux使用教巧
標籤   Arch User Repository Arch Linux
Distrobox使用例探討:在Ubuntu安裝Arch Linux AUR的套件
分類   Linux系統 Linux使用技巧
標籤   Distrobox Arch Linux Ubuntu Arch User Repository
比較Arch Linux核心差異:linux, linux-zen, linux-lts, linux-hardened
分類   Linux系統 Linux使用技巧
標籤   Arch Linux Linux Kernel

留言板

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。要討論程式碼請用Giscus,匿名討論請用Disqus。

這是Giscus留言板,需要Github帳號才能留言。支援markdown語法,若要上傳圖片請貼Imgur或Postimages。您的留言會在Github Discussions向所有人公開。

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。為防止垃圾內容,有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。若要上傳圖片請善用圖床網站。