{ config, lib, pkgs, ... }: let moduleName = "nix-config"; cfg = config."${moduleName}"; in { options = { "${moduleName}" = { enable = lib.mkEnableOption "Enable ${moduleName}."; }; }; config = lib.mkIf cfg.enable { system.stateVersion = "24.11"; nixpkgs.config.allowUnfree = true; nix.settings = { experimental-features = [ "nix-command" "flakes" "pipe-operators" ]; trusted-users = [ "@wheel" ]; # Add binary caches to avoid having to compile them substituters = [ "https://cache.nixos.org" "https://nix-community.cachix.org" ]; trusted-public-keys = [ "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" ]; }; programs.nix-ld.enable = true; }; }