···28282929- `util-linux` is now supported on Darwin and is no longer an alias to `unixtools`. Use the `unixtools.util-linux` package for access to the Apple variants of the utilities.
30303131+- `fileSystems.<name>.autoFormat` now uses `systemd-makefs`, which does not accept formatting options. Therefore, `fileSystems.<name>.formatOptions` has been removed.
3232+3333+- `fileSystems.<name>.autoResize` now uses `systemd-growfs` to resize the file system online in stage 2. This means that `f2fs` and `ext2` can no longer be auto resized, while `xfs` and `btrfs` now can be.
3434+3135## Other Notable Changes {#sec-release-23.11-notable-changes}
32363337- The Cinnamon module now enables XDG desktop integration by default. If you are experiencing collisions related to xdg-desktop-portal-gtk you can safely remove `xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];` from your NixOS configuration.
-16
nixos/modules/system/boot/stage-1-init.sh
···374374375375 checkFS "$device" "$fsType"
376376377377- # Optionally resize the filesystem.
378378- case $options in
379379- *x-nixos.autoresize*)
380380- if [ "$fsType" = ext2 -o "$fsType" = ext3 -o "$fsType" = ext4 ]; then
381381- modprobe "$fsType"
382382- echo "resizing $device..."
383383- e2fsck -fp "$device"
384384- resize2fs "$device"
385385- elif [ "$fsType" = f2fs ]; then
386386- echo "resizing $device..."
387387- fsck.f2fs -fp "$device"
388388- resize.f2fs "$device"
389389- fi
390390- ;;
391391- esac
392392-393377 # Create backing directories for overlayfs
394378 if [ "$fsType" = overlay ]; then
395379 for i in upper work; do
-6
nixos/modules/system/boot/stage-1.nix
···150150 copy_bin_and_libs ${pkgs.kmod}/bin/kmod
151151 ln -sf kmod $out/bin/modprobe
152152153153- # Copy resize2fs if any ext* filesystems are to be resized
154154- ${optionalString (any (fs: fs.autoResize && (lib.hasPrefix "ext" fs.fsType)) fileSystems) ''
155155- # We need mke2fs in the initrd.
156156- copy_bin_and_libs ${pkgs.e2fsprogs}/sbin/resize2fs
157157- ''}
158158-159153 # Copy multipath.
160154 ${optionalString config.services.multipath.enable ''
161155 copy_bin_and_libs ${config.services.multipath.package}/bin/multipath
+9
nixos/modules/system/boot/systemd.nix
···588588 systemd.services."systemd-backlight@".restartIfChanged = false;
589589 systemd.services."systemd-fsck@".restartIfChanged = false;
590590 systemd.services."systemd-fsck@".path = [ config.system.path ];
591591+ systemd.services."systemd-makefs@" = {
592592+ restartIfChanged = false;
593593+ path = [ pkgs.util-linux ] ++ config.system.fsPackages;
594594+ # Since there is no /etc/systemd/system/systemd-makefs@.service
595595+ # file, the units generated in /run/systemd/generator would
596596+ # override anything we put here. But by forcing the use of a
597597+ # drop-in in /etc, it does apply.
598598+ overrideStrategy = "asDropin";
599599+ };
591600 systemd.services.systemd-random-seed.restartIfChanged = false;
592601 systemd.services.systemd-remount-fs.restartIfChanged = false;
593602 systemd.services.systemd-update-utmp.restartIfChanged = false;