2
"""Windows-specific part of the installation"""
6
def mkshortcut(target,description,link_file,*args,**kw):
7
"""make a shortcut if it doesn't exist, and register its creation"""
9
create_shortcut(target, description, link_file,*args,**kw)
10
file_created(link_file)
13
"""Routine to be run by the win32 installer with the -install switch."""
15
from IPython.Release import version
17
# Get some system constants
19
python = prefix + r'\python.exe'
20
# Lookup path to common startmenu ...
21
ip_dir = get_special_folder_path('CSIDL_COMMON_PROGRAMS') + r'\IPython'
23
# Some usability warnings at installation time. I don't want them at the
24
# top-level, so they don't appear if the user is uninstalling.
28
print ('To take full advantage of IPython, you need ctypes from:\n'
29
'http://sourceforge.net/projects/ctypes')
34
print ('To take full advantage of IPython, you need pywin32 from:\n'
35
'http://starship.python.net/crew/mhammond/win32/Downloads.html')
40
print ('To take full advantage of IPython, you need readline from:\n'
41
'http://sourceforge.net/projects/uncpythontools')
43
ipybase = '"'+prefix+r'\scripts\ipython"'
44
# Create IPython entry ...
45
if not os.path.isdir(ip_dir):
47
directory_created(ip_dir)
49
# Create program shortcuts ...
50
f = ip_dir + r'\IPython.lnk'
52
mkshortcut(python,'IPython',f,a)
54
f = ip_dir + r'\pysh.lnk'
56
mkshortcut(python,'IPython command prompt mode',f,a)
58
f = ip_dir + r'\scipy.lnk'
59
a = ipybase+' -pylab -p scipy'
60
mkshortcut(python,'IPython scipy profile',f,a)
62
# Create documentation shortcuts ...
63
t = prefix + r'\share\doc\ipython-%s\manual.pdf' % version
64
f = ip_dir + r'\Manual in PDF.lnk'
65
mkshortcut(t,r'IPython Manual - PDF-Format',f)
67
t = prefix + r'\share\doc\ipython-%s\manual\manual.html' % version
68
f = ip_dir + r'\Manual in HTML.lnk'
69
mkshortcut(t,'IPython Manual - HTML-Format',f)
72
shutil.copy(prefix + r'\scripts\ipython', prefix + r'\scripts\ipython.py')
75
"""Routine to be run by the win32 installer with the -remove switch."""
80
if sys.argv[1] == '-install':
82
elif sys.argv[1] == '-remove':
85
print "Script was called with option %s" % sys.argv[1]