{ config, lib, pkgs, inputs, quirks, ... }: let users = [ "fenix" ]; in { imports = (quirks [ "development" ]) ++ [ inputs.nixos-hardware.nixosModules.lenovo-thinkpad-p1 ]; home-manager = { users = lib.genAttrs users (user: import ./${user}.nix); }; networking = { hostName = "fenixbook"; networkmanager = { plugins = with pkgs; lib.mkForce [ networkmanager-openvpn ]; }; }; services = { }; environment.systemPackages = with pkgs; [ microcode-intel openvpn ]; users = { mutableUsers = true; users = lib.genAttrs users (user: { shell = pkgs.zsh; createHome = true; isNormalUser = true; initialPassword = "password"; group = "fenix"; extraGroups = [ "networkmanager" "ssh" "docker" "video" "pipewire" "wheel" ]; }); groups = lib.genAttrs users (user: { members = [ user ]; gid = config.users.users.${user}.uid; }); }; security.pam = { services = lib.genAttrs users (user: { gnupg.enable = true; kwallet.enable = true; }); }; }