I have a custom Linux distro built with Yocto/Poky on branch thud. I'm using opkg as software to manage my packages updates on my embedded systems. I have hundreds of systems running and wanted to upgrade an important package on them (my-custom-package
). On the vast majority of them, everything went fine but on 4 systems I'm facing these errors :
root@hostname:~# opkg -v
opkg version 0.3.6 (libsolv 0.6.35)
root@hostname:~# opkg upgrade my-custom-package -V 2
opkg_conf_parse_file: Loading conf file /etc/opkg/arch.conf.
opkg_conf_parse_file: Supported arch all priority (1)
opkg_conf_parse_file: Supported arch any priority (6)
opkg_conf_parse_file: Supported arch noarch priority (11)
opkg_conf_parse_file: Supported arch armv5hf-vfp priority (16)
opkg_conf_parse_file: Supported arch armv5thf-vfp priority (21)
opkg_conf_parse_file: Supported arch armv5ehf-vfp priority (26)
opkg_conf_parse_file: Supported arch armv5tehf-vfp priority (31)
opkg_conf_parse_file: Supported arch armv6hf-vfp priority (36)
opkg_conf_parse_file: Supported arch armv6thf-vfp priority (41)
opkg_conf_parse_file: Supported arch armv7ahf-vfp priority (46)
opkg_conf_parse_file: Supported arch armv7at2hf-vfp priority (51)
opkg_conf_parse_file: Supported arch armv7ahf-neon priority (56)
opkg_conf_parse_file: Supported arch armv7at2hf-neon priority (61)
opkg_conf_parse_file: Supported arch cortexa9hf-vfp priority (66)
opkg_conf_parse_file: Supported arch cortexa9hf-neon priority (71)
opkg_conf_parse_file: Supported arch cortexa9t2hf-vfp priority (76)
opkg_conf_parse_file: Supported arch cortexa9t2hf-neon priority (81)
opkg_conf_parse_file: Supported arch cortexa9t2hf-neon-mx6sx priority (86)
opkg_conf_parse_file: Supported arch cortexa9hf-neon-mx6sx priority (91)
opkg_conf_parse_file: Supported arch udooneo priority (96)
opkg_conf_parse_file: Loading conf file /etc/opkg/opkg.conf.
pkg_hash_load_feeds:
pkg_hash_load_status_files:
pkg_info_preinstall_check: Updating file owner list.
opkg_configure_packages: Configuring unpacked packages.
opkg_configure_packages: Reordering packages before configuring them...
Collected errors:
* Solver encountered 3 problem(s):
* Problem 1/3:
* - nothing provides requested python3-core
*
* Solution 1:
* - do not ask to install a package providing python3-core
* Problem 2/3:
* - nothing provides requested python3-ctypes
*
* Solution 1:
* - do not ask to install a package providing python3-ctypes
* Problem 3/3:
* - nothing provides requested python3-mime
*
* Solution 1:
* - do not ask to install a package providing python3-mime
root@hostname:~# opkg info my-custom-package
Package: my-custom-package
Version: 3.2-r3
Depends: python3-core, python3-fcntl, python3-inotify-simple, python3-psutil, python3-pymonocypher, python3-pythonping, python3-requests, python3-simplejson, python3-websocket-client
Recommends: ca-certificates, gsm-tools, iw, update-rc.d
Status: unknown ok not-installed
Section: base
Architecture: cortexa9t2hf-neon
Maintainer:
MD5Sum: 883ef1ca5659cdd77a7947662daaa115
Size: 22252
Filename: my-custom-package_3.2-r3_cortexa9t2hf-neon.ipk
Source: my-custom-package_3.2.bb
Description: my-custom-package version 3.2-r3
Package: my-custom-package
Version: 2.1-r9
Depends: python-core, python-logging, python-psutil, python-requests, python-simplejson, python-subprocess, python-websocket-client
Recommends: ca-certificates, gsm-tools, iw, update-rc.d
Status: install ok installed
Architecture: cortexa9t2hf-neon
Installed-Size: 33328
Installed-Time: 1573829351
root@hostname:~# opkg install python3-core -V2
opkg_conf_parse_file: Loading conf file /etc/opkg/arch.conf.
opkg_conf_parse_file: Supported arch all priority (1)
opkg_conf_parse_file: Supported arch any priority (6)
opkg_conf_parse_file: Supported arch noarch priority (11)
opkg_conf_parse_file: Supported arch armv5hf-vfp priority (16)
opkg_conf_parse_file: Supported arch armv5thf-vfp priority (21)
opkg_conf_parse_file: Supported arch armv5ehf-vfp priority (26)
opkg_conf_parse_file: Supported arch armv5tehf-vfp priority (31)
opkg_conf_parse_file: Supported arch armv6hf-vfp priority (36)
opkg_conf_parse_file: Supported arch armv6thf-vfp priority (41)
opkg_conf_parse_file: Supported arch armv7ahf-vfp priority (46)
opkg_conf_parse_file: Supported arch armv7at2hf-vfp priority (51)
opkg_conf_parse_file: Supported arch armv7ahf-neon priority (56)
opkg_conf_parse_file: Supported arch armv7at2hf-neon priority (61)
opkg_conf_parse_file: Supported arch cortexa9hf-vfp priority (66)
opkg_conf_parse_file: Supported arch cortexa9hf-neon priority (71)
opkg_conf_parse_file: Supported arch cortexa9t2hf-vfp priority (76)
opkg_conf_parse_file: Supported arch cortexa9t2hf-neon priority (81)
opkg_conf_parse_file: Supported arch cortexa9t2hf-neon-mx6sx priority (86)
opkg_conf_parse_file: Supported arch cortexa9hf-neon-mx6sx priority (91)
opkg_conf_parse_file: Supported arch udooneo priority (96)
opkg_conf_parse_file: Loading conf file /etc/opkg/opkg.conf.
pkg_hash_load_feeds:
pkg_hash_load_status_files:
pkg_info_preinstall_check: Updating file owner list.
opkg_configure_packages: Configuring unpacked packages.
opkg_configure_packages: Reordering packages before configuring them...
Collected errors:
* Solver encountered 3 problem(s):
* Problem 1/3:
* - nothing provides requested python3-core
*
* Solution 1:
* - do not ask to install a package providing python3-core
* Problem 2/3:
* - nothing provides requested python3-ctypes
*
* Solution 1:
* - do not ask to install a package providing python3-ctypes
* Problem 3/3:
* - nothing provides requested python3-mime
*
* Solution 1:
* - do not ask to install a package providing python3-mime
root@hostname:~# opkg info python3-core
Package: python3-core
Version: 3.5.6-r1.0
Depends: libc6 (>= 2.28), libpython3.5m1.0 (>= 3.5.6), libreadline7 (>= 7.0), libz1 (>= 1.2.11)
Status: install ok not-installed
Section: devel/python
Architecture: cortexa9t2hf-neon
Maintainer:
MD5Sum: 6f56b22b7993c0cf351559a944abe0df
Size: 1027792
Filename: python3-core_3.5.6-r1.0_cortexa9t2hf-neon.ipk
Source: python3_3.5.6.bb
Description: Python interpreter and core modules
root@hostname:~# opkg info python3-mime
Package: python3-mime
Version: 3.5.6-r1.0
Depends: python3-core
Status: install ok not-installed
Section: devel/python
Architecture: cortexa9t2hf-neon
Maintainer:
MD5Sum: f9254dc437295edfa828ab8d68d9d5f8
Size: 10074
Filename: python3-mime_3.5.6-r1.0_cortexa9t2hf-neon.ipk
Source: python3_3.5.6.bb
Description: Python MIME handling APIs
root@hostname:~# opkg info python3-ctypes
Package: python3-ctypes
Version: 3.5.6-r1.0
Depends: libc6 (>= 2.28), libffi6 (>= 3.2.1), libpython3.5m1.0 (>= 3.5.6), python3-core
Status: install ok not-installed
Section: devel/python
Architecture: cortexa9t2hf-neon
Maintainer:
MD5Sum: 2667c24b23434635208177d03d6efcc6
Size: 67912
Filename: python3-ctypes_3.5.6-r1.0_cortexa9t2hf-neon.ipk
Source: python3_3.5.6.bb
Description: Python C types support
So my-custom-package
has several Python dependencies and opkg seems to not be able to find them. But when I run opkg info <pkg>
on dependencies, I get a result and opkg finds the packet. I verified on my respository if the compressed packets to download were there and everything seems fine. Also one of my problematic embedded systems runs in the same bulding as others which were installed the same day (so come from same image, same compilation,...). I'm used to update packages with opkg from remote. I encountered this kind of issue just once about 6 months ago on a single system but, as it was an upgrade of a non critical package, I just ignored the issue.
I tried opkg clean
but no success. I've read the man page to look for some helping commands but none seems to have an effect.
EDIT: Another interesting things:
root@hostname:~# opkg download python3-core
Downloading https://my-repository/ipks/v2/cortexa9t2hf-neon/python3-core_3.5.6-r1.0_cortexa9t2hf-neon.ipk.
Downloaded python3-core as python3-core_3.5.6-r1.0_cortexa9t2hf-neon.ipk.
So if I try to just download one of the packages opkg can't find, it works...
Also, a simple opkg list-upgradable
returns the same kind of errors:
root@hostname:~# opkg list-upgradable
Collected errors:
* Solver encountered 3 problem(s):
* Problem 1/3:
* - nothing provides requested python3-core
*
* Solution 1:
* - do not ask to install a package providing python3-core
* Problem 2/3:
* - nothing provides requested python3-ctypes
*
* Solution 1:
* - do not ask to install a package providing python3-ctypes
* Problem 3/3:
* - nothing provides requested python3-mime
*
* Solution 1:
* - do not ask to install a package providing python3-mime