Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] glibc: prevent broken update without causing a cycle
@ 2024-01-04  5:47 classabbyamp
  2024-01-04  5:50 ` [PR PATCH] [Updated] " classabbyamp
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: classabbyamp @ 2024-01-04  5:47 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1318 bytes --]

There is a new pull request by classabbyamp against master on the void-packages repository

https://github.com/classabbyamp/void-packages xcrypt-fix
https://github.com/void-linux/void-packages/pull/48061

glibc: prevent broken update without causing a cycle
on empty roots, depending on libxcrypt-compat causes a dependency solver cycle:
```
$ mkdir /tmp/testroot
$ xbps-install -SdR https://repo-default.voidlinux.org/current -r /tmp/testroot base-system
...
[DEBUG] Error checking glibc>=2.36_1 for rundeps: Too many levels of symbolic links
[DEBUG] Error checking libxcrypt-compat>=0 for rundeps: Too many levels of symbolic links
...
```

this is a slightly worse user experience, but it does not cause this dependency loop:
```
...
CONFLICT: glibc-2.38_4 with installed pkg pam-1.5.3_2 (matched by pam<=1.5.3_2)
Transaction aborted due to conflicting packages.
```
Users can resolve this issue by adding `pam` to the list of packages to update, which ensures that `libxcrypt` is installed and the system doesn't break.

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES** (on both systems with glibc 2.36 and empty roots)



A patch file from https://github.com/void-linux/void-packages/pull/48061.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xcrypt-fix-48061.patch --]
[-- Type: text/x-diff, Size: 1840 bytes --]

From fa9e3b0d22d228645e415a1ad13f4fe5de0786d2 Mon Sep 17 00:00:00 2001
From: classabbyamp <void@placeviolette.net>
Date: Thu, 4 Jan 2024 00:42:05 -0500
Subject: [PATCH] glibc: prevent broken update without causing a cycle

on empty roots, depending on libxcrypt-compat causes a dependency solver cycle:
```
$ mkdir /tmp/testroot
$ xbps-install -SdR https://repo-default.voidlinux.org/current -r /tmp/testroot base-system
...
[DEBUG] Error checking glibc>=2.36_1 for rundeps: Too many levels of symbolic links
[DEBUG] Error checking libxcrypt-compat>=0 for rundeps: Too many levels of symbolic links
...
```

this is a slightly worse user experience, but it does not cause this dependency loop:
```
...
CONFLICT: glibc-2.38_4 with installed pkg pam-1.5.3_2 (matched by pam<=1.5.3_2)
Transaction aborted due to conflicting packages.
```
Users can resolve this issue by adding `pam` to the list of packages to
update, which ensures that `libxcrypt` is installed and the system
doesn't break.
---
 srcpkgs/glibc/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/glibc/template b/srcpkgs/glibc/template
index 3272a1df265c1..efd7134c1a5bb 100644
--- a/srcpkgs/glibc/template
+++ b/srcpkgs/glibc/template
@@ -1,7 +1,7 @@
 # Template file for 'glibc'
 pkgname=glibc
 version=2.38
-revision=3
+revision=4
 bootstrap=yes
 short_desc="GNU C library"
 maintainer="Enno Boland <gottox@voidlinux.org>"
@@ -48,9 +48,9 @@ conf_files="
 	/etc/ld.so.conf"
 if [ "$CHROOT_READY" ]; then
 	hostmakedepends="bison gettext perl python3 texinfo"
-	# XXX: remove this on the next update
+	# XXX: remove this on the next update?
 	# ensures partial upgrades don't break things like PAM
-	depends="libxcrypt-compat"
+	conflicts="pam<=1.5.3_2"
 fi
 makedepends="kernel-libc-headers"
 lib32files="/usr/lib/gconv/gconv-modules"

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2024-01-04 18:25 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-04  5:47 [PR PATCH] glibc: prevent broken update without causing a cycle classabbyamp
2024-01-04  5:50 ` [PR PATCH] [Updated] " classabbyamp
2024-01-04  6:05 ` classabbyamp
2024-01-04  6:32 ` classabbyamp
2024-01-04  6:36 ` classabbyamp
2024-01-04 18:00 ` [PR PATCH] [Updated] " classabbyamp
2024-01-04 18:22 ` [PR PATCH] [Updated] libxcrypt: noverifyrdeps on libxcrypt-compat to prevent " classabbyamp
2024-01-04 18:25 ` [PR PATCH] [Merged]: " classabbyamp

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).