def sysprep(disk, distro, loader=None, backend='<STR_LIT>', **kwargs):
if loader is None:<EOL><INDENT>loader = PackageLoader('<STR_LIT>', '<STR_LIT>')<EOL><DEDENT>sysprep_file = _render_template(distro, loader=loader, **kwargs)<EOL>cmd = ['<STR_LIT>', '<STR_LIT>', disk]<EOL>cmd.extend(['<STR_LIT>', sysprep_file])<EOL>env = os.environ.copy()<EOL>if '<STR_LIT>' not in env:<EOL><INDENT>env['<STR_LIT>'] = backend<EOL><DEDENT>ret = utils.run_command(cmd, env=env)<EOL>if ret:<EOL><INDENT>raise RuntimeError(<EOL>'<STR_LIT>' % (<EOL>disk,<EOL>'<STR_LIT:U+0020>'.join('<STR_LIT>' % elem for elem in cmd),<EOL>ret.out,<EOL>ret.err,<EOL>)<EOL>)<EOL><DEDENT>
Run virt-sysprep on the ``disk``, commands are built from the distro
specific template and arguments passed in ``kwargs``. If no template is
available it will default to ``sysprep-base.j2``.

Args:
    disk(str): path to disk
    distro(str): distro to render template for
    loader(jinja2.BaseLoader): Jinja2 template loader, if not passed,
        will search Lago's package.
    backend(str): libguestfs backend to use
    **kwargs(dict): environment variables for Jinja2 template

Returns:
    None

Raises:
    RuntimeError: On virt-sysprep none 0 exit code.