packages icon indicating copy to clipboard operation
packages copied to clipboard

Discover: Update fails and emits an error "Package failed to install: Could not update: Component.localName: 'ar' language of tag 'LocalName' is empty."

Open TraceyC77 opened this issue 1 year ago • 6 comments

Please confirm there isn't an existing open bug report

  • [X] I have searched open bugs for this issue

Summary

When attempting to install Falkon, an error was received

Internal error: Error Type: <class 'pisi.pxml.autoxml.Error'> Error Value: Component.localName: 'ar' language of tag 'LocalName' is empty.

Steps to reproduce

  1. Open Discover
  2. Attempt to install Falkon

Expected result

Falkon is installed

Actual result

An error dialog

Environment

  • [X] Is system up to date?

Repo

Unstable

Desktop Environment

Plasma

System details

Operating System: Solus 4.5 KDE Plasma Version: 6.0.5 KDE Frameworks Version: 6.2.0 Qt Version: 6.7.1 Kernel Version: 6.8.11-292.current (64-bit)

Other comments

When I went to do updates via Discover to see if the error still happened I got another error bubbled up from eopkg. Wee. I'll open a separate issue for that if it still happens after a system update via eopkg.

TraceyC77 avatar Jun 07 '24 17:06 TraceyC77

I think this was caused by the eopkg4-bin cache corruption we keep seeing due to the system having both py2 and py3 eopkg binaries. When I ran eopkg4-bin up I got the following error. Running eopkg4-bin dc will resolve this. This will likely be fixed when we migrate to eopkg4-bin fully. I'll keep this bug open under my name until that happens to verify the fix.

