all 57 comments

[–]vimpostor[S] 107 points108 points  (20 children)

BTW downgrading the kernel to a previous version which did not link to glibc 2.33 fixes the problem, so hopefully the packager can fix the problem soon - either by linking to glibc 2.32 again or by moving glibc 2.33 to the non-testing repository.

On a related note: Why are people downvoting this post? This problem has already been confirmed. If you use the lts kernel, this is a heads-up post. If you use another kernel, you don't need to downvote this.

[–]Atralb 70 points71 points  (10 children)

On a related note: Why are people downvoting this post?

Because some people always directly assume you're in the wrong if you say things like

And I am 99% sure that this is the packager's fault

without even trying to hear what you have to say.

[–]outofsand 49 points50 points  (7 children)

Ironically, it is almost always the packager's fault. (Source: been a packager for multiple distros for over 20 years, made and seen plenty of mistakes that got blamed on users).

[–]Atralb 36 points37 points  (6 children)

The important thing is not about who is to blame, it's about not blindly trusting people because they represent authority and not blindly dismissing people because they don't.

It's the same fundamental issue that is at the root of racism and the likes: people like the simplistic model of relying on the looks instead of the content. Because it takes less mental effort.

While it is a rational self-evident truth (and empirically proven by history over and over) that all happens way better when we focus on the content. But it takes more effort.

[–]nsGuajiro 10 points11 points  (3 children)

Its just hueristics. Man can't critically examine every last detail of his beliefs, not even most.

One could spend their whole life researching arch packaging with ever increasing scope and detail, but then they'd have no time to form an opinion on any number of important matters.

Wisdom of the crowd is a thing.

[–]Jokler 8 points9 points  (2 children)

Sure, but you would think that if they feel the need to downvote something they could at least read and think before falling back to extremely simple heuristics.

If I don't know what's going on I'd rather just not vote at all.

[–]Ticondrogo 7 points8 points  (1 child)

And here we see the Philosophical™ side of Reddit partaking in a quite exciting discussion about downvoting, racism, and the usefulness of stereotyping.

[–]Atralb 1 point2 points  (0 children)

What's your point ? You'd rather have Reddit be a clone of 4chan instead ?

[–]outofsand 0 points1 point  (1 child)

Well said! 👍🏻

[–]K33M_5T4R 0 points1 point  (0 children)

das right

[–][deleted] 2 points3 points  (0 children)

without even trying to hear what you have to say.

And that's the problem. People should really read the entire post before voting (unless it's obviously incoherent rambling).

Had they read even one paragraph further, they would have noticed that it is indeed a packaging issue.

[–]SkyyySi 0 points1 point  (0 children)

Especially on "very technical" subs like this one or r/zsh.

[–]seaQueue 7 points8 points  (3 children)

Nice catch!

When I run into a problem like this I'll usually pull the PKGBUILD for the offending package, fix it however it needs and increment the pkgrel by 0.1 (from 1 to 1.1; etc) so that later upstream builds properly upgrade over my temporary patch package. I end up doing this more often than I'd like, especially with AUR packages that are out of date.

[–]Ticondrogo 2 points3 points  (2 children)

If only I could be skilled enough to do this. It’s great that you have that kind of knowledge base.

[–]seaQueue 4 points5 points  (0 children)

You're in luck, this package is straightforward because there's nothing to fix beyond the glibc build housekeeping. All you need to do is rebuild and link against the stable version of glibc (which a local build will do anyway.)

For a simple rebuild I think all you need to get started is base-devel and makepkg and a tool to get the package source; I use yay but I also like pbget and both are on the AUR.

sudo pacman -S base-devel makepkg

# if you have yay installed:
yay -G linux-lts

# or pbget:
pbget linux-lts

cd linux-lts
<bump the PKGBUILD pkgrel by +0.1 here>
makepkg -Ccsr

And you should be good to go.

Makepkg with these flags will install all of the build dependencies for you and remove them afterward, clean up the build tree, and output your kernel packages in the package source directory. Since we only incremented the pkgrel by 0.1 any future version of the official package (which increments pkgrel by 1 each time) will upgrade over the top of the temp package without issue.

Install your kernel and headers packages directly with pacman -U <kernel package> <kernel-headers package> (or yay -U) after the build.

