Debian

無法下載 arm64 機器的 gnome-core 依賴項

  • August 12, 2020

我想下載gnome-core軟體包依賴項以安裝在 debian 10 arm-64 設備上,所以我使用了這個命令:

sudo apt-cache depends  -i gnome-core:arm64 | awk '/Depends:/ {print $2}' | xargs  apt-get download

並得到這個錯誤:

E: Unable to locate package <adwaita-icon-theme:arm64>
E: Unable to locate package <fonts-cantarell:arm64>
E: Unable to locate package <sound-theme-freedesktop:arm64>
E: Unable to locate package <gnome-backgrounds:arm64>
E: Unable to locate package <gnome-session:arm64>
E: Unable to locate package <gnome-shell-extensions:arm64>
E: Unable to locate package <gnome-user-docs:arm64>
E: Unable to locate package <gsettings-desktop-schemas:arm64>
E: Unable to locate package <firefox:arm64>
E: Unable to locate package <chromium-browser:arm64>
E: Unable to locate package <system-config-printer-common:arm64>

arm64 架構之前使用啟用dpkg --add-architecture arm64 ,並且兩者maincontrib儲存庫都啟用了但是,我這樣做了apt updateapt-get update然後我重試了,但沒有發生任何更改並得到相同的錯誤。

我正在使用 debian 10 buster x86-64 WSL 機器。

有什麼問題,我該如何下載該依賴項?

apt-cache的輸出不能這樣解析;你最終會得到

...
 Depends: <adwaita-icon-theme:arm64>
   adwaita-icon-theme
...

並且您正在提取<adwaita-icon-theme:arm64>的不是有效的包名稱。

’ 輸出中的尖括號apt-cache depends表示解析器沒有找到要安裝的版本,以下幾行顯示應該安裝的版本 - 因為adwaita-icon-theme,發生這種情況是因為它被標記為“Multi-Arch:foreign”,這允許本機版本滿足依賴。

除此之外,您還沒有解析替代依賴項,例如

|Depends: firefox-esr:arm64
|Depends: firefox:arm64
|Depends: chromium:arm64
|Depends: <chromium-browser:arm64>

您只需要安裝其中一個,而不是全部。

apt-cache所有這些都使得建構一個包列表來為外國架構下載真的很困難。你最好使用外國最小的 chroot 和apt-get install --download-only

  • 安裝mmdebstrap
sudo apt install mmdebstrap qemu-user qemu-user-static binfmt-support libfakeroot:arm64 libfakechroot:arm64
  • 設置預設arm64chroot:
sudo mmdebstrap --architectures=arm64 buster gnome-core-arm64
  • 進入chroot:
sudo chroot gnome-core-arm64
  • 下載gnome-core依賴項:
apt-get update
apt-get install --download-only gnome-core
  • 退出 chroot,你會在gnome-core-arm64/var/cache/apt/archives.

引用自:https://unix.stackexchange.com/questions/603883