❯ sudo eo4 up
[sudo] password for tracey:
Updating repositories
Updating repository: Local
Local repository information is up-to-date.
Updating repository: Solus-Dev
eopkg-index.xml.xz.sha1sum     (40.0  B)100%      0.00 --/- [--:--:--] [complete]
Solus-Dev repository information is up-to-date.
Program terminated.
Component.localName: 'ar' language of tag 'LocalName' is empty.
Component.localName: 'bg' language of tag 'LocalName' is empty.
Component.localName: 'he' language of tag 'LocalName' is empty.
Component.localName: 'ko' language of tag 'LocalName' is empty.
Component.localName: 'ko_KR' language of tag 'LocalName' is empty.
Component.localName: 'ru' language of tag 'LocalName' is empty.
Component.localName: 'sr_RS' language of tag 'LocalName' is empty.
Component.localName: 'zh_CN' language of tag 'LocalName' is empty.
Component.summary: 'ar' language of tag 'Summary' is empty.
Component.summary: 'bg' language of tag 'Summary' is empty.
Component.summary: 'he' language of tag 'Summary' is empty.
Component.summary: 'ko' language of tag 'Summary' is empty.
Component.summary: 'ko_KR' language of tag 'Summary' is empty.
Component.summary: 'ru' language of tag 'Summary' is empty.
Component.summary: 'sr_RS' language of tag 'Summary' is empty.
Component.summary: 'zh_CN' language of tag 'Summary' is empty.
Component.description: 'he' language of tag 'Description' is empty.
Component.description: 'ko' language of tag 'Description' is empty.
Component.description: 'ko_KR' language of tag 'Description' is empty.
autoxml.parse: String '<Component>
            <Name>system.base</Name>
            <LocalName xml:lang="en">System Base</LocalName>
            <LocalName xml:lang="ar"> </LocalName>
            <LocalName xml:lang="bg"> </LocalName>
            <LocalName xml:lang="ca">Sistema de base</LocalName>
            <LocalName xml:lang="ca_ES">Sistema de base</LocalName>
            <LocalName xml:lang="cs">Zklady systmu</LocalName>
            <LocalName xml:lang="da">System grundlggende</LocalName>
            <LocalName xml:lang="da_DK">System Base</LocalName>
            <LocalName xml:lang="de">Systembasis</LocalName>
            <LocalName xml:lang="en_GB">System Base</LocalName>
            <LocalName xml:lang="eo">Sistem-bazo</LocalName>
            <LocalName xml:lang="es">Sistema Base</LocalName>
            <LocalName xml:lang="es_419">Sistema Base</LocalName>
            <LocalName xml:lang="es_AR">Base del sistema</LocalName>
            <LocalName xml:lang="es_ES">Sistema Base</LocalName>
            <LocalName xml:lang="es_MX">Sistema Base</LocalName>
            <LocalName xml:lang="es_PE">Sistema Base</LocalName>
            <LocalName xml:lang="es_US">Sistema Base</LocalName>
            <LocalName xml:lang="eu">Sistemaren Oinarria</LocalName>
            <LocalName xml:lang="fi">Perusjrjestelm</LocalName>
            <LocalName xml:lang="fr_CA">Base du systme</LocalName>
            <LocalName xml:lang="fr_FR">Base du systme</LocalName>
            <LocalName xml:lang="he"> </LocalName>
            <LocalName xml:lang="hu">Rendszer alapjai</LocalName>
            <LocalName xml:lang="id_ID">Dasar Sistem</LocalName>
            <LocalName xml:lang="it">Sistema Base</LocalName>
            <LocalName xml:lang="it_IT">Sistema base</LocalName>
            <LocalName xml:lang="ko"> </LocalName>
            <LocalName xml:lang="ko_KR"> </LocalName>
            <LocalName xml:lang="lt">Sistemos pagrindas</LocalName>
            <LocalName xml:lang="nb_NO">Systembase</LocalName>
            <LocalName xml:lang="nl_BE">Kernsysteem</LocalName>
            <LocalName xml:lang="nl_NL">Kernsysteem</LocalName>
            <LocalName xml:lang="pl">Baza systemowa</LocalName>
            <LocalName xml:lang="pt_BR">Sistema base</LocalName>
            <LocalName xml:lang="pt_PT">Sistema Base</LocalName>
            <LocalName xml:lang="ro_RO">Baza sistemului</LocalName>
            <LocalName xml:lang="ru"> </LocalName>
            <LocalName xml:lang="sr_RS"> </LocalName>
            <LocalName xml:lang="sr_RS@latin">Osnova sistema</LocalName>
            <LocalName xml:lang="sv_SE">Bassystem</LocalName>
            <LocalName xml:lang="tr">Sistem Taban</LocalName>
            <LocalName xml:lang="zh_CN"></LocalName>
            <Summary xml:lang="en">Base Components</Summary>
            <Summary xml:lang="ar">  </Summary>
            <Summary xml:lang="bg"> </Summary>
            <Summary xml:lang="ca">Components de base</Summary>
            <Summary xml:lang="ca_ES">Components de base</Summary>
            <Summary xml:lang="cs">Zkladn sousti</Summary>
            <Summary xml:lang="da">Grundlggende komponenter</Summary>
            <Summary xml:lang="da_DK">Base Komponenter</Summary>
            <Summary xml:lang="de">Basiskomponenten</Summary>
            <Summary xml:lang="en_GB">Base Componnents</Summary>
            <Summary xml:lang="eo">Bazaj komponantoj</Summary>
            <Summary xml:lang="es">Componentes Base</Summary>
            <Summary xml:lang="es_419">Componentes Base</Summary>
            <Summary xml:lang="es_AR">Componentes bsicos</Summary>
            <Summary xml:lang="es_ES">Componentes Base</Summary>
            <Summary xml:lang="es_MX">Componentes Base</Summary>
            <Summary xml:lang="es_PE">Componentes Base</Summary>
            <Summary xml:lang="es_US">Componentes Base</Summary>
            <Summary xml:lang="eu">Oinarrizko Osagaiak</Summary>
            <Summary xml:lang="fi">Peruskomponentit</Summary>
            <Summary xml:lang="fr_CA">Composants de base</Summary>
            <Summary xml:lang="fr_FR">Composants de base</Summary>
            <Summary xml:lang="he"> </Summary>
            <Summary xml:lang="hu">Alapvet sszetevk</Summary>
            <Summary xml:lang="id_ID">Komponen Dasar</Summary>
            <Summary xml:lang="it">Componenti base</Summary>
            <Summary xml:lang="it_IT">Componenti base</Summary>
            <Summary xml:lang="ko">  </Summary>
            <Summary xml:lang="ko_KR">  </Summary>
            <Summary xml:lang="lt">Pagrindiniai komponentai</Summary>
            <Summary xml:lang="nb_NO">Basiskomponenter</Summary>
            <Summary xml:lang="nl_BE">Basiscomponenten</Summary>
            <Summary xml:lang="nl_NL">Basiscomponenten</Summary>
            <Summary xml:lang="pl">Skadniki bazowe</Summary>
            <Summary xml:lang="pt_BR">Componentes base</Summary>
            <Summary xml:lang="pt_PT">Componentes Base</Summary>
            <Summary xml:lang="ro_RO">Componente de baz</Summary>
            <Summary xml:lang="ru"> </Summary>
            <Summary xml:lang="sr_RS"> </Summary>
            <Summary xml:lang="sr_RS@latin">Osnovne komponente</Summary>
            <Summary xml:lang="sv_SE">Baskomponenter</Summary>
            <Summary xml:lang="tr">Temel Bileenler</Summary>
            <Summary xml:lang="zh_CN"></Summary>
            <Description xml:lang="en">Base components of Solus</Description>
            <Description xml:lang="ar">   Solus</Description>
            <Description xml:lang="bg">   Solus</Description>
            <Description xml:lang="ca">Components de base del Solus</Description>
            <Description xml:lang="ca_ES">Components de base del Solus</Description>
            <Description xml:lang="cs">Zkladn sousti Solusu</Description>
            <Description xml:lang="da">Grundlggende komponenter af Solus</Description>
            <Description xml:lang="da_DK">Base komponenter af Solus</Description>
            <Description xml:lang="de">Basiskomponenten von Solus</Description>
            <Description xml:lang="en_GB">Base components of Solus</Description>
            <Description xml:lang="eo">Bazaj komponantoj de Solus</Description>
            <Description xml:lang="es">Componentes base de Solus</Description>
            <Description xml:lang="es_419">Componentes base de Solus</Description>
            <Description xml:lang="es_AR">Componentes bsicos de Solus</Description>
            <Description xml:lang="es_ES">Componentes base de Solus</Description>
            <Description xml:lang="es_MX">Componentes base de Solus</Description>
            <Description xml:lang="es_PE">Componentes base de Solus</Description>
            <Description xml:lang="es_US">Componentes base de Solus</Description>
            <Description xml:lang="eu">Solusen oinarrizko osagaiak</Description>
            <Description xml:lang="fi">Solus peruskomponentit</Description>
            <Description xml:lang="fr_CA">Composants de base de Solus</Description>
            <Description xml:lang="fr_FR">Composants de base de Solus</Description>
            <Description xml:lang="he">   </Description>
            <Description xml:lang="hu">A Solus alapvet sszetevi</Description>
            <Description xml:lang="id_ID">Komponen dasar Solus</Description>
            <Description xml:lang="it">Componenti base di Solus</Description>
            <Description xml:lang="it_IT">Componenti base di Solus</Description>
            <Description xml:lang="ko">   </Description>
            <Description xml:lang="ko_KR">   </Description>
            <Description xml:lang="lt">Pagrindiniai Solus komponentai</Description>
            <Description xml:lang="nb_NO">Basiskomponenter av Solus</Description>
            <Description xml:lang="nl_BE">Basiscomponenten van Solus</Description>
            <Description xml:lang="nl_NL">Basiscomponenten van Solus</Description>
            <Description xml:lang="pl">Podstawowe skadniki Solusa</Description>
            <Description xml:lang="pt_BR">Componentes base do Solus</Description>
            <Description xml:lang="pt_PT">Componentes Base do Solus</Description>
            <Description xml:lang="ro_RO">Componente de baz Solus</Description>
            <Description xml:lang="ru">  Solus</Description>
            <Description xml:lang="sr_RS">  -</Description>
            <Description xml:lang="sr_RS@latin">Osnovne komponente Solus-a</Description>
            <Description xml:lang="sv_SE">Solus baskomponenter</Description>
            <Description xml:lang="tr">Solus&apos;un temel bileenleri</Description>
            <Description xml:lang="zh_CN">Solus </Description>
            <Group>system</Group>
            <Maintainer>
                <Name>Solus Team</Name>
                <Email>[email protected]</Email>
            </Maintainer>
        </Component>' has errors.
