{ pkgs, ...}: { mkUser = { name, roles ? [] }: let mkRole = role: import (../roles/home + "/${role}.nix"); roles_mod = (map (r: mkRole r) roles); in { fileSystems."/home/${name}/Downloads" = { device = "tmpfs"; fsType = "tmpfs"; options = ["size=3G"]; }; users.users.${name} = { isNormalUser = true; shell = pkgs.zsh; extraGroups = [ "wheel" ]; }; home-manager.users.${name}.imports = [ ../roles/home/common.nix ] ++ roles_mod; }; }