25 lines
675 B
Nix
25 lines
675 B
Nix
{
|
|
flake.nixosModules.ntsync = {
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}: let
|
|
current_kernel_pkgs = pkgs.linuxPackages_latest;
|
|
current_kernel_version = current_kernel_pkgs.kernel.version;
|
|
cfg = config.hive.ntsync;
|
|
in {
|
|
options.hive.ntsync.enable = lib.mkEnableOption "Enable the nt-sync kernel driver. Enforces a minimum kernel version of 6.14.";
|
|
|
|
config = lib.mkIf cfg.enable {
|
|
# Require at least 6.14 for the new nt-sync driver
|
|
boot.kernelPackages =
|
|
if lib.versionAtLeast current_kernel_version "6.14"
|
|
then current_kernel_pkgs
|
|
else pkgs.linuxPackages_6_14;
|
|
|
|
boot.kernelModules = ["ntsync"];
|
|
};
|
|
};
|
|
}
|