Please use 'eopkg help' for general help.

TraceyC77 avatar Jun 07 '24 17:06 TraceyC77

I was able to install Falkon after eopkg4-bin dc, and update and reboot Issue being kept open to track for testing after the eopkg update to python3

TraceyC77 avatar Jun 07 '24 17:06 TraceyC77

I have encountered the error in the 2nd post few times now and it has always happened after opening and closing discover and/or exiting its update notifier in Plasma's traydock.

At which point I can fix the issue with sudo eopkg4-bin ur --force. So something is funky.

HarveyDevel avatar Jun 08 '24 02:06 HarveyDevel

This may be fixed by getsolus/eopkg/pull/61 , I'll keep an eye on Discover after I update

TraceyC77 avatar Jun 08 '24 03:06 TraceyC77

This was not fixed by that update. It is unrelated to the cache. I got the error again today

<html>Package failed to install:<br/><br/>Could not update: Component.localName: &apos;ar&apos; language of tag &apos;LocalName&apos; is empty.</html>

Decoded:

<html>Package failed to install:<br/><br/>Could not update: Component.localName: 'ar' language of tag 'LocalName' is empty.</html>

Running the update through eopkg succeeded

❯ eopkg history -l 3
Operation #2716: upgrade
Date: 2024-07-24 08:47
 
    * curl is upgraded from 8.8.0-91-1-x86_64 to 8.9.0-92-1-x86_64.
    * libidn2-devel 2.3.7-12-1-x86_64 is installed.
    * ldns is upgraded from 1.8.3-7-1-x86_64 to 1.8.4-8-1-x86_64.
    * curl-devel is upgraded from 8.8.0-91-1-x86_64 to 8.9.0-92-1-x86_64.
    * curl-gnutls is upgraded from 8.8.0-91-1-x86_64 to 8.9.0-92-1-x86_64.
 
