Cloud images ship with empty /var/lib/apt/lists/ to save on size. Running 'ubuntu-bug <supported_package>' will erroneously report that the package is unsupported:
$ ubuntu-bug coreutils
*** Collecting problem information
The collected information can be sent to the developers to improve the
application. This might take a few minutes.
.
*** Problem in coreutils
The problem cannot be reported:
This is not an official Ubuntu package. Please remove any third party package and try again.
A simpler recreate is:
$ python3 -c 'import apport;print(apport.packaging.is_distro_package("coreutils"))'
False
$ sudo apt update -qq
All packages are up to date.
$ python3 -c 'import apport;print(apport.packaging.is_distro_package("coreutils"))'
True
Desired result:
The message should instruct the user to run 'apt update' as root if they think this is in error. That would improve usability and avoid false reports about apport incorrectly flagging a package as unsupported.
Additionally, if the user is root (and optionally if the set of package candidates only contains a 'now' component) self._cache.update(); self._cache.open() could be called to download lists.
Cloud images ship with empty /var/lib/apt/lists/ to save on size. Running 'ubuntu-bug <supported_ package> ' will erroneously report that the package is unsupported:
$ ubuntu-bug coreutils
*** Collecting problem information
The collected information can be sent to the developers to improve the
application. This might take a few minutes.
.
*** Problem in coreutils
The problem cannot be reported:
This is not an official Ubuntu package. Please remove any third party package and try again.
A simpler recreate is:
$ python3 -c 'import apport; print(apport. packaging. is_distro_ package( "coreutils" ))' print(apport. packaging. is_distro_ package( "coreutils" ))'
False
$ sudo apt update -qq
All packages are up to date.
$ python3 -c 'import apport;
True
Desired result:
The message should instruct the user to run 'apt update' as root if they think this is in error. That would improve usability and avoid false reports about apport incorrectly flagging a package as unsupported.
Additionally, if the user is root (and optionally if the set of package candidates only contains a 'now' component) self._cache. update( ); self._cache.open() could be called to download lists.