summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimovich <slyich@gmail.com>2023-09-08 08:05:42 +0100
committerSergei Trofimovich <slyich@gmail.com>2023-09-10 14:26:53 +0100
commit566e32dd4290d951267e2a4d44a45c4c99f04efb (patch)
tree66775307040856c56ab2ab30df9f77548dab2cd4
parentMerge pull request #254387 from NixOS/yu-re-ka-patch-2 (diff)
downloadnixpkgs-566e32dd4290d951267e2a4d44a45c4c99f04efb.tar.gz
nixos/bcache: add a `boot.bcache.enable` kill switch
My system does not use `bcache` and I sould prever my `systemPackages` not to have bcache tools. The change does not change the default but proviced usual `enable` knob.
-rw-r--r--nixos/doc/manual/release-notes/rl-2311.section.md2
-rw-r--r--nixos/modules/tasks/bcache.nix12
2 files changed, 10 insertions, 4 deletions
diff --git a/nixos/doc/manual/release-notes/rl-2311.section.md b/nixos/doc/manual/release-notes/rl-2311.section.md
index 921fe3c5cb79..5b571ca00fae 100644
--- a/nixos/doc/manual/release-notes/rl-2311.section.md
+++ b/nixos/doc/manual/release-notes/rl-2311.section.md
@@ -263,6 +263,8 @@ The module update takes care of the new config syntax and the data itself (user
- Certificate generation via the `security.acme` now limits the concurrent number of running certificate renewals and generation jobs, to avoid spiking resource usage when processing many certificates at once. The limit defaults to *5* and can be adjusted via `maxConcurrentRenewals`. Setting it to *0* disables the limits altogether.
+- New `boot.bcache.enable` (default enabled) allows completely removing `bcache` mount support.
+
## Nixpkgs internals {#sec-release-23.11-nixpkgs-internals}
- The use of `sourceRoot = "source";`, `sourceRoot = "source/subdir";`, and similar lines in package derivations using the default `unpackPhase` is deprecated as it requires `unpackPhase` to always produce a directory named "source". Use `sourceRoot = src.name`, `sourceRoot = "${src.name}/subdir";`, or `setSourceRoot = "sourceRoot=$(echo */subdir)";` or similar instead.
diff --git a/nixos/modules/tasks/bcache.nix b/nixos/modules/tasks/bcache.nix
index 35b922dc8a1d..68531a4d2fed 100644
--- a/nixos/modules/tasks/bcache.nix
+++ b/nixos/modules/tasks/bcache.nix
@@ -1,6 +1,10 @@
-{ config, lib, pkgs, ... }:
-
-{
+{ config, lib, pkgs, ... }: let
+ cfg = config.boot.bcache;
+in {
+ options.boot.bcache.enable = lib.mkEnableOption (lib.mdDoc "bcache mount support") // {
+ default = true;
+ example = false;
+ };
options.boot.initrd.services.bcache.enable = lib.mkEnableOption (lib.mdDoc "bcache support in the initrd") // {
description = lib.mdDoc ''
*This will only be used when systemd is used in stage 1.*
@@ -9,7 +13,7 @@
'';
};
- config = {
+ config = lib.mkIf cfg.enable {
environment.systemPackages = [ pkgs.bcache-tools ];