Bug 1464139 - Some applications listed by gnome-software cannot be installed on big-endian architectures [NEEDINFO]
Some applications listed by gnome-software cannot be installed on big-endian ...
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: gnome-software (Show other bugs)
ppc64 Linux
high Severity high
: rc
: ---
Assigned To: Richard Hughes
Desktop QE
Petr Bokoc
Depends On:
Blocks: 1477211
  Show dependency treegraph
Reported: 2017-06-22 09:47 EDT by Martin Krajnak
Modified: 2018-07-19 04:39 EDT (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Known Issue
Doc Text:
*Application Installer* displays packages even though they can not be installed on big endian architectures When you use the *Application Installer* graphical package installer (the _gnome-software_ package) on a big-endian system such as IBM Power Systems or IBM z Systems, some of the packages listed as available will not be possible to install, and an attempt to do so results in an "installing not available" error message. This is a known issue caused by package metadata currently being generated only for 64-bit AMD and Intel-compatible (little-endian) systems, and assuming all packages are also available on big-endian architectures, which is not the case. There is no workaround to this problem; however, the error message has no consequences other than the package not being installable.
Story Points: ---
Clone Of:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
pbokoc: needinfo? (rhughes)

Attachments (Terms of Use)
full log (678.87 KB, text/plain)
2017-06-22 09:47 EDT, Martin Krajnak
no flags Details
erro message screenshot (62.62 KB, image/jpeg)
2017-06-22 09:51 EDT, Martin Krajnak
no flags Details

  None (edit)
Description Martin Krajnak 2017-06-22 09:47:00 EDT
Created attachment 1290726 [details]
full log

Description of problem:
There are several applications which are listed by gnome-software but cannot be installed.
I randomly found the following list of affected applications: brasero, bluefish editor, dia diagram editor and codeblocks. The affected architectures are s390x and ppc64.

Version-Release number of selected component (if applicable):

How reproducible:
always on mentioned architectures.

Steps to Reproduce:
1.run gnome-software 
2.search for brasero
3.click install

Actual results:
Eror message window: installing not available

Expected results:
Should install the application or application should not be listed if it is not available.

Additional info:
output (full log including 3 install fails is uploaded above) from gnome-software --verbose from the moment in which error has occured:

13:19:47:0856 As  run 0xaea28680~GsPlugin::provenance-license(gs_plugin_refine)
13:19:49:0772 As  run 0x3ffe4002770~GsPlugin::packagekit(gs_plugin_app_install)
13:19:49:0772 Gs  failed to call gs_plugin_app_install on packagekit: installing not available
13:19:49:0772 Gs  saving error for system/package/rhel-7/desktop/brasero.desktop/*: installing not available
13:19:49:0772 As  run 0x3ffe4002770~GsPlugin::shell-extensions(gs_plugin_app_install)
13:19:49:0772 As  run 0x3ffe4002770~GsPlugin::flatpak(gs_plugin_app_install)
13:19:49:0772 Gs  adding system/package/rhel-7/desktop/brasero.desktop/* as nothing matched hash
13:19:49:0772 Gs  adding system/package/rhel-7/desktop/brasero.desktop/* as nothing matched hash

In addition I tried:
[test@ibm-z-40 ~]$ pkcon install brasero
Resolving                     [                         ] (0%)  Package not found: brasero
Command failed: This tool could not find any available package: No packages were found
Comment 1 Martin Krajnak 2017-06-22 09:51 EDT
Created attachment 1290729 [details]
erro message screenshot
Comment 3 Richard Hughes 2017-07-03 07:01:23 EDT
This isn't a trivial bug. GNOME Software uses the AppStream data as a way of mapping between package name and application ID. Rather than checking a thousand things at startup, it assumes that "if a desktop file exists" then the component is installed. It also assumes that "if there's an appstream entry, then the component is install-able". This works well on the all the architectures I've tested.

The fly in the ointment is that the metadata is generated against x86_64, as it was *assumed* by me that all architectures would have the same set of applications available to install. Making this assumption means the generator takes ~2 hours to run rather than ~1 day.

I guess there are multiple ways to fix this:

 * start generating per-arch metadata
 * do not include gnome-software on s390x
 * find out (and fix) why some apps are not built on s390x

I'm happy helping with either option 1 or 2.
Comment 5 Kalev Lember 2018-02-16 04:28:08 EST
This should be mostly fixed upstream with https://gitlab.gnome.org/GNOME/gnome-software/commit/be2b5970a3e1de08d59681b9c15b88d7cc4ce53e that hides apps that are in appstream metadata, but not actually available in repos.

There's still the issue of appstream metadata not being 100% correct as it's generated on different architecture, but that's something to fix another time I think.
Comment 6 Martin Krajnak 2018-07-19 04:39:02 EDT
I've tried to check today, the brasero is not longer listed by gnome-software , overall there are notably smaller amount of applications listed in every category so I think the fix was successful but I am not able to verify this because of bug 1591270

Note You need to log in before you can comment on or make changes to this bug.