Operation #2715: repository update
Date: 2024-07-24 08:38
 
    * Solus-Dev repository is updated.

TraceyC77 avatar Jul 24 '24 13:07 TraceyC77

Got the error again today Last update in eopkg history:

Operation #391: repository update
Date: 2024-08-15 10:47

    * Solus repository is updated.

Operation #390: repository update
Date: 2024-08-15 09:44

    * Solus repository is updated.

Operation #389: repository update
Date: 2024-08-14 18:26

    * Solus repository is updated.

Operation #388: upgrade
Date: 2024-08-14 12:30

    * glibc is upgraded from 2.39-122-1-x86_64 to 2.39-123-1-x86_64.
    * glibc-devel is upgraded from 2.39-122-1-x86_64 to 2.39-123-1-x86_64.
    * sqlite3 is upgraded from 3.46.0-55-1-x86_64 to 3.46.1-56-1-x86_64.
    * libnss is upgraded from 3.102.1-64-1-x86_64 to 3.103-65-1-x86_64.
    * flatpak is upgraded from 1.14.8-78-1-x86_64 to 1.14.10-79-1-x86_64.
    * flatpak-devel is upgraded from 1.14.8-78-1-x86_64 to 1.14.10-79-1-x86_64.
    * glibc-32bit is upgraded from 2.39-122-1-x86_64 to 2.39-123-1-x86_64.
    * intel-microcode is upgraded from 20240531-28-1-x86_64 to 20240813-29-1-x86_64.
    * libnss-devel is upgraded from 3.102.1-64-1-x86_64 to 3.103-65-1-x86_64.
    * bubblewrap is upgraded from 0.9.0-19-1-x86_64 to 0.10.0-20-1-x86_64.
    * sqlite3-devel is upgraded from 3.46.0-55-1-x86_64 to 3.46.1-56-1-x86_64.
    * discord is upgraded from 0.0.63-79-1-x86_64 to 0.0.64-80-1-x86_64.
    * meson is upgraded from 1.4.1-63-1-x86_64 to 1.5.1-64-1-x86_64.

TraceyC77 avatar Aug 15 '24 16:08 TraceyC77

This just happened again today, so it's not affected by any recent changes in eopkg

TraceyC77 avatar Nov 20 '24 18:11 TraceyC77

This error happens for me about once a month when I update or install new packages. Solus Plasma 4.6 Stable fully updated. Reinstalling Discover using sudo eopkg install --reinstall discover seems to fix it until the next time.

BuzzPCSOS avatar Nov 24 '24 09:11 BuzzPCSOS

I can't reproduce this on my system. Does anyone know how to reliably reproduce this bug, or is it still super intermittent?

sheepman4267 avatar Apr 17 '25 11:04 sheepman4267

Super intermittent.

Several times I have noticed it after receiving a updates available notification from Discover at which point I have left clicked on the the tray icon for it opening Discover and then close Discover without installing updates or when the notification appears, right click the tray icon for it and quit/exit to get rid of the notification. Next time you try install something or update its broken.

Reality is those steps may not actually increase the likelihood of it occurring. I have just noticed it a few times this way over many months trying to recreate the scenario of when I first encountered it.

HarveyDevel avatar Apr 17 '25 12:04 HarveyDevel

@HarveyDevel: Next time you (or anyone else, for that matter) encounters this, please save the full contents of /var/lib/eopkg/index/ before you work around the issue and ping me here or on matrix to figure out how to get me the files. I suspect we may be dealing with corruption of the index file, and I would like to analyze a specimen from a system which is exhibiting the bug.

