Can't update Librem Mini, 0 B packages

Hello all. I am running PureOS 10.0 (Byzantium) with KDE Plasma (Version 5.20.5) on a Librem Mini (v1).

There are currently a number of packages queued for update, but I cannot install them. Each of them shows a package size of 0 B.

The packages are as follows:
gir1.2-packagekitglib-1.0
libexpat1
libpackagekit-glib2-18
libsasl2-2
libsasl2-modules
libsasl2-modules-db
packagekit
packagekit-tools

Most of these seem to exist solely for updating version numbers or perhaps shifting from one update ‘stream’ to another? For example, the first two are listed in detail as:

gir1.2-packagekitglib-1.0
1.2.5-1~pureos1 -> 1.2.5-1~pureos2

libexpat1
2.2.10-2+deb11u1 -> 2.2.10-2+deb11u2

When I attempt to update, I receive a pop-up message with the following text:

‘Update Issue
You have no authorization to execute this operation Failed to obtain authorization.’

These updates first appeared on Friday, February 25, 2022.
Checked for updates again this morning, Monday, February 28, 2022. They are still all listed as ‘0 B’ in size and will not install. After a reboot, I still cannot install them.

Anyone else experiencing this? Is there a work-around other than waiting for a fix? Thought I’d ask here before jumping into (my very limited) terminal commands.

The most similar post I have found in the forums is linked below but it’s not really the same issue…

I would suggest

sudo apt update && sudo apt upgrade

from the terminal, see what that gets you.

1 Like

Thank you, Gavaudan! That worked as expected. The commands completed and now when I check the GUI for updates it says I am up to date. Great!

I ran each command separately (and then sudo apt autoremove), and after each command I noticed an alert/warning:

sudo: unable to resolve host [MY_COMPUTER_NAME]: Name or service not known

Is this normal? Just to clarify, my machine was connected to the internet as I updated. It is not otherwise networked to anything. I do however use a DNS resolver which is set manually for this connection. There are no special characters in my computer name.

Also, as upgrade and autoremove were executed, perl squawked at me about my setting locale:

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = “”,
LC_ALL = (unset),
LC_TIME = “en_CA.UTF-8”,
LC_MONETARY = “en_US.UTF-8”,
LC_COLLATE = “en_US.UTF-8”,
LC_ADDRESS = “en_US.UTF-8”,
LC_TELEPHONE = “en_US.UTF-8”,
LC_NAME = “en_US.UTF-8”,
LC_MEASUREMENT = “en_US.UTF-8”,
LC_IDENTIFICATION = “en_US.UTF-8”,
LC_NUMERIC = “en_US.UTF-8”,
LC_PAPER = “en_US.UTF-8”,
LANG = “en_US.UTF-8”
are supported and installed on your system.
perl: warning: Falling back to a fallback locale (“en_US.UTF-8”).
locale: Cannot set LC_ALL to default locale: No such file or directory

I have checked my ‘Regional Settings’ in KDE Plasma and everything seems fine. Is this warning/error possibly caused by having my ‘Time’ set to ‘Canadian’ and/or having Mozc Input Method Editor installed?

Sorry if this should be a separate thread. I’m never quite sure what issues may be related to one another.

They are separate, but they show up when updating.

For the host thing, in a terminal run

sudo gedit /etc/hosts

look at the top of the file and see if what it says your hostname is matches what it should be. If not, make the change and save.

For the locale thing, it’s an easy fix but I don’t remember how to do it. It will be easy to find in a web search though.

1 Like

If the OP has changed per hostname after installation then I think this is a longstanding core software bug.

When you initially install Linux, and enter the name to use for the computer, it puts the name in /etc/hosts and also sets the hostname (stored in /etc/hostname as far as I know). If you subsequently change the hostname then only the latter gets changed, so you have to edit /etc/hosts manually. Without doing that, depending on your DNS config you might get the quoted error when the host can’t resolve its own name.

Thanks again Gavaudan!

As I’m running KDE Plasma I don’t have gedit installed by default, so I opened the file using

sudo featherpad /etc/hosts

As it turned out, I DID have a special character in my machine name (an underscore, which I thought was permitted and may or may not actually be a problem)

I removed the special character, saved the file, closed the editor. Then, back in the terminal window, I ran

sudo apt update

and this no longer throws any errors.

However regarding kieran’s comment above, I now have the following outputs:
$ hostname: MYCOMPUTERNAME (underscore removed)
$ cat /etc/hostname: MYCOMPUTER_NAME (underscore still present)

So… it appears that both entries originally included the underscore. I removed it from /etc/hosts, but it remained in /etc/hostname … sort of the opposite of what kieran described. So I ran

sudo featherpad /etc/hostname

I removed the special character, saved the file, closed the editor.
Now the output of $ cat /etc/hostname is
MYCOMPUTERNAME

the underscore has been defeated.

I will look into the problem with the perl locale warning later as I dig around a bit more. That will be in a separate thread as I won’t have time to look into it more for a few days.

Thanks again for your help. Desktop linux certainly exposes users to more minutiae than some other OSes. I still need to be careful which rabbit holes I poke my head into!

No worries, glad to help and glad you found the underscore. Seems odd that it would have an effect (I’ve used a dash before with no problems) but evidently it does.