##// END OF EJS Templates
Apply Ryan Krauss patch for fixing start menu shortcuts if there are spaces in ipython installation dir name
vivainio -
Show More
@@ -1,84 +1,85 b''
1 1 #!python
2 2 """Windows-specific part of the installation"""
3 3
4 4 import os, sys, shutil
5 5
6 6 def mkshortcut(target,description,link_file,*args,**kw):
7 7 """make a shortcut if it doesn't exist, and register its creation"""
8 8
9 9 create_shortcut(target, description, link_file,*args,**kw)
10 10 file_created(link_file)
11 11
12 12 def install():
13 13 """Routine to be run by the win32 installer with the -install switch."""
14 14
15 15 from IPython.Release import version
16 16
17 17 # Get some system constants
18 18 prefix = sys.prefix
19 19 python = prefix + r'\python.exe'
20 20 # Lookup path to common startmenu ...
21 21 ip_dir = get_special_folder_path('CSIDL_COMMON_PROGRAMS') + r'\IPython'
22 22
23 23 # Some usability warnings at installation time. I don't want them at the
24 24 # top-level, so they don't appear if the user is uninstalling.
25 25 try:
26 26 import ctypes
27 27 except ImportError:
28 28 print ('To take full advantage of IPython, you need ctypes from:\n'
29 29 'http://sourceforge.net/projects/ctypes')
30 30
31 31 try:
32 32 import win32con
33 33 except ImportError:
34 34 print ('To take full advantage of IPython, you need pywin32 from:\n'
35 35 'http://starship.python.net/crew/mhammond/win32/Downloads.html')
36 36
37 37 try:
38 38 import readline
39 39 except ImportError:
40 40 print ('To take full advantage of IPython, you need readline from:\n'
41 41 'http://sourceforge.net/projects/uncpythontools')
42 42
43 ipybase = '"'+prefix+r'\scripts\ipython"'
43 44 # Create IPython entry ...
44 45 if not os.path.isdir(ip_dir):
45 46 os.mkdir(ip_dir)
46 47 directory_created(ip_dir)
47 48
48 49 # Create program shortcuts ...
49 50 f = ip_dir + r'\IPython.lnk'
50 a = prefix + r'\scripts\ipython'
51 a = ipybase
51 52 mkshortcut(python,'IPython',f,a)
52 53
53 54 f = ip_dir + r'\pysh.lnk'
54 a = prefix + r'\scripts\ipython -p sh'
55 a = ipybase+' -p sh'
55 56 mkshortcut(python,'IPython command prompt mode',f,a)
56 57
57 58 f = ip_dir + r'\scipy.lnk'
58 a = prefix + r'\scripts\ipython -pylab -p scipy'
59 a = ipybase+' -pylab -p scipy'
59 60 mkshortcut(python,'IPython scipy profile',f,a)
60 61
61 62 # Create documentation shortcuts ...
62 63 t = prefix + r'\share\doc\ipython-%s\manual.pdf' % version
63 64 f = ip_dir + r'\Manual in PDF.lnk'
64 65 mkshortcut(t,r'IPython Manual - PDF-Format',f)
65 66
66 67 t = prefix + r'\share\doc\ipython-%s\manual\manual.html' % version
67 68 f = ip_dir + r'\Manual in HTML.lnk'
68 69 mkshortcut(t,'IPython Manual - HTML-Format',f)
69 70
70 71 # make ipython.py
71 72 shutil.copy(prefix + r'\scripts\ipython', prefix + r'\scripts\ipython.py')
72 73
73 74 def remove():
74 75 """Routine to be run by the win32 installer with the -remove switch."""
75 76 pass
76 77
77 78 # main()
78 79 if len(sys.argv) > 1:
79 80 if sys.argv[1] == '-install':
80 81 install()
81 82 elif sys.argv[1] == '-remove':
82 83 remove()
83 84 else:
84 85 print "Script was called with option %s" % sys.argv[1]
@@ -1,29 +1,31 b''
1 1 """ Create ipykit and exe installer
2 2
3 3 requires py2exe
4 4
5 5 """
6 6 #!/bin/sh
7 7 # IPython release script
8 8
9 9
10 10 import os
11 11 import distutils.dir_util
12 12 def c(cmd):
13 13 print ">",cmd
14 14 os.system(cmd)
15 15
16 16 os.chdir('..')
17 if os.path.isdir('dist'):
17 18 distutils.dir_util.remove_tree('dist')
19 if os.path.isdir('ipykit'):
18 20 distutils.dir_util.remove_tree('ipykit')
19 21
20 22 c("python exesetup.py py2exe")
21 23 os.rename('dist','ipykit')
22 24
23 25 c("zip -r ipykit.zip ipykit")
24 26
25 27 c("python setup.py bdist_wininst --install-script=ipython_win_post_install.py")
26 28
27 29 os.chdir("dist")
28 30 c("svn export http://ipython.scipy.org/svn/ipython/ipython/trunk ipython")
29 31 c("zip -r ipython_svn.zip ipython")
General Comments 0
You need to be logged in to leave comments. Login now