-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathapp.py
More file actions
42 lines (36 loc) · 1.32 KB
/
app.py
File metadata and controls
42 lines (36 loc) · 1.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
from argparse import ArgumentDefaultsHelpFormatter, ArgumentParser
from languages import language_installer
from ides import ide_installer
from utils import select_options
parser = ArgumentParser(formatter_class=ArgumentDefaultsHelpFormatter)
parser.add_argument(
"-l", "--languages",
help="Programming languages to install. Numbers should be comma separated."
)
parser.add_argument(
"-i", "--ides",
help="IDEs to install. Numbers should be comma separated."
)
# parser.add_argument(
# "-d", "--databases",
# help="Databases to install. Numbers should be comma separated."
# )
# parser.add_argument(
# "-b", "--browsers",
# help="Browsers to install. Numbers should be comma separated."
# )
args = vars(parser.parse_args())
if args["languages"] is not None:
language_args = args["languages"].split(',')
language_installer.install(language_args)
else:
selected_options = select_options("Programming Languages", language_installer)
if selected_options is not None:
language_installer.install(selected_options.split(','))
if args["ides"] is not None:
ide_args = args["ides"].split(',')
ide_installer.install(language_args)
else:
selected_options = select_options("IDEs", ide_installer)
if selected_options is not None:
ide_installer.install(selected_options.split(','))