From 7b9bb0a9a1e2a0c07640efc9575be3d404d24682 Mon Sep 17 00:00:00 2001 From: Emily Date: Thu, 5 Sep 2024 15:26:13 +0100 Subject: [PATCH] nixos/installer: drop support for ReiserFS and JFS MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ReiserFS has not been actively maintained for many years. It has been marked as obsolete since Linux 6.6, and is scheduled for removal in 2025. A warning is logged informing users of this every time a ReiserFS file system is mounted. It suffers from unfixable issues like the year 2038 problem. JFS is a slightly more ambiguous case. It also has not been actively maintained for years; even in 2008 questions were being raised about its maintenance state and IBM’s commitment to it, and some enterprise distributions were opting not to ship support for it as a result. It will [indefinitely postpone journal writes], leading to data loss over potentially arbitrary amounts of time. Kernel developers [considered marking it as deprecated] last year, but no concrete decision was made. There have been [occasional fixes] to the code since then, but even the developer of much of those was not opposed to deprecating it. [considered marking it as deprecated]: https://lore.kernel.org/lkml/Y8DvK281ii6yPRcW@infradead.org/ [indefinitely postpone journal writes]: https://www.usenix.org/legacy/events/usenix05/tech/general/full_papers/prabhakaran/prabhakaran.pdf [occasional fixes]: https://www.phoronix.com/news/JFS-Linux-6.7-Improvements Regardless of whether JFS should be removed from the kernel, with all the implications for existing installations that entails, I think it’s safe to say that no new Linux installation should be using either of these file systems, and that it’s a waste of space and potential footgun to be shipping support for them on our standard installation media. We’re lagging behind other distributions on this decision; neither is supported by Fedora’s installation media. (It also just so happens that `jfsutils` is the one remaining package in the minimal installer ISO that has reproducibility issues, due to some cursed toolchain bug, but I’m not trying to Goodhart’s law this or anything. I just think we shouldn’t be shipping it anyway.) --- nixos/doc/manual/release-notes/rl-2411.section.md | 2 ++ nixos/modules/profiles/base.nix | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/nixos/doc/manual/release-notes/rl-2411.section.md b/nixos/doc/manual/release-notes/rl-2411.section.md index 0d668459f09b..85dbfc68b712 100644 --- a/nixos/doc/manual/release-notes/rl-2411.section.md +++ b/nixos/doc/manual/release-notes/rl-2411.section.md @@ -407,6 +407,8 @@ - The `openlens` package got removed, suggested replacment `lens-desktop` +- The NixOS installation media no longer support the ReiserFS or JFS file systems by default. + ## Other Notable Changes {#sec-release-24.11-notable-changes} diff --git a/nixos/modules/profiles/base.nix b/nixos/modules/profiles/base.nix index 9f32f85a61ec..be79bd205cb3 100644 --- a/nixos/modules/profiles/base.nix +++ b/nixos/modules/profiles/base.nix @@ -50,7 +50,7 @@ # Include support for various filesystems and tools to create / manipulate them. boot.supportedFilesystems = - [ "btrfs" "cifs" "f2fs" "jfs" "ntfs" "reiserfs" "vfat" "xfs" ] ++ + [ "btrfs" "cifs" "f2fs" "ntfs" "vfat" "xfs" ] ++ lib.optional (lib.meta.availableOn pkgs.stdenv.hostPlatform config.boot.zfs.package) "zfs"; # Configure host id for ZFS to work