Skip to main content
Topic: Mirrors outdated -> packages break (Read 279 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Mirrors outdated -> packages break

Hello,

the Artix mirrors are outdated, again.
Arch:
https://www.archlinux.org/packages/core/x86_64/icu/download/icu-64.1-1-x86_64.pkg.tar.xz
Artix:
https://mirrors.dotsrc.org/artix-linux/repos/system/os/x86_64/icu-63.1-2-x86_64.pkg.tar.xz
http://mirror1.artixlinux.org/repos/system/os/x86_64/icu-63.1-2-x86_64.pkg.tar.xz
https://artix.rw-net.de/repos/system/os/x86_64/icu-63.1-2-x86_64.pkg.tar.xz

The consequence this time: thunderbird-60.6.1-2 is broken because it is build against icu-64.
Come on boys where is the quality control ?
What do you plan to do to prevent future annoying incidents like this ?

Re: Mirrors outdated -> packages break

Reply #1
Enable 'gremlins' repository in /etc/pacman.conf.  That will give you the updated icu.

Re: Mirrors outdated -> packages break

Reply #2
Enable 'gremlins' repository in /etc/pacman.conf.  That will give you the updated icu.

This is not the right thing to do.
This is a testing repository, not supposed to be used on production systems.
Enabling the 'gremlins' repository is making things worse in the future.
Download and install the up-to-date icu-64.1-1 package *once* from the Arch or 'gremlins' repository is the right thing to do.

Re: Mirrors outdated -> packages break

Reply #3

What do you plan to do to prevent future annoying incidents like this ?

More people getting involved instead of complaining, and never be ill as right now.

Re: Mirrors outdated -> packages break

Reply #4
Download and install the up-to-date icu-64.1-1 package *once* from the Arch or 'gremlins' repository is the right thing to do.

No it is not, you are not on arch you are on artix.  For artix to be rebuilding a package from arch to have its own there must be a reason, and there is also a reason to place it in gremlins/testing and not directly to system.  Have you checked what indirectly depends on icu and do you know how many other pkgs would break because of the upgrade?
Artix doesn't have control on arch repositories, when things appear there it takes time to build and upload to mirrors to adjust. 

The solution would have been to build the 30 some pkgs associated with thunderbird and have them on artix.  The packagers wanted thread is still open.

The right thing to do is to have reverted thunderbird to the one you had before and waited a couple of days.  I am on gremlins and can't say I've had any problems but there were pkgs built against 63 and broke with 64.   It is the nature of the beast.

In Debian icu is 52 on Jessie, 57 on stable, 63 on testing and unstable, by comparison.  But chasing after supertankers with a sailing dinghy and trying to keep up has its "ups and downs", when they run aground you can keep sailing over the reef.

Re: Mirrors outdated -> packages break

Reply #5
Every time icu updates, a lot of packages break. Is it possible to link packages statically against it?

Re: Mirrors outdated -> packages break

Reply #6
This is not a not enough people problem.
More people would not scale on this kind of problem.
This is a not enough thinking problem.
You can't just take the updates from Arch over.
You have to build your own fully automated updates testing facility.
The absolute minimum is a fully automated check like this:
Code: [Select]
Example: thunderbird

mkdir /tmp/thunderbird
tar -xJC /tmp/thunderbird/ -f /var/cache/pacman/pkg/thunderbird-60.6.1-2-x86_64.pkg.tar.xz

for EXE in `find /tmp/thunderbird/ -type f -executable`; do ldd $EXE; done | grep -e 'not found' | cut -f1 -d ' ' | sed 's/^[\t ]*//g' | tee /tmp/thunderbird/lddnotfound.txt
pacman -Qi thunderbird | grep -e '^Optional Deps' | cut -f 2 -d ':' | cut -f 2 -d ' ' | pacman -Ql - | cut -f2 -d ' ' | grep -ve "./$" >/tmp/thunderbird/optionaldep.txt
for NOOP in `cat /tmp/thunderbird/optionaldep.txt`; do grep -ve "$NOOP" /tmp/thunderbird/lddnotfound.txt; done | sort -u

If you get any  hits, you have a unresolved dependency. (btw. thunderbird has non-documented optional (LDAP, etc) dependencies)
And you can't put the package to the update without resolving the missing non-optional dependency.
Just that would have prevented the thunderbird update with the missing icu dependency.

Re: Mirrors outdated -> packages break

Reply #7
Huh? How would that prevent thunderbird from updating? Thunderbird is a package from Arch. If you have the extra repo enabled, then pacman will get any updates from there like its supposed to do. Artix can't magically be 100% lockstep with Arch repos. These things are going to happen from time to time.

Re: Mirrors outdated -> packages break

Reply #8
Wait, the extra repo is a original Arch repo without buffering through Artix ?
And the dependencies of the extra repo are local Artix ?
This can't work.

Re: Mirrors outdated -> packages break

Reply #9
Yes, the extra repo is the extra repo from Arch. How would it "buffer" through Artix? Artix devs have no control over what Arch hosts. If you enable a repo, pacman will look for it. That's the way it's supposed to work.

And the dependencies of the extra repo are local Artix ?
This can't work.


It's fine 99% of the time. Occasionally, dependencies will get out of sync in a breaking way, so you just temporarily downgrade or whatever. It's a small team, you can't expect them to simply duplicate Arch's entire package database.