#!/usr/bin/python

from os import environ, execvp, chdir, getcwd
from os.path import exists, join, dirname
from sys import version_info, argv

def can_import(module_name):
    try:
        __import__(module_name)
    except ImportError:
        return False
    else:
        return True

def is_python_3():
    return version_info[0] >= 3

def is_current_version(file_name):
    version = map(int, file_name.replace("python", "").split("."))
    return version == list(version_info)[:2]

def launch_alternative(alternatives):
    for alternative in alternatives:
        if not is_current_version(alternative):
            for root in environ["PATH"].split(":"):
                if exists(join(root, alternative)):
                    execvp(alternative, [alternative] + argv)

def move_to_executable():
    chdir(dirname(argv[0]))

if is_python_3():
    launch_alternative(["python2", "python2.7", "python2.6"])

if not can_import("pygame"):
    launch_alternative(["python2.7", "python2.6"])

if "--go-to-dir" in argv:
    move_to_executable()

from seam.Seam import Seam

Seam().run()
