Commit graph

306 commits

Author SHA1 Message Date
Silvan Mosberger
14182c1970 treewide: Format all Nix files
Format all Nix files using the officially approved formatter,
making the CI check introduced in the previous commit succeed:

  nix-build ci -A fmt.check

This is the next step of the of the [implementation](https://github.com/NixOS/nixfmt/issues/153)
of the accepted [RFC 166](https://github.com/NixOS/rfcs/pull/166).

This commit will lead to merge conflicts for a number of PRs,
up to an estimated ~1100 (~33%) among the PRs with activity in the past 2
months, but that should be lower than what it would be without the previous
[partial treewide format](https://github.com/NixOS/nixpkgs/pull/322537).

Merge conflicts caused by this commit can now automatically be resolved while rebasing using the
[auto-rebase script](8616af08d9/maintainers/scripts/auto-rebase).

If you run into any problems regarding any of this, please reach out to the
[formatting team](https://nixos.org/community/teams/formatting/) by
pinging @NixOS/nix-formatting.

(branch-equivalent to commit 374e6bcc40)
2025-04-01 20:11:51 +02:00
Silvan Mosberger
d9d87c5196 treewide: format all inactive Nix files
After final improvements to the official formatter implementation,
this commit now performs the first treewide reformat of Nix files using it.
This is part of the implementation of RFC 166.

Only "inactive" files are reformatted, meaning only files that
aren't being touched by any PR with activity in the past 2 months.
This is to avoid conflicts for PRs that might soon be merged.
Later we can do a full treewide reformat to get the rest,
which should not cause as many conflicts.

A CI check has already been running for some time to ensure that new and
already-formatted files are formatted, so the files being reformatted here
should also stay formatted.

This commit was automatically created and can be verified using

    nix-build a08b3a4d19.tar.gz \
      --argstr baseRev 0128fbb0a5
    result/bin/apply-formatting $NIXPKGS_PATH
2024-12-10 20:29:24 +01:00
Andrew Marshall
9ce881027b zfs: remove recommendations to use unstable
`pkgs.zfs_unstable` is pre-release software and may very well have
critical bugs that make it unsuitable for general use. As such, we
should not recommend it as a general solution to the problem of "my
Kernel is too new for stable ZFS".
2024-11-01 18:50:24 -04:00
Andrew Marshall
a0de415588 nixos/zfs: improve docs for boot.zfs.devNodes option
Specify more clearly how this is used, and defer to upstream docs for
guidance on selecting it.
2024-10-31 09:04:11 -04:00
Andrew Marshall
0f69b960b8 nixos/zfs: teach to override devNodes per pool
This may be useful if some pools use LUKS or some other intermediate
layer, while others do not.
2024-10-30 10:41:18 -04:00
Sandro Jäckel
91cf1d31c8 nixos/zfs: fix shellcheck findings with enableStrictShellChecks enabled 2024-10-30 08:33:57 +00:00
Franz Pletz
cc2142b9f0
nixos/zfs: remove incorrect conditional use of spl kmod; remove withs (#344271) 2024-09-28 15:30:13 +02:00
Andrew Marshall
bec753ddfc nixos/zfs: replace with with let
The fully-qualified name would certainly be a lot here, but `with` can
still be unclear even with narrow scope. A short `let` adds clarity
without significantly increasing verbosity.
2024-09-27 08:08:31 -04:00
Andrew Marshall
eef4c18ae8 nixos/zfs: remove unused vars 2024-09-27 08:08:31 -04:00
Andrew Marshall
33bd85a6c8 nixos/zfs: remove top-level withs
As it is generally considered an anti-pattern. Removing them here in
fact exposed one bug (see previous commit).
2024-09-27 08:08:30 -04:00
Andrew Marshall
06ed2c46fb nixos/zfs: remove incorrect conditional use of spl kmod
This was incorrectly getting `lib.version` which is e.g.
`"24.11pre-git"`, but should have been the ZFS package version. However,
the condition, at least per the comment, is reversed and should be
instead `versionOlder cfgZfs.package.version "2.2.0"`. However, the
entire premise seems to be incorrect, as ZFS 2.2.6 includes the spl
module. Since the previous condition here was effectively always true,
it would initially seem the best move is to remove the conditional
altogether and always include the spl kmod. However, going back to
4360a87c45 where this condition was added,
the intent appears to be that spl was no longer needed here in
the-pre-release ZFS (long since in all supported versions), due to it
being merged into ZFS mainline. Given that intent and that our boot
tests on all versions succeed without including it in the initrd, remove
it.
2024-09-27 08:08:30 -04:00
Patrick Collins
448240f6e2
nixos/nfsd: fix typo that breaks services.nfs.settings (#342200)
Currently will always fail when nfs.server.hostName is specified alongside nfs.settings.
2024-09-25 20:33:23 +03:00
Felix Buehler
dd7ab59690 nixos/services.nfs: remove with lib; 2024-09-15 10:43:58 +02:00
Aaron Ecay
345618de26
nixos/zfs: mitigate data loss issues when resuming from hibernation 2024-09-06 13:39:21 -04:00
Will Fancher
c653608dcd overlayfs: Assert that upperdir == null requires systemd initrd 2024-08-30 15:18:36 -04:00
Will Fancher
160ff9ff9c overlayfs: Use depends 2024-08-30 15:18:36 -04:00
7c6f434c
da64ac6beb
Merge pull request #310807 from Naxdy/work/improve-btrfs-autoscrub
nixos/btrfs: refactor & improve device selection for autoScrub
2024-08-03 15:31:32 +00:00
misuzu
4df3c4c17b nixos/clevis: add support for parent encrypted zfs datasets 2024-06-12 21:21:50 +03:00
Naxdy
d0239a1e50
nixos/btrfs: improve default selection of filesystems for autoScrub 2024-05-11 12:10:38 +02:00
Naxdy
804bc033a6
nixos/btrfs: refactor global with lib; 2024-05-11 11:50:58 +02:00
Franz Pletz
338a208e7d
Merge pull request #287505 from jpds/zfs-scrub-trim-randomizedDelaySec 2024-05-10 02:11:13 +02:00
Jonathan Davies
8e0e9bdee8 nixos/zfs: Added a randomizedDelaySec option to ZFS autoscrub/trim timers
Allows operators to space out these IO operations across a fleet of
machines, rather than have them all happen at the same time.
2024-05-03 15:01:53 +01:00
Jonathan Davies
5b671b7fc8 nixos/zfs: Default autoscrub interval to monthly 2024-05-03 13:41:51 +01:00
stuebinm
6afb255d97 nixos: remove all uses of lib.mdDoc
these changes were generated with nixq 0.0.2, by running

  nixq ">> lib.mdDoc[remove] Argument[keep]" --batchmode nixos/**.nix
  nixq ">> mdDoc[remove] Argument[keep]" --batchmode nixos/**.nix
  nixq ">> Inherit >> mdDoc[remove]" --batchmode nixos/**.nix

two mentions of the mdDoc function remain in nixos/, both of which
are inside of comments.

Since lib.mdDoc is already defined as just id, this commit is a no-op as
far as Nix (and the built manual) is concerned.
2024-04-13 10:07:35 -07:00
Luís Fonseca
38b68216a5
nixos/zfs: install zfs udev rules on stage1
Install zfs udev rules on initrd, so that /dev/zvol gets populated.
2024-04-08 02:53:01 +01:00
Matt Moriarity
10035ed5ab nixos/bcachefs: support unlock with clevis in systemd stage 1 2024-04-05 14:39:11 +00:00
Aaron Andersen
c4719710f0
Merge pull request #298068 from posch/manage-gids
nixos/nfsd: settings for /etc/nfs.conf
2024-04-01 16:15:10 +00:00
Tobias Poschwatta
ee2b899ff7 nixos/nfsd: settings for /etc/nfs.conf
services.nfs.settings is added for options that go into /etc/nfs.conf.

There are services.nfs.server.extraNfsdConfig and
services.nfs.extraConfig, but they have drawbacks.  They overlap in
scope (nfs.extraConfig can also add nfsd options). They require that one
writes INI syntax. They often produce nfs.conf files with duplicate
section names, which is confusing.

This deprecates services.nfs.server.extraNfsdConfig and
services.nfs.extraConfig.

services.nfs.settings cannot be used together with
services.nfs.server.extraNfsdConfig or services.nfs.extraConfig.
2024-03-25 12:22:48 +01:00
Jörg Thalheim
3a8e8369a6 envfs: 1.0.3 -> 1.0.6
Diff: https://github.com/Mic92/envfs/compare/1.0.3...1.0.6
2024-03-24 10:26:45 +01:00
Adam C. Stephens
b52452f8c7
Merge pull request #291951 from amarshall/zfs-pkgs-renaming
zfs: rename zfsStable -> zfs_2_2; zfsUnstable -> zfs_unstable; remove enableUnstable option in favor of package
2024-03-01 10:09:12 -05:00
Andrew Marshall
1f32eb724d nixos/zfs: Remove enableUnstable in favor of setting package
This just adds complexity and confusion. Once-upon-a-time, there was no
`package` and only `enableUnstable`, but now it is just confusing to
have both, as it would be possible to do e.g. `package = pkgs.zfs` and
`enableUnstable = true`, but then `enableUnstable` does nothing.
2024-02-27 19:30:19 -05:00
Andrew Marshall
929fcf9335 zfs_unstable: Rename from zfsUnstable
This matches the naming of other zfs_* pkgs.
2024-02-27 18:45:55 -05:00
Andrew Marshall
ce5b1e007e nixos/zfs: Fix typo in option doc 2024-02-27 18:45:55 -05:00
Alyssa Ross
45f1428902
zfs_2_1: 2.1.14 -> 2.1.15
This adds compatibility with newer kernels, which fixes
nixosTests.zfs.series_2_1, which broke when the default kernel version
was bumped.

This means we no longer need the removeLinuxDRM option at all, but
I've kept it around as a no-op so people can leave it set in case the
same thing happens again in future.
2024-02-27 13:44:16 +01:00
Alyssa Ross
2b9f043823
zfs: update latestCompatibleLinuxPackages
ZFS no longer tries to use GPL-only symbols on aarch64.

Tested by building nixosTests.zfs.stable (modified to use Linux 6.6)
and nixosTests.zfs.unstable.
2024-02-26 12:27:10 +01:00
pennae
258b935d70 nixos/filesystems: make supportedFilesystems an attrset
this lets us *dis*able filesystem explicitly, as is required by e.g. the
zfs-less installer images. currently that specifically is only easily
possible by adding an overlay that stubs out `zfs`, with the obvious
side-effect of also removing tooling that could run without the kernel
module loaded.
2024-02-19 11:46:52 +01:00
nikstur
1c1cfa073a nixos/filesystems: init overlayfs 2024-02-07 22:13:00 +01:00
Jörg Thalheim
559ddda570
Merge pull request #279852 from Madouura/pr/bcachefs
bcachefs: update comments, release-notes, only use IFS for bcachefs, update bcachefs-tools and module
2024-01-25 01:11:04 +01:00
Lassulus
65f1d64303
Merge pull request #279923 from jopejoe1/sshfs
nixos/filesystems: set `system.fsPackages` for sshfs
2024-01-24 22:04:41 +01:00
Madoura
c3316bcce4
nixos/bcachefs: add 'bcachefs-tools' to (udev/systemd).packages 2024-01-16 15:19:39 -06:00
Madoura
9dfa878a20
nixos/bcachefs: clarify 'FIXME' comment on when to remove 2024-01-16 15:06:05 -06:00
Will Fancher
c6f2b53e78
Merge pull request #280296 from ancathri/getKeyLocations-nosnapshots
nixos/zfs: fix getKeyLocations when listsnaps=on
2024-01-15 11:31:25 -05:00
ancathri
51dfaf639a nixos/zfs: fix getKeyLocations when listsnaps=on
Encountered boot errors in pool with `listsnapshots=on` getKeyLocations should ignore snapshots as they will not be well-handled by createImportService later on
2024-01-12 19:06:00 -06:00
Ryan Lahfa
724d5348a6
Merge pull request #272794 from dcarosone/zpool-import-d
nixos/zfs: check pool state with -d, like import
2024-01-12 20:07:24 +01:00
jopejoe1
df5728a4f4 nixos/filesystems: init sshfs 2024-01-10 00:24:48 +01:00
K900
ef190570b8 nixos/bcachefs: use linuxPackages_latest 2024-01-08 10:47:51 +03:00
Jörg Thalheim
db59d03371
Merge branch 'master' into pr/bcachefs 2024-01-07 11:40:30 +01:00
Luflosi
c71cb77cd6
nixos/grub: use the correct ZFS version
When `config.boot.zfs.enableUnstable` is set to true, grub was built with the `zfs` package even though the rest of the system uses the `zfsUnstable` package.
The effect of this can only be seen when `zfs` and `zfsUnstable` actually differ (which is not currently the case), for example when overriding one of them locally.
2023-12-29 01:53:27 +01:00
nikstur
c9569af3e0
Merge pull request #271326 from philiptaron/shutdown.target
treewide: depend on `shutdown.target` if `DefaultDependencies=no` in almost every case
2023-12-27 08:33:26 +01:00
pacien
cf6d89525f nixos/zed: use global sendmail if configured
This simplifies the setup to receive emails from the ZFS Event Daemon
by relying on the sendmail wrapper defined by other modules such as
msmtp or Postfix.

This is more similar to how other modules like smartd deal with email
configuration.

The user is no longer required to define and rebuild their own ZFS
package to add email support.

GitHub: closes https://github.com/NixOS/nixpkgs/issues/132464
2023-12-17 18:16:08 +01:00