def METHOD_NAME(self, spec, prefix):
    archive = os.path.basename(self.stage.archive_file)
    # The archive.bin file is quite fussy and doesn't work as a
    # symlink.
    if os.path.islink(archive):
        targ = os.readlink(archive)
        os.unlink(archive)
        copy(targ, archive)
    # The properties file is how we avoid an interactive install.
    prop = "properties"
    with open(prop, "w") as file:
        file.write("INSTALLER_UI=silent\n")
        file.write("USER_INSTALL_DIR=%s\n" % prefix)
        file.write("LICENSE_ACCEPTED=TRUE\n")
    # Running the archive file installs everything.
    set_executable(archive)
    inst = Executable(join_path(".", archive))
    inst("-f", prop)
    return