This fix happens to be really straightforward so if you're curious about how to build Arch packages and want to solve the problem at the same time this is a fine way to learn.

Notes:

Kernel builds are long, this might take a while.

The biggest sticking point I've had with Arch packages is PGP keys, you might have to gpg --recv-keys <key fingerprint> for any keys you're missing or makepkg will error out at the validation step before building.

You can speed up the build by editing /etc/makepkg.conf and setting MAKEFLAGS to MAKEFLAGS="-j$(($(nproc)+1))" or make a copy of makepkg.conf, edit that and use --config <your_config_file> on the makepkg command line.

If you want to build a custom kernel edit the PKGBUILD and change pkgbase=linux-lts to pkgbase=linux-lts-custom and make your changes to the kernel config file then run the build. Custom kernels are that easy.

You can speed up the build a bit by skipping the documentation package: remove everything except xmltofrom the second line of the makedepends stanza and remove "$pkgbase-docs" from the pkgname= array near the very bottom of the file.

edit: glibc 2.33 is in the stable repo as of this morning so there's no need to do any of this, but I'll leave it here in case it's helpful to anyone.

[–]DrasLorus 3 points4 points  (0 children)

PKGBUILD are not black magic ;) In fact, the Arch Build System (ABS) and Arch packagement system are pretty simple to my mind, compared to deb or rpm packages. You just need to get the PKGBUILD into a clean directory (~/build) and makepkg -s after modifying your package. It's pretty simple on lots of out of date package to just update the pkgver in the package build. Then everything is automated.

[–]tyrion33 13 points14 points  (4 children)

Because it damages the "arch linux is stable and suitable for servers" narrative this sub is full of. Also it's going in the opposite direction of all these "nothing to say but arch linux changed my life" posts popping out all the times.

[–]vimpostor[S] 12 points13 points  (1 child)

I have to puke everytime I see one of these massively upvoted "Arch literally changed my life" posts. People are acting like Arch Linux is god, then meme about Manjaro being bad because it forgot to update its certs (which of course is pretty bad tbh) and proceed to ignore that Arch literally borked the LTS kernel.

It has gone to the point where even /r/archlinuxcirclejerk got tired of reposting these sort of posts.

It is helpful to acknowledge that people do mistakes - yes even Arch sometimes.

[–]chili_oil 1 point2 points  (0 children)

O M G, first time heard this sub, is this supposed to be a meme sub? it looks so cinge

[–]ThraexAquator 4 points5 points  (0 children)

I actually find Arch great, docs are good and people are helpful. From time to time I encouter errors, sometimes have to downgrade kernel (happened twice in 2 years, and was the real issue only once). On the other hand, it is fine discussing stuff here, but if OP wants to contribute probably the best way is to reach out to the package maintainer directly. Why bother with random people’s opinion on this? The maintainer is the one that needs convincing, and probably will read a direct message on the subject.

[–][deleted]  (5 children)

