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
。