{ pkgs, config, lib, ... }: let cfg = config.grimmShared; in { config = with cfg; lib.mkIf (enable && network) { networking.networkmanager.enable = true; networking.useDHCP = lib.mkDefault true; hardware.bluetooth.enable = lib.mkDefault laptop_hardware.enable; environment.systemPackages = with pkgs; [ wireguard-tools ]; }; imports = [ ./bluetooth.nix ]; options.grimmShared.network = with lib; mkOption { type = types.bool; default = false; description = "Enables network manager, wifi and bluetooth"; }; }