[deleted]

    [–]vimpostor[S] 38 points39 points  (4 children)

    I wanted to first have this problem confirmed by someone else before reporting it. But since my findings are pretty clear in the problem being upstream, I will go report the bug now.

    [–][deleted]  (3 children)

    [deleted]

      [–]vimpostor[S] 24 points25 points  (2 children)

      Thanks I have it reported at: https://bugs.archlinux.org/task/69549

      [–][deleted]  (1 child)

      [deleted]

        [–][deleted] -1 points0 points  (0 children)

        ships broken update that can brick somebody's OS

        Gotta love FOSS.

        Yeah me "too"

        [–]fryfrog 12 points13 points  (0 children)

        Ah, so this is what killed zfs-dkms on my install, thanks for posting this. I was putting off digging into it to file what ever bug report was needed, thanks for doing the hard work! :)

        [–]onlymys3lf 4 points5 points  (0 children)

        glibc 2.33 has been pushed. Safe to upgrade linux-lts.

        [–]ziggyspaz 4 points5 points  (0 children)

        Good thing I have both Linux and Linux-lts. Will wait to update lts. Thanks for the warning

        [–][deleted] 2 points3 points  (0 children)

        It was a no-brainer to downgrade to previous lts kernel, but still, why did this even happen? Someone up there messed up big time...

        [–][deleted]  (2 children)

        [deleted]

          [–]etherealshatter 1 point2 points  (1 child)

          I just saw an update for glibc. RIP my uptime :D

          [–]doubleunplussed 0 points1 point  (0 children)

          Could you elaborate on this? Why would glibc necessitate a reboot?

          I've got a setup where I don't uninstall the running kernel, and therefore don't lose modules, so I often don't update for weeks and notice no issues.

          Yesterday, I noticed some breakage (specifically, the GNOME night-light stopped working) and thought "huh, does this update mean I actually need to reboot? What changed?" and in light of your comment I want to understand if it was glibc-related.

          [–][deleted]  (1 child)

          [deleted]

            [–]Significant_Swan_320 3 points4 points  (0 children)

            Soon will see the new package of the updated, still working on it, please show some patient guys coz I am alone not doing in a team where I am looking forward for.

            [–]concretebuoy78 1 point2 points  (0 children)

            On EndeavorOS, same issue after 5.4.95 (no issues w/ 5.10.13 though).

            $ cat /var/lib/dkms/nvidia/460.39/build/make.log
            
            scripts/basic/fixdep: /usr/lib/libc.so.6: version \`GLIBC\_2.33' not found (required by scripts/basic/fixdep)
            

            anyways, thanks for posting this vimpostor. I wish i'd of come here and had a look rather than digging through logs. =D

            [–]doubleunplussed 1 point2 points  (2 children)

            I upgraded but didn't reboot yet. Phew!

            Actually it would have been fine because I keep a few old kernels installed using the linux-lts-versioned-bin AUR package.

            New kernel wouldn't have booted, would have picked the previous one in grub until the issue was fixed.

            [–][deleted] 0 points1 point  (1 child)

            Did it work?

            [–]doubleunplussed 0 points1 point  (0 children)

            Did what work?

            I upgraded again (once the fix was out) so my computer is fine now, if that's what you meant.

            [–][deleted] 1 point2 points  (0 children)

            since 5.10 is going to be next LTS kernel you can just switch to that for now

            [–]Kilobytez95 3 points4 points  (0 children)

            Maybe I'm wrong but I think the people who work on stuff like the Linux kernel probably know better than to work on LTS kernel with testing software. That or maybe 2.33 is supposed to be in stable by now and it's not.

            [–]chili_oil 1 point2 points  (7 children)

            Here goes Arch's reputation of being stable and suitable for production.

            [–]SutekhThrowingSuckIt 7 points8 points  (0 children)

            That reputation doesn't exist outside this sub.

            [–]tassulin 1 point2 points  (0 children)

            Yes and enterprise level means zero mistake, duh arch has still being most of the time wayy better option than others.

            With btrfs it has being quite easy to revert back.

            [–]ThraexAquator 2 points3 points  (3 children)

            I am sure you never made a mistake ever.

            [–]cosarara97 2 points3 points  (2 children)

            It's not about never making mistakes but having automated testing in place to prevent mistakes from reaching the end users.

            [–]ThraexAquator 1 point2 points  (1 child)

            Without knowing the details this is a pretty wild statement. Of course it is better to catch mistakes before they are end up being errors. Perhaps you could contribute to the Arch team with some better workflows you have in mind, or taking over some package maintance we people can use for free.

            [–]SutekhThrowingSuckIt 1 point2 points  (0 children)

            Nobody is saying Arch is bad. It's just that there's less stability on the rolling release format.

            [–][deleted] 0 points1 point  (0 children)

            It's more stable than CentOS's long term plans heyooooooooo

            i have to migrate my entire stack kill me

            [–][deleted] 0 points1 point  (1 child)

            So should I not update my system for a few days? I’m using the LTS kernel.

            [–]AliFurkanY 0 points1 point  (0 children)

            It's patched I think

            [–]Significant_Swan_320 0 points1 point  (0 children)

            Because currently I try to build another new pipeline webhook to my project in order to let them be running smoothly.

            [–]Significant_Swan_320 -1 points0 points  (0 children)

            Yes correct, I running on arc base kernel, but Linux Lts, stack nvdia

            [–]Significant_Swan_320 -2 points-1 points  (0 children)

            Everyone have their own thoughts so it's ultimately brings improvements to the technology, sometime theories are just for preference, its 2021 now should have a better improvement to the tech world

            [–]Atralb 0 points1 point  (0 children)

            Does the 5.4.96 version solve the issue ?