Page MenuHomePureOS Tracker

python-libxml2 is missing from amber repository
Closed, ResolvedPublic

Description

I am using PureOS (amber) on a Librem 13 with all updates to 14 December 20.

I am trying to install 'Chirp', a ham radio package, in order to update the stations on my handheld radio. The installation on PureOS fails on the python-libxml2 package, claiming it is missing from the repository.

The contents of my /etc/apt/sources.list is:

deb https://repo.puri.sm/pureos/ amber main
deb-src https://repo.puri.sm/pureos/ amber main #Added by software-properties

deb https://repo.pureos.net/pureos/ amber-security main
deb https://repo.pureos.net/pureos/ amber-updates main

The 'apt' output is: (I removed the ID/system name.)

$ sudo apt install chirp

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  python-libxml2 python-libxslt1 python-serial
Suggested packages:
  python-wxgtk3.0 | python-wxgtk
The following NEW packages will be installed:
  chirp python-libxml2 python-libxslt1 python-serial
0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded.
Need to get 904 kB of archives.
After this operation, 5,546 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Err:1 https://repo.puri.sm/pureos amber/main amd64 python-libxml2 amd64 2.9.4+dfsg1-7+b3
  404  Not Found [IP: 138.201.228.45 443]
Get:2 https://repo.puri.sm/pureos amber/main amd64 python-libxslt1 amd64 1.1.32-2.2~deb10u1 [141 kB]
Get:3 https://repo.puri.sm/pureos amber/main amd64 python-serial all 3.4-4 [83.0 kB]
Get:4 https://repo.puri.sm/pureos amber/main amd64 chirp amd64 1:20190104-1 [474 kB]
Fetched 698 kB in 17s (41.8 kB/s)
E: Failed to fetch https://repo.puri.sm/pureos/pool/main/libx/libxml2/python-libxml2_2.9.4+dfsg1-7+b3_amd64.deb  404  Not Found [IP: 138.201.228.45 443]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

I tried both suggestions, apt update and --fix-missing. This still fails.

I checked the link that was given in the output messages, and it also shows the file missing with a 404 message.

Re-checking for that specific package in my apt database:

$ apt list python-libxml2
Listing... Done
python-libxml2/amber 2.9.4+dfsg1-7+b3 amd64

Everything seems to match up. If I am missing something, it is not obvious to me.

This works on Debian 10 (buster) where python-libxml2 is 2.9.4+dfsg1-7+deb10u1. (Same version number.) Though that is my old Lenovo system, I can live with that for a while, and at least for me, this is not a high priority.

Event Timeline

Wayne created this task.Dec 14 2020, 13:05
jeremiah.foster triaged this task as Normal priority.Thu, Dec 17, 10:42

This may be caught in a transition from python2.7 to python3 in Debian. python2.7 is approaching end of life and will be deprecated soon. I see that libxml2 is support with another library for python3;

python3-lxml - pythonic binding for the libxml2 and libxslt libraries

It may be that the chirp application has not yet updated their python dependencies.

Wayne added a comment.Thu, Dec 17, 11:36

Thanks. I understand there is a transition here. I will close this, but

  1. I thought Amber was essentially Buster with PureOS modifications? Why would the 'old' package be in Buster and not Amber?
  2. Why is this package listed as part of Amber, but it is not actually there?

Amber is Buster, yes.

I definitely see it in Amber;

Our software search tool;

https://software.pureos.net/package/bin/amber/python-libxml2
$ apt-cache search python-libxml2
python-libxml2 - Python bindings for the GNOME XML library
python-libxml2-dbg - Python bindings for the GNOME XML library (debug extension)

I don't understand why it is not showing up for you. What do you see when you do;
apt-cache search python-libxml2

Wayne added a comment.Fri, Dec 18, 04:11

This is what I see for that command:

python-libxml2 - Python bindings for the GNOME XML library
python-libxml2-dbg - Python bindings for the GNOME XML library (debug extension)

I also see that package in the link you provided, which is different from the repository. But, as I said in my initial information, I see it fine with 'apt', but I do not see the package in 'repo.puri.sm'.

Err:1 https://repo.puri.sm/pureos amber/main amd64 python-libxml2 amd64 2.9.4+dfsg1-7+b3
  404  Not Found [IP: 138.201.228.45 443]

(Is the IP resolving correctly?)

But the issue is not that you can't see it in the repos - just that it won't install on your machine, right?

Wayne added a comment.Fri, Dec 18, 12:18

No. The package does not appear to be in the actual repos (repo.puri.sm), even though 'apt' and your link say it should be there.

You can try the link as reported by 'apt' yourself.

I think if the package were actually in the repository, I could install it without any issues.

What does sudo apt-update && sudo apt install python-libxml2 say?

I don't think it is an IP issue because the IP resolves correctly. I think it is a version issue.

Wayne added a comment.Mon, Dec 21, 09:33

As I mentioned in my initial post, I already tried the 'update' and the --fix-missing, so your commands yield the same errors as I have mentioned before. Have you checked that the file is actually on repo.puri.sm?

sudo apt update && sudo apt install python-libxml2 
Hit:1 http://ppa.launchpad.net/opencpn/opencpn/ubuntu bionic InRelease
Hit:2 https://repo.puri.sm/pureos amber InRelease                              
Hit:3 https://repo.pureos.net/pureos amber-security InRelease                  
Hit:4 https://repo.pureos.net/pureos amber-updates InRelease
Reading package lists... Done
Building dependency tree       
Reading state information... Done
All packages are up to date.
Reading package lists... Done
Building dependency tree       
Reading state information... Done

<snipped some autoremove messages that just appeared>

The following NEW packages will be installed:
  python-libxml2
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 206 kB of archives.
After this operation, 982 kB of additional disk space will be used.
Err:1 https://repo.puri.sm/pureos amber/main amd64 python-libxml2 amd64 2.9.4+dfsg1-7+b3
  404  Not Found [IP: 138.201.228.45 443]
E: Failed to fetch https://repo.puri.sm/pureos/pool/main/libx/libxml2/python-libxml2_2.9.4+dfsg1-7+b3_amd64.deb  404  Not Found [IP: 138.201.228.45 443]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
Wayne added a comment.Tue, Dec 22, 03:23

Jeremiah, you were correct. There is a difference in versions, but I do not know why my apt database has a different one, i.e. python-libxml2_2.9.4+dfsg1-7+b3_amd64.deb. I tried to purge it and get the new listing, but to no avail.

I guess I had a brain freeze; I could have looked on the repository myself with https. (I guess I am used to getting errors when I try to access directories only.) When I did, I saw the file: python-libxml2_2.9.4-dfsg1-7-deb10u1_amd64.deb.

This is consistent with the link you posted earlier.

I'll play around with this and see if I can somehow get it to see the new one. Thanks for your help and ideas.

Wayne closed this task as Resolved.Tue, Dec 22, 11:05
Wayne claimed this task.

I was finally able to make this work by erasing repo.puri.sm_pureos_dists_amber_main_binary-amd64_Packages in /var/lib/apt/lists and then doing the 'apt update.' I am not sure why this did not work by simply doing apt update, but it seems to have gotten stuck somehow.

Thanks for the help. Whether you knew it or not, you gave me clues.

Glad you tracked down the issue! Nice sleuthing!

Wayne added a comment.Tue, Dec 22, 11:42

BTW, though I do not know what caused this, I am glad it happened. I had 86 updates awaiting that I never knew about.