#A dependency shotgun
packages = [
    'HTMLParser',
    'IPython',
    'Imath',
    'OpenEXR',
    'PIL',
    'PyYAML',
    'pyflann',#TODO: This needs to be fixed. It's broken for python3. It needs to be fixed using 2to3, and then inlined into this rp package. This is needed for flann_dict
    'Pyperclip',
    'pyfx',
    'apriltag',
    'art',
    'astor',
    'black',
    'blist',
    'bokeh',
    'bpytop',
    'click',
    'cmapy',
    'colorama',
    'cv2',
    'drawille',
    'duviz',
    'easydict',
    'embeddify',
    'exofrills',
    'fbchat',
    'frogmouth',
    'getmac',
    'git',
    'glances',
    'gpustat',
    'graphviz',
    'gtts_token',
    'html2text',
    'icecream',
    'imageio',
    'imagesize',
    'imgurpython',
    'inflect',
    'ipyplot',
    'ipython',
    'iterfzf',
    'js2py',
    'jupyter',
    'lazyasd',
    'mac_vendor_lookup',
    'matplotlib',
    'more_itertools',
    'moviepy',
    'nltk',
    'numba',
    'numpngw',
    'numpy',
    'opencv-python',
    'osascript',
    'pandas',
    'peepdis',
    'pillow',
    'playsound',
    'plotille',
    'psutil',
    'pudb',
    'py3nvml',
    'pyaudio',
    'pydub',
    'pygame',
    'pygments',
    'pylcs',
    'pymatbridge',
    'pynput',
    'pypager',
    'pyqt5',
    'pyqtgraph',
    'pytesseract',
    'python-editorjs2py',
    'python-minifier',
    'pytube',
    'pyunpack',
    'qrcode',
    'ranger',
    'removestar',
    'requests',
    'rich',
    'rtmidi',
    'scenedetect',
    'scikit-image',
    'scikit-learn',
    'scipy',
    'seaborn',
    'send2trash',
    'serial',
    'setproctitle',
    'sk-video',
    'skimage',
    'sklearn',
    'sounddevice',
    'suplemon',
    'sympy',
    'tabview',
    'textual-imageview',
    'timg',
    'torch',
    'transliterate',
    'twilio',
    'urwid',
    'vispy',
    'win_unicode_console',
    'word2number',
    'wordcloud',
    'xdoctest',
    'xonsh',
    'yaml',
    'ydiff',
    'youtube_dl',
    'zalgo-text'
]

def shotgun():
    for package in packages:
        bar='――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――'
        print(bar)
        print("ATTEMPTING TO INSTALL PACKAGE:".center(len(bar)))
        print(package.center(len(bar)))
        print(bar)
        from subprocess import run
        from os import name
        from rp import pip_install
        pip_install(package)
        # if name=='nt':# We're on windows
            # run('pip3 install '+package,shell=True)# Might be prompted for a password
        # else:
            # run('sudo pip3 install '+package,shell=True)# Might be prompted for a password
try:
    shotgun()
except:
    print("Shotgun errored and is now cancelled. Try it again with shotgun.shotgun()")
    pass
