-
-
Notifications
You must be signed in to change notification settings - Fork 18.1k
{k3s,nixos/kubernetes}: use util-linux.withPatches #409332
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -336,7 +336,10 @@ in | |
| [ | ||
| gitMinimal | ||
| openssh | ||
| util-linux | ||
| # TODO (#409339): remove this patch. We had to add it to avoid a mass rebuild | ||
| # for the 25.05 release. Once the staging cycle referenced in the above PR completes, | ||
| # switch back to plain util-linux. | ||
| util-linux.withPatches | ||
|
||
| iproute2 | ||
| ethtool | ||
| thin-provisioning-tools | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,39 @@ | ||
| From 7dbfe31a83f45d5aef2b508697e9511c569ffbc8 Mon Sep 17 00:00:00 2001 | ||
| From: Karel Zak <kzak@redhat.com> | ||
| Date: Mon, 24 Mar 2025 14:31:05 +0100 | ||
| Subject: [PATCH] libmount: fix --no-canonicalize regression | ||
|
|
||
| Fixes: https://github.com/util-linux/util-linux/issues/3474 | ||
| Signed-off-by: Karel Zak <kzak@redhat.com> | ||
| --- | ||
| libmount/src/context.c | 3 --- | ||
| sys-utils/mount.8.adoc | 2 +- | ||
| 2 files changed, 1 insertion(+), 4 deletions(-) | ||
|
|
||
| diff --git a/libmount/src/context.c b/libmount/src/context.c | ||
| index 0323cb23d34..15a8ad3bbd0 100644 | ||
| --- a/libmount/src/context.c | ||
| +++ b/libmount/src/context.c | ||
| @@ -530,9 +530,6 @@ int mnt_context_is_xnocanonicalize( | ||
| assert(cxt); | ||
| assert(type); | ||
|
|
||
| - if (mnt_context_is_nocanonicalize(cxt)) | ||
| - return 1; | ||
| - | ||
| ol = mnt_context_get_optlist(cxt); | ||
| if (!ol) | ||
| return 0; | ||
| diff --git a/sys-utils/mount.8.adoc b/sys-utils/mount.8.adoc | ||
| index 4f23f8d1f0e..5103b91c578 100644 | ||
| --- a/sys-utils/mount.8.adoc | ||
| +++ b/sys-utils/mount.8.adoc | ||
| @@ -756,7 +756,7 @@ Allow to make a target directory (mountpoint) if it does not exist yet. The opti | ||
| *X-mount.nocanonicalize*[**=**_type_]:: | ||
| Allows disabling of canonicalization for mount source and target paths. By default, the `mount` command resolves all paths to their absolute paths without symlinks. However, this behavior may not be desired in certain situations, such as when binding a mount over a symlink, or a symlink over a directory or another symlink. The optional argument _type_ can be either "source" or "target" (mountpoint). If no _type_ is specified, then canonicalization is disabled for both types. This mount option does not affect the conversion of source tags (e.g. LABEL= or UUID=) and fstab processing. | ||
| + | ||
| -The command line option *--no-canonicalize* overrides this mount option and affects all path and tag conversions in all situations, but it does not modify flags for open_tree syscalls. | ||
| +The command-line option *--no-canonicalize* overrides this mount option and affects all path and tag conversions in all situations, but for backward compatibility, it does not modify open_tree syscall flags and does not allow the bind-mount over a symlink use case. | ||
| + | ||
| Note that *mount*(8) still sanitizes and canonicalizes the source and target paths specified on the command line by non-root users, regardless of the X-mount.nocanonicalize setting. | ||
|
|
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -34,7 +34,7 @@ | |
| let | ||
| isMinimal = cryptsetupSupport == false && !nlsSupport && !ncursesSupport && !systemdSupport; | ||
| in | ||
| stdenv.mkDerivation rec { | ||
| stdenv.mkDerivation (finalPackage: rec { | ||
| pname = "util-linux" + lib.optionalString isMinimal "-minimal"; | ||
| version = "2.41"; | ||
|
|
||
|
|
@@ -200,6 +200,18 @@ stdenv.mkDerivation rec { | |
| ''; | ||
|
|
||
| passthru = { | ||
| # TODO (#409339): Remove this hack. We had to add it to avoid a mass rebuild | ||
| # for the 25.05 release to fix Kubernetes. Once the staging cycle referenced | ||
| # in the above PR completes, this passthru and all consumers of it should go away. | ||
| withPatches = finalPackage.overrideAttrs (prev: { | ||
|
||
| patches = lib.unique ( | ||
|
||
| prev.patches or [ ] | ||
| ++ [ | ||
| ./fix-mount-regression.patch | ||
| ] | ||
| ); | ||
| }); | ||
|
|
||
| updateScript = gitUpdater { | ||
| # No nicer place to find latest release. | ||
| url = "https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"; | ||
|
|
@@ -237,4 +249,4 @@ stdenv.mkDerivation rec { | |
| ]; | ||
| priority = 6; # lower priority than coreutils ("kill") and shadow ("login" etc.) packages | ||
| }; | ||
| } | ||
| }) | ||
Uh oh!
There was an error while loading. Please reload this page.