mirror of
https://github.com/NixOS/nixos-hardware.git
synced 2025-11-06 09:58:47 +08:00
45
lib/hardware-notes.nix
Normal file
45
lib/hardware-notes.nix
Normal file
@@ -0,0 +1,45 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
# use tail recursion to prevent whitespace padding
|
||||
mkLog = list:
|
||||
let
|
||||
head = builtins.head list;
|
||||
tail = builtins.tail list;
|
||||
in
|
||||
''
|
||||
# ${head.title}
|
||||
${head.text}${if tail == [] then "" else "\n\n${mkLog tail}"}
|
||||
'';
|
||||
in
|
||||
|
||||
{
|
||||
|
||||
options = {
|
||||
hardwareNotes = mkOption {
|
||||
internal = true;
|
||||
type = types.listOf types.optionSet;
|
||||
options = {
|
||||
title = mkOption {
|
||||
type = types.str;
|
||||
example = "Thunkpad-2000: increase self-destruct timeout";
|
||||
};
|
||||
text = mkOption {
|
||||
type = types.str;
|
||||
example =
|
||||
''
|
||||
Increase security timeout at boot using platform managment
|
||||
tool to prevent premature data loss.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
environment.etc."hardware-notes".text = mkLog config.hardwareNotes;
|
||||
};
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user