From cd95e18bf7db348060ab9680729927b5ccb11bb1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20v=2E=20L=C3=B6wis?= Date: Sun, 22 Jun 2014 22:22:33 +0200 Subject: [PATCH] Issue #10747: Use versioned labels in the Windows start menu. Patch by Olive Kilburn. --- Misc/NEWS | 3 +++ Tools/msi/msi.py | 31 +++++++++++++++++++++---------- 2 files changed, 24 insertions(+), 10 deletions(-) diff --git a/Misc/NEWS b/Misc/NEWS index 848eb863393..128937ef874 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -157,6 +157,9 @@ Windows - Issue #21671, CVE-2014-0224: The bundled version of OpenSSL has been updated to 1.0.1h. +- Issue #10747: Use versioned labels in the Windows start menu. + Patch by Olive Kilburn. + Tools/Demos ----------- diff --git a/Tools/msi/msi.py b/Tools/msi/msi.py index e399ddeafad..60e7d1d3448 100644 --- a/Tools/msi/msi.py +++ b/Tools/msi/msi.py @@ -1320,27 +1320,38 @@ def add_registry(db): add_data(db, "RemoveFile", [("MenuDir", "TARGETDIR", None, "MenuDir", 2)]) tcltkshortcuts = [] + if msilib.Win64: + bitted = "64 bit" + else: + bitted = "32 bit" if have_tcl: tcltkshortcuts = [ - ("IDLE", "MenuDir", "IDLE|IDLE (Python GUI)", "pythonw.exe", - tcltk.id, r'"[TARGETDIR]Lib\idlelib\idle.pyw"', None, None, "python_icon.exe", 0, None, "TARGETDIR"), + ("IDLE", "MenuDir", + "IDLE|IDLE (Python "+short_version+" GUI - "+bitted+")", + "pythonw.exe", tcltk.id, r'"[TARGETDIR]Lib\idlelib\idle.pyw"', + None, None, "python_icon.exe", 0, None, "TARGETDIR"), ] add_data(db, "Shortcut", tcltkshortcuts + [# Advertised shortcuts: targets are features, not files - ("Python", "MenuDir", "PYTHON|Python (command line)", "python.exe", - default_feature.id, None, None, None, "python_icon.exe", 2, None, "TARGETDIR"), + ("Python", "MenuDir", + "PYTHON|Python "+short_version+" (command line - "+bitted+")", + "python.exe", default_feature.id, None, None, None, + "python_icon.exe", 2, None, "TARGETDIR"), # Advertising the Manual breaks on (some?) Win98, and the shortcut lacks an # icon first. #("Manual", "MenuDir", "MANUAL|Python Manuals", "documentation", # htmlfiles.id, None, None, None, None, None, None, None), ## Non-advertised shortcuts: must be associated with a registry component - ("Manual", "MenuDir", "MANUAL|Python Manuals", "REGISTRY.doc", - "[#%s]" % docfile, None, - None, None, None, None, None, None), - ("PyDoc", "MenuDir", "MODDOCS|Module Docs", "python.exe", - default_feature.id, r'-m pydoc -b', None, None, "python_icon.exe", 0, None, "TARGETDIR"), - ("Uninstall", "MenuDir", "UNINST|Uninstall Python", "REGISTRY", + ("Manual", "MenuDir", "MANUAL|Python "+short_version+" Manuals", + "REGISTRY.doc", "[#%s]" % docfile, + None, None, None, None, None, None, None), + ("PyDoc", "MenuDir", + "MODDOCS|Python "+short_version+" Docs Server (pydoc - "+ + bitted+")", "python.exe", default_feature.id, r'-m pydoc -b', + None, None, "python_icon.exe", 0, None, "TARGETDIR"), + ("Uninstall", "MenuDir", "UNINST|Uninstall Python "+ + short_version+" ("+bitted+")", "REGISTRY", SystemFolderName+"msiexec", "/x%s" % product_code, None, None, None, None, None, None), ])