#! /usr/bin/python3 import sys from clint import arguments from clint.textui import puts, indent, colored from epicli import EPIC def usage(): puts("Usage") with indent(4): puts("epic [FLAGS...] ACTION") puts("Actions") with indent(4): puts("showlist : Shows alls epi files avaliables to be installed with EPIC") puts("showinfo PATH or NAME APP_EPI_FILE : Shows information about APP_EPI_FILE") puts("install PATH or NAME APP_EPI_FILE or ...") puts("uninstall PATH or NAME APP_EPÌ_FILE or ...") puts("Flags") with indent(4): puts("-h --help : Show help") puts("-u --unattended: Run the install/uninstall without prompting for user confirmation") puts("-nc --nocheck: Run the install/uninstall without previous system checking") puts("-d --debug: Run the install/uninstall in debug mode") sys.exit(1) #def usage if __name__ == '__main__': args = arguments.Args().copy mode=False nocheck=False debug=False app_file=None pkgsToInstall=[] if args.contains(["-h","--help"]) or len(args.all) == 0 : usage() if args.contains(["-u","--unattended"]): mode=True index = args.first(["-u","--unattended"]) args.pop(index) if args.contains(["-nc","--nocheck"]): nocheck=True index = args.first(["-nc","--nocheck"]) args.pop(index) if args.contains(["-d","--debug"]): debug=True index = args.first(["-d","--debug"]) args.pop(index) action = args.pop(0) if action!="showlist": app_file=args.get(0) args.pop(0) if len(args.all)>0: for item in args.all: pkgsToInstall.append(item) if app_file ==None: usage() epic = EPIC(app_file,pkgsToInstall,debug) if action=="showlist": sys.exit(epic.listEpi()) if action == "showinfo": sys.exit(epic.showInfo()) elif action=="install": sys.exit(epic.install(mode,nocheck)) elif action=="uninstall": sys.exit(epic.uninstall(mode,nocheck)) else: usage()