#!/usr/bin/python3

import subprocess,argparse,random,string,crypt

parser = argparse.ArgumentParser(prog="makeuser",description="A user adding script.")
parser.add_argument("username",help="Username of user.")
parser.add_argument("email",help="Email of user.")
parser.add_argument("key",help="The user's SSH pubkey.")
args = parser.parse_args()

pw = "".join(random.sample(string.ascii_letters+string.digits,20))
cr = crypt.crypt(pw)

subprocess.run("sudo useradd -m -g 100 -p {} -s /bin/bash {}".format(cr,args.username),shell=True)
subprocess.run("echo '{}' | sudo tee /home/{}/.ssh/authorized_keys".format(args.key,args.username),shell=True)
subprocess.run("sed -e 's/username/{}/' -e 's/password/{}/' email.tmpl | sendmail {} sudoers@tilde.team",shell=True)
