
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>
すべてをインストールする必要はありません。そのうちの 1 つだけをインストールしてください。
これらすべてにより、apt-cache
外部のアーキテクチャ用にダウンロードするパッケージのリストを作成するのが非常に困難になります。外部の最小限の chroot を使用する方がよいでしょうapt-get install --download-only
。
インストール
mmdebstrap
:sudo apt install mmdebstrap qemu-user qemu-user-static binfmt-support libfakeroot:arm64 libfakechroot:arm64
デフォルトの
arm64
chroot を設定します。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
。