{ pkgs, lib, ... }: let definedInPersonalDotNix = lib.mkDefault (throw "Configuration option missing from personal.nix"); in { programs.fish.enable = true; users.users = { fruchti = { isNormalUser = true; extraGroups = [ "wheel" "networkmanager" "audio" "video" ]; openssh.authorizedKeys.keys = definedInPersonalDotNix; shell = pkgs.fish; }; }; users.extraGroups = { system = { members = [ "fruchti" ]; }; }; security.sudo.extraRules = [ { groups = [ "wheel" ]; commands = [ { command = "${pkgs.nixos-rebuild}/bin/nixos-rebuild *"; options = [ "NOPASSWD" ]; } ]; } ]; }