не могу загрузить зависимости gnome-core для машины arm64

не могу загрузить зависимости gnome-core для машины arm64

Я хочу загрузить 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 и оба mainрепозитория contribбыли включены. Однако я сделал это, apt updateа apt-get updateзатем повторил попытку, но никаких изменений не произошло, и возникли те же ошибки.

Я использую машину Debian 10 Buster x86-64 WSL.

в чем проблема и как мне загрузить эти зависимости?

решение1

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.

Связанный контент