##// END OF EJS Templates
Mention Python 3 support in What's New documentation.
Mention Python 3 support in What's New documentation.

File last commit:

r4094:06983228
r4145:4850497d
Show More
ipython_win_post_install.py
127 lines | 4.0 KiB | text/x-python | PythonLexer
/ scripts / ipython_win_post_install.py
Ville M. Vainio
crlf -> lf
r1032 #!python
"""Windows-specific part of the installation"""
import os, sys, shutil
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611 pjoin = os.path.join
Ville M. Vainio
crlf -> lf
r1032
Min RK
wininst post install script updated and requires setuptools...
r4094 # import setuptools if we can
try:
import setuptools
except ImportError:
pass
Ville M. Vainio
crlf -> lf
r1032 def mkshortcut(target,description,link_file,*args,**kw):
"""make a shortcut if it doesn't exist, and register its creation"""
create_shortcut(target, description, link_file,*args,**kw)
file_created(link_file)
def install():
"""Routine to be run by the win32 installer with the -install switch."""
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611
Brian Granger
Fixing a few bugs to get the win32 installer working again.
r2060 from IPython.core.release import version
Ville M. Vainio
crlf -> lf
r1032
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611 # Get some system constants
prefix = sys.prefix
python = pjoin(prefix, 'python.exe')
Min RK
wininst post install script updated and requires setuptools...
r4094 pythonw = pjoin(prefix, 'pythonw.exe')
have_setuptools = 'setuptools' in sys.modules
if not have_setuptools:
# This currently doesn't work without setuptools,
# so don't bother making broken links
return
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611
# Lookup path to common startmenu ...
ip_start_menu = pjoin(get_special_folder_path('CSIDL_COMMON_PROGRAMS'), 'IPython')
Ville M. Vainio
crlf -> lf
r1032 # Create IPython entry ...
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611 if not os.path.isdir(ip_start_menu):
os.mkdir(ip_start_menu)
directory_created(ip_start_menu)
# Create .py and .bat files to make things available from
Brian Granger
Added test in ipcluster.py to see if the platform is win32. If so,...
r1613 # the Windows command line. Thanks to the Twisted project
# for this logic!
Brian Granger
Completely fixed the ipython_win_post_install.py script. It now ...
r1612 programs = [
'ipython',
'iptest',
'ipcontroller',
'ipengine',
'ipcluster',
'irunner'
]
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611 scripts = pjoin(prefix,'scripts')
Min RK
wininst post install script updated and requires setuptools...
r4094 if not have_setuptools:
# only create .bat files if we don't have setuptools
for program in programs:
raw = pjoin(scripts, program)
bat = raw + '.bat'
py = raw + '.py'
# Create .py versions of the scripts
shutil.copy(raw, py)
# Create .bat files for each of the scripts
bat_file = file(bat,'w')
bat_file.write("@%s %s %%*" % (python, py))
bat_file.close()
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611 # Now move onto setting the Start Menu up
Brian Granger
Completely fixed the ipython_win_post_install.py script. It now ...
r1612 ipybase = pjoin(scripts, 'ipython')
Min RK
wininst post install script updated and requires setuptools...
r4094 if have_setuptools:
Darren Dale
fix windows post-installation routines with setuptools installed
r3228 # let setuptools take care of the scripts:
ipybase = ipybase + '-script.py'
Darren Dale
specify windows working directory...
r3227 workdir = "%HOMEDRIVE%%HOMEPATH%"
Ville M. Vainio
crlf -> lf
r1032
Brian Granger
Completely fixed the ipython_win_post_install.py script. It now ...
r1612 link = pjoin(ip_start_menu, 'IPython.lnk')
cmd = '"%s"' % ipybase
Darren Dale
specify windows working directory...
r3227 mkshortcut(python, 'IPython', link, cmd, workdir)
Brian Granger
Completely fixed the ipython_win_post_install.py script. It now ...
r1612
link = pjoin(ip_start_menu, 'pysh.lnk')
Min RK
wininst post install script updated and requires setuptools...
r4094 cmd = '"%s" profile=pysh --init' % ipybase
Darren Dale
specify windows working directory...
r3227 mkshortcut(python, 'IPython (command prompt mode)', link, cmd, workdir)
Brian Granger
Completely fixed the ipython_win_post_install.py script. It now ...
r1612
Min RK
wininst post install script updated and requires setuptools...
r4094 link = pjoin(ip_start_menu, 'pylab.lnk')
cmd = '"%s" profile=pylab --init' % ipybase
mkshortcut(python, 'IPython (pylab profile)', link, cmd, workdir)
Fernando Perez
Remove test suite from win32 start menu....
r2114
Brian Granger
Completely fixed the ipython_win_post_install.py script. It now ...
r1612 link = pjoin(ip_start_menu, 'ipcontroller.lnk')
Min RK
wininst post install script updated and requires setuptools...
r4094 cmdbase = pjoin(scripts, 'ipcontroller')
if have_setuptools:
cmdbase += '-script.py'
cmd = '"%s"' % cmdbase
Darren Dale
specify windows working directory...
r3227 mkshortcut(python, 'IPython controller', link, cmd, workdir)
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611
Brian Granger
Completely fixed the ipython_win_post_install.py script. It now ...
r1612 link = pjoin(ip_start_menu, 'ipengine.lnk')
Min RK
wininst post install script updated and requires setuptools...
r4094 cmdbase = pjoin(scripts, 'ipengine')
if have_setuptools:
cmdbase += '-script.py'
cmd = '"%s"' % cmdbase
Darren Dale
specify windows working directory...
r3227 mkshortcut(python, 'IPython engine', link, cmd, workdir)
Min RK
wininst post install script updated and requires setuptools...
r4094
link = pjoin(ip_start_menu, 'ipythonqt.lnk')
cmdbase = pjoin(scripts, 'ipython-qtconsole')
if have_setuptools:
cmdbase += '-script.pyw'
cmd = '"%s"' % cmdbase
mkshortcut(pythonw, 'IPython Qt Console', link, cmd, workdir)
Fernando Perez
Fix problem with windows installer script: html docs were not found.
r1589 # Create documentation shortcuts ...
vivainio2
win postinstall script manual location (start menu shortcut)
r1194 t = prefix + r'\share\doc\ipython\manual\ipython.pdf'
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611 f = ip_start_menu + r'\Manual in PDF.lnk'
Ville M. Vainio
crlf -> lf
r1032 mkshortcut(t,r'IPython Manual - PDF-Format',f)
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611
Fernando Perez
Fix problem with windows installer script: html docs were not found.
r1589 t = prefix + r'\share\doc\ipython\manual\html\index.html'
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611 f = ip_start_menu + r'\Manual in HTML.lnk'
Ville M. Vainio
crlf -> lf
r1032 mkshortcut(t,'IPython Manual - HTML-Format',f)
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611
Ville M. Vainio
crlf -> lf
r1032
def remove():
"""Routine to be run by the win32 installer with the -remove switch."""
pass
# main()
if len(sys.argv) > 1:
if sys.argv[1] == '-install':
install()
elif sys.argv[1] == '-remove':
remove()
else:
print "Script was called with option %s" % sys.argv[1]