Browse Source

bpo-37734: Fix use of registry values to launch Python from Microsoft Store app (GH-15146)

pull/15165/head
Steve Dower 7 years ago
committed by GitHub
parent
commit
1fab9cbfba
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      Misc/NEWS.d/next/Windows/2019-08-06-09-35-12.bpo-37734.EoJ9Nh.rst
  2. 10
      PC/layout/main.py
  3. 14
      PC/layout/support/appxmanifest.py

1
Misc/NEWS.d/next/Windows/2019-08-06-09-35-12.bpo-37734.EoJ9Nh.rst

@ -0,0 +1 @@
Fix use of registry values to launch Python from Microsoft Store app.

10
PC/layout/main.py

@ -153,9 +153,15 @@ def get_layout(ns):
yield "libs/" + n + ".lib", lib
if ns.include_appxmanifest:
yield from in_build("python_uwp.exe", new_name="python{}".format(VER_DOT))
yield from in_build("pythonw_uwp.exe", new_name="pythonw{}".format(VER_DOT))
# For backwards compatibility, but we don't reference these ourselves.
yield from in_build("python_uwp.exe", new_name="python")
yield from in_build("pythonw_uwp.exe", new_name="pythonw")
else:
yield from in_build("python.exe", new_name="python{}".format(VER_DOT))
yield from in_build("pythonw.exe", new_name="pythonw{}".format(VER_DOT))
# For backwards compatibility, but we don't reference these ourselves.
yield from in_build("python.exe", new_name="python")
yield from in_build("pythonw.exe", new_name="pythonw")
@ -163,9 +169,9 @@ def get_layout(ns):
if ns.include_launchers and ns.include_appxmanifest:
if ns.include_pip:
yield from in_build("python_uwp.exe", new_name="pip")
yield from in_build("python_uwp.exe", new_name="pip{}".format(VER_DOT))
if ns.include_idle:
yield from in_build("pythonw_uwp.exe", new_name="idle")
yield from in_build("pythonw_uwp.exe", new_name="idle{}".format(VER_DOT))
if ns.include_stable:
yield from in_build(PYTHON_STABLE_DLL_NAME)

14
PC/layout/support/appxmanifest.py

@ -154,9 +154,9 @@ REGISTRY = {
"SysVersion": VER_DOT,
"Version": "{}.{}.{}".format(VER_MAJOR, VER_MINOR, VER_MICRO),
"InstallPath": {
"": "[{AppVPackageRoot}]",
"ExecutablePath": "[{AppVPackageRoot}]\\python.exe",
"WindowedExecutablePath": "[{AppVPackageRoot}]\\pythonw.exe",
"": "[{{AppVPackageRoot}}]",
"ExecutablePath": "[{{AppVPackageRoot}}]\\python{}.exe".format(VER_DOT),
"WindowedExecutablePath": "[{{AppVPackageRoot}}]\\pythonw{}.exe".format(VER_DOT),
},
"Help": {
"Main Python Documentation": {
@ -395,7 +395,7 @@ def get_appxmanifest(ns):
ns,
xml,
"Python",
"python",
"python{}".format(VER_DOT),
["python", "python{}".format(VER_MAJOR), "python{}".format(VER_DOT)],
PYTHON_VE_DATA,
"console",
@ -406,7 +406,7 @@ def get_appxmanifest(ns):
ns,
xml,
"PythonW",
"pythonw",
"pythonw{}".format(VER_DOT),
["pythonw", "pythonw{}".format(VER_MAJOR), "pythonw{}".format(VER_DOT)],
PYTHONW_VE_DATA,
"windows",
@ -418,7 +418,7 @@ def get_appxmanifest(ns):
ns,
xml,
"Pip",
"pip",
"pip{}".format(VER_DOT),
["pip", "pip{}".format(VER_MAJOR), "pip{}".format(VER_DOT)],
PIP_VE_DATA,
"console",
@ -430,7 +430,7 @@ def get_appxmanifest(ns):
ns,
xml,
"Idle",
"idle",
"idle{}".format(VER_DOT),
["idle", "idle{}".format(VER_MAJOR), "idle{}".format(VER_DOT)],
IDLE_VE_DATA,
"windows",

Loading…
Cancel
Save