Summary: | Application without metadata defaults to license information as proprietary | ||
---|---|---|---|
Product: | [Applications] Discover | Reporter: | Eamonn Rea <eamonnrea> |
Component: | discover | Assignee: | Plasma Bugs List <plasma-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | major | CC: | aleixpol, nate, sitter |
Priority: | NOR | ||
Version: | 6.0.4 | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/plasma/discover/-/commit/c531b7eb8c38ae3761256e0a4f4e160913984cbc | Version Fixed In: | 6.0.5 |
Sentry Crash Report: | |||
Attachments: | Geany does not display a license, and viewing information shows a Proprietary Software warning |
Description
Eamonn Rea
2024-04-23 20:53:20 UTC
Which application does this happen with for example? It happens with Geany when listing the package manager release. I'll add an attachment. I believe there are other examples I found at the time of reporting, but I can only recall Geany, and I have confirmed the issue still exists with Geany. The screenshot I will attach following this comment was taken today. The Arch Linux packages page does correctly list Geany as having a license: https://archlinux.org/packages/extra/x86_64/geany/ But in the case where Discover cannot pull it, I think it would be good to have some sort of case to handle as fallback. Created attachment 169201 [details]
Geany does not display a license, and viewing information shows a Proprietary Software warning
Very strange. Please post the output of appstreamcli search geany appstreamcli dump geany.desktop pkcon get-details geany The output is quite long, so I'll put a couple of notes I wanted to make here, before the output: 1. Although there are a couple of results, the Geany I am referring to is the IDE 2. The output of `pkcon get-details geany` occurs for every system package I try to view on Discover that is not already installed (since Discover isn't meant to be used to install Arch packages afaik) -- However, *not* all system packages are missing a license. In other words, even though this message will always appear, even packages that display correctly in Discover will also show this, both from the UI and that command. 3. This affects more than just Geany, other examples of packages with missing licenses are OpenTTD, 0 A.D., and Snes9x. 4. Packages missing a license are usually also missing screenshots. Distro packages that do have license information will usually also display screenshots. ************************************************** $ appstreamcli search geany Identifier: io.sourceforge.chart_geany.chart-geany [desktop-application] Name: Chart Geany Summary: Chart Geany is a free cross platform software solution for market technical analysis, charting and a portfolio manager Bundle: flatpak:app/io.sourceforge.chart_geany.chart-geany/x86_64/stable Homepage: https://chart-geany.sourceforge.io/ Icon: io.sourceforge.chart_geany.chart-geany.png --- Identifier: org.gnome.Devhelp.desktop [desktop-application] Name: Devhelp Summary: A developer tool for browsing and searching API documentation Bundle: flatpak:app/org.gnome.Devhelp/x86_64/stable Homepage: https://wiki.gnome.org/Apps/Devhelp/ Icon: org.gnome.Devhelp.png --- Identifier: org.gnome.Devhelp.desktop [desktop-application] Name: Devhelp Summary: A developer tool for browsing and searching API documentation Package: devhelp Homepage: https://wiki.gnome.org/Apps/Devhelp/ Icon: devhelp_org.gnome.Devhelp.png --- Identifier: org.geany.Geany [desktop-application] Name: Geany Summary: A fast and lightweight IDE Bundle: flatpak:app/org.geany.Geany/x86_64/stable Homepage: https://geany.org/ Icon: org.geany.Geany.png --- Identifier: geany.desktop [desktop-application] Name: Geany Summary: A fast and lightweight IDE using GTK+ Package: geany Icon: geany_geany.png ************************************************** $ appstreamcli dump geany.desktop <?xml version="1.0" encoding="utf-8"?> <component type="desktop-application"> <id>geany.desktop</id> <name>Geany</name> <summary>A fast and lightweight IDE using GTK+</summary> <description> <p>Fast and lightweight IDE</p> </description> <pkgname>geany</pkgname> <launchable type="desktop-id">geany.desktop</launchable> <icon type="cached" width="48" height="48">geany_geany.png</icon> <icon type="cached" width="64" height="64">geany_geany.png</icon> <icon type="cached" width="128" height="128">geany_geany.png</icon> <icon type="stock">geany</icon> <categories> <category>Development</category> <category>IDE</category> <category>TextEditor</category> </categories> <provides> <mediatype>text/plain</mediatype> <mediatype>text/x-chdr</mediatype> <mediatype>text/x-csrc</mediatype> <mediatype>text/x-c++hdr</mediatype> <mediatype>text/x-c++src</mediatype> <mediatype>text/x-java</mediatype> <mediatype>text/x-dsrc</mediatype> <mediatype>text/x-pascal</mediatype> <mediatype>text/x-perl</mediatype> <mediatype>text/x-python</mediatype> <mediatype>application/x-php</mediatype> <mediatype>application/x-httpd-php3</mediatype> <mediatype>application/x-httpd-php4</mediatype> <mediatype>application/x-httpd-php5</mediatype> <mediatype>application/xml</mediatype> <mediatype>text/html</mediatype> <mediatype>text/css</mediatype> <mediatype>text/x-sql</mediatype> <mediatype>text/x-diff</mediatype> </provides> <keywords> <keyword>Text</keyword> <keyword>Editor</keyword> </keywords> </component> ************************************************** $ pkcon get-details geany Resolving [=========================] Getting details [=========================] Finished [=========================] Fatal error: geany;2.0-1;x86_64;extra: could not find or read package Thanks. The problem appears to be that the package fails to resolve and consequently has an empty (I think) license which then triggers a UI bug. A possibly relevant merge request was started @ https://invent.kde.org/plasma/discover/-/merge_requests/831 Git commit 5246ef454c5be0b16e3df7e232e4d3b3984435d0 by Harald Sitter. Committed on 08/05/2024 at 09:06. Pushed by sitter into branch 'master'. packagekit: return empty license array when unknown this was previously made non-empty so it looks like a valid license set. since then we've grown the ability to actually show unknown licenses as unknown in the UI, but that requires the license array to actually be empty. so, make it empty again (: M +1 -1 libdiscover/backends/PackageKitBackend/PackageKitResource.cpp https://invent.kde.org/plasma/discover/-/commit/5246ef454c5be0b16e3df7e232e4d3b3984435d0 Git commit c531b7eb8c38ae3761256e0a4f4e160913984cbc by Harald Sitter. Committed on 08/05/2024 at 14:41. Pushed by sitter into branch 'Plasma/6.0'. packagekit: return empty license array when unknown this was previously made non-empty so it looks like a valid license set. since then we've grown the ability to actually show unknown licenses as unknown in the UI, but that requires the license array to actually be empty. so, make it empty again (: (cherry picked from commit 5246ef454c5be0b16e3df7e232e4d3b3984435d0) M +1 -1 libdiscover/backends/PackageKitBackend/PackageKitResource.cpp https://invent.kde.org/plasma/discover/-/commit/c531b7eb8c38ae3761256e0a4f4e160913984cbc |