#!/usr/bin/env python

from __future__ import print_function
import os, sys, argparse
from virtualenv_emacs import EmacsEnv

def _get_cli_parser():
    formatter = argparse.ArgumentDefaultsHelpFormatter
    parser = argparse.ArgumentParser(formatter_class=formatter)
    parser.add_argument('--with-emacs', type=str, default="/usr/bin/emacs",
                        dest='emacs', metavar='EMACS', help='emacs program')
    parser.add_argument("--marmalade", action="store_true")
    parser.add_argument("--melpa", action="store_true")
    return parser

if __name__ == '__main__':
    parser = _get_cli_parser()
    args = parser.parse_args()

    venv = os.getenv('VIRTUAL_ENV')
    if not venv:
        print("not in a virtualenv !", file=sys.stderr)
        exit(1)

    sources = []
    if args.marmalade:
        sources.append(("marmalade", "http://marmalade-repo.org/packages/"))
    if args.melpa:
        sources.append(("melpa", "http://melpa.milkbox.net/packages/"))

    env = EmacsEnv(args.emacs, venv, sources)
    env.install()

    env.check_install()
