Pacman --sync --refresh --refresh --sysupgrade repo package errors

A couple of questions.

  1. Given the repo status in the image below, should one wait to do a --sync --refresh --refresh?

  2. I’m not sure why the Stable column is marked with an “x”. I’ve been watching the “[Stable Update]” Announcements, 11-04, 11-18, 11-22 and the mirrors seemed to be updated after an announcement. The “Unstable” column changed, but that is expected. Is something wrong? I did create a feedback entry with a feature request for

  3. I have not been able to do a clean update, getting errors like “Zstd decompression failed, corrupted block”, “restores data doesn’t match checksum”, “invalid or corrupted package (PGP signature)”?

You dont do that at all.
You are missing --sysupgrade
(-Syyu, not -Syy)

Unless there is something wrong with that page it should be correctly displaying whether a mirror is synced with current branch packages.
As of now in the US that appears to only be 3 of the mirrors.

Then something is wrong and you should post about that error. With the output and all.

1 Like

I’ve only been running Manjaro seriously on a VM. I’m hoping to install it as my main distro with XFCE soon.

  1. For this specific question, I should have put the -u in the text above, and that is what I was using consistently.

  2. If I can provide additional info, just let me know. I included the timestamp in the upper right, “2020-11-25 02:03”, and all but one repo had an “x” in the Stable column, but I didn’t see a corresponding Announcement.

  3. Will do, but I’d like to try to fix it myself so I understand all the parts.

Well okay… I just tried it and it completed successfully. Isn’t that the way it goes :slight_smile: I wanted to prove I could get a successful, repeatable, install. So when I got the error, I restored the machine and tried again, hours or days later.

From a lot of reading, I am leaning towards the problem in the cache located at /var/cache/pacman/pkg/. So when I was doing the -Syyu the downloaded files were seen as corrupt in some fashion. I was hoping to pinpoint it, so if I have the issue in the future in production I could fix it quickly and painlessly :slight_smile:

Is there a pacman option pairing to update the sync database and download the files to cache but not install? I haven’t found one, but just in case I missed it…

Is there a current utility to check the integrity of the files in cache?

I was examining the parts of pacman and was wondering if it was possible to check the hash/checksum of the files in the cache. Initially, I’m planning on keeping 3 versions of the files in cache using paccache.

Just wondering, is /var/cache/pacman/pkg/ transferable? In other words, can it be cloned and copied to another machine, and the other machine would only need to update the sync database. For sake of simplicity, lets assume they have the same software installed.

(1) /var/cache/pacman/pkg/package_name.pkg.tar.zst (executable, help, libs, etc)

(2) /var/lib/pacman/sync/

 (2.1) *.db (archived gzip; community, core, extra, multilib; all) 
         desc (txt) (same as (2.2))

 (2.2) *.files (archived gzip; community, core, extra, multilib; `-F`)
         desc (txt) (same as (2.1))
         files (same as (3))

(3) /var/lib/pacman/local/* (installed)
         desc (txt)
         files (txt)  (same as (2.2))
         mtree (gzip) timestamps, size checksums, permissions
pacman -S --downloadonly

As I know packages are checked with the signatures.

In theory yes, but never done this.

Okay, how did I miss that :blush:

I got an error and found this matching entry that says the user need pacman -Syuw, and then pacman -Su. In my mind, it seems like -w|--downloadonly modifies -u.

I ran into the command, checkupdates. It is part of the pacman package. It has a -d|--download option, which says, “Download any pending updates to the pacman cache”. It’s a bash script and uses pacman -Sw with an array of out-of-date packages produced by pacman -Qu.

Sure. I’ve even shared it across machines via nfs in the past.