sheepman4267 avatar Apr 17 '25 17:04 sheepman4267

I had the "package failed to install" message happen on Plasma in the early hours of the morning today, unfortunately not convenient to get any debug at the time. However I did notice that despite the error message Discover continued to download and install Flatpak packages so it looks like only the Solus updates are presenting the error.

BuzzPCSOS avatar Apr 18 '25 15:04 BuzzPCSOS

I had the "package failed to install" message happen on Plasma in the early hours of the morning today, unfortunately not convenient to get any debug at the time. However I did notice that despite the error message Discover continued to download and install Flatpak packages so it looks like only the Solus updates are presenting the error.

Yes, that's correct. I think this is an issue in the eopkg backend for PackageKit. Have you worked around the error already, or is it still happening now?

sheepman4267 avatar Apr 18 '25 16:04 sheepman4267

Have you worked around the error already

Yes, for that instance I used Discover to update Flatpak and Software Center for system updates. I have not run any of the recommended fixes on Discover so am assuming that it will error again when the Friday updates come. This time I will have a keyboard and mouse fitted so I won't have to try doing system maintenance tasks with only a touch screen.

BuzzPCSOS avatar Apr 18 '25 21:04 BuzzPCSOS

@sheepman4267 https://shared.getsol.us/harvey/issue2892/

I haven't had the issue in awhile and the only change I made was after your message, re-enabling solus-sc update notifications.

The issue resolved itself which I have never noticed before. The sha256sum of the index matches the index of my VM so I think I missed it somehow. Perhaps one of the software centers updated the index again in the background idfk...

HarveyDevel avatar Apr 18 '25 23:04 HarveyDevel

@HarveyDevel Well, I'll be. It's a place to start. I'll dig into SC code later to see if it's doing something funky with repo updates. Thanks!

sheepman4267 avatar Apr 18 '25 23:04 sheepman4267

I disabled checking for updates in solus-sc after my last post but the issue happened again today. I don't remember opening Discover at all.

Link posted above has been updated with the contents of /var/lib/eopkg/index/

HarveyDevel avatar May 01 '25 02:05 HarveyDevel

I got both solus-sc and discover update notifications today despite having "Automatically check for updates" disabled in solus-sc so still can't rule it out as a root cause... It does what it wants.

HarveyDevel avatar May 02 '25 03:05 HarveyDevel

@sheepman4267

Next time you (or anyone else, for that matter) encounters this, please save the full contents of /var/lib/eopkg/index/ before you work around the issue and ping me here or on matrix to figure out how to get me the files. I suspect we may be dealing with corruption of the index file, and I would like to analyze a specimen from a system which is exhibiting the bug.

The Discover error happened to me again today trying to run updates for week 19. I have saved the files to a .zip archive which is attached. I hope this helps.

Solus.zip

BuzzPCSOS avatar May 10 '25 07:05 BuzzPCSOS

@sheepman4267

Next time you (or anyone else, for that matter) encounters this, please save the full contents of /var/lib/eopkg/index/ before you work around the issue and ping me here or on matrix to figure out how to get me the files. I suspect we may be dealing with corruption of the index file, and I would like to analyze a specimen from a system which is exhibiting the bug.

The Discover error happened to me again today trying to run updates for week 19. I have saved the files to a .zip archive which is attached. I hope this helps.

Solus.zip

Thank you, and thank you to the other couple of people who have passed me these files. Unfortunately we've now ruled out index corruption as the source of this bug! Progress, but... well, only kind of.

@joebonrichie and I have deduced that this bug is happening because somehow, malformed XML is being placed in /var/cache/eopkg/componentdb.cache. But only sometimes. I'm not sure yet what is creating the malformed XML, but continued issue reports are helpful.

Going forward, if people experiencing this issue can post the last few entries of eopkg history, note which interface (eopkg, eopkg.bin, Solus SC, Discover, etc) was used for each operation, and capture the contents of /var/cache/eopkg/ and send them in, I would appreciate that. Those are listed in order of which would be most helpful, so if you only have time for some of it, please start at the beginning :)

Workaround

Since this is a cache problem, the easiest way to work around the issue is to force-refresh all caches with sudo eopkg ur --force. I would prefer that you post something here per my above instructions before running that command, but it should get your system back into a working state.

sheepman4267 avatar May 13 '25 14:05 sheepman4267