From 35fb2e4ac065ed124e51144eb29d5eabd3c1425c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C6=B0=C6=A1ng=20Vi=E1=BB=87t=20Ho=C3=A0ng?= Date: Fri, 1 May 2026 12:04:01 +0700 Subject: [PATCH 1/2] nixos/etc-overlay: replace `pkgs.move-mount-beneath` with `mount` As of util-linux v2.42, we can use `mount` to move mounts beneath. --- nixos/modules/system/etc/etc.nix | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/nixos/modules/system/etc/etc.nix b/nixos/modules/system/etc/etc.nix index 65d3a5192c45..dcd2f7fccca7 100644 --- a/nixos/modules/system/etc/etc.nix +++ b/nixos/modules/system/etc/etc.nix @@ -330,11 +330,7 @@ in done # Move the new temporary /etc mount underneath the current /etc mount. - # - # This should eventually use util-linux to perform this move beneath, - # however, this functionality is not yet in util-linux. See this - # tracking issue: https://github.com/util-linux/util-linux/issues/2604 - ${pkgs.move-mount-beneath}/bin/move-mount --move --beneath "$tmpEtcMount" /etc + mount --move --beneath "$tmpEtcMount" /etc # Unmount the top /etc mount to atomically reveal the new mount. umount --lazy --recursive /etc From 1b284671a2254bf436e98902d8b54f11cc9d26cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C6=B0=C6=A1ng=20Vi=E1=BB=87t=20Ho=C3=A0ng?= Date: Tue, 19 May 2026 01:40:12 +0700 Subject: [PATCH 2/2] move-mount-beneath: drop --- .../by-name/mo/move-mount-beneath/package.nix | 31 ------------------- pkgs/top-level/aliases.nix | 1 + 2 files changed, 1 insertion(+), 31 deletions(-) delete mode 100644 pkgs/by-name/mo/move-mount-beneath/package.nix diff --git a/pkgs/by-name/mo/move-mount-beneath/package.nix b/pkgs/by-name/mo/move-mount-beneath/package.nix deleted file mode 100644 index 844e37c2978b..000000000000 --- a/pkgs/by-name/mo/move-mount-beneath/package.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ - lib, - stdenv, - fetchFromGitHub, -}: - -stdenv.mkDerivation { - pname = "move-mount-beneath"; - version = "0-unstable-2025-09-24"; - - src = fetchFromGitHub { - owner = "brauner"; - repo = "move-mount-beneath"; - rev = "f8773d1f99f9cfa2f5bf173e1b1d1b21eb1ee446"; - hash = "sha256-C7QiClwFTKBcdmGilwZSCAsaVoEDXTO9384Y/47JrPk="; - }; - - installPhase = '' - runHook preInstall - install -D move-mount $out/bin/move-mount - runHook postInstall - ''; - - meta = { - description = "Toy binary to illustrate adding a mount beneath an existing mount"; - mainProgram = "move-mount"; - homepage = "https://github.com/brauner/move-mount-beneath"; - license = lib.licenses.mit0; - maintainers = with lib.maintainers; [ nikstur ]; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 469e994257bc..b58e00c39c23 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1412,6 +1412,7 @@ mapAliases { moralerspace-hwnf = throw "moralerspace-hwnf has been removed, use moralerspace-hw instead."; # Added 2025-08-30 moralerspace-nf = throw "moralerspace-nf has been removed, use moralerspace instead."; # Added 2025-08-30 morty = throw "morty has been removed, as searxng removed support for it and it was unmaintained."; # Added 2025-09-26 + move-mount-beneath = throw "move-mount-beneath has been removed, it is now superseded by util-linux's mount"; # Added 2026-05-19 moz-phab = throw "'moz-phab' has been renamed to/replaced by 'mozphab'"; # Converted to throw 2025-10-27 mp3splt = throw "'mp3splt' has been removed due to lack of maintenance upstream."; # Added 2025-05-17 mpc-cli = throw "'mpc-cli' has been renamed to/replaced by 'mpc'"; # Converted to throw 2025-10-27