Forráskód Böngészése

Multiuser code is only for bundled Python

Thomas Kluyver 8 éve
szülő
commit
9595ec43d7
1 módosított fájl, 16 hozzáadás és 0 törlés
  1. 16 0
      nsist/pyapp.nsi

+ 16 - 0
nsist/pyapp.nsi

@@ -12,6 +12,7 @@
  
 SetCompressor lzma
 
+[% if ib.py_format == 'bundled' %]
 !define MULTIUSER_EXECUTIONLEVEL Highest
 !define MULTIUSER_INSTALLMODE_DEFAULT_CURRENTUSER
 !define MULTIUSER_MUI
@@ -21,6 +22,7 @@ SetCompressor lzma
 !define MULTIUSER_INSTALLMODE_FUNCTION correct_prog_files
 [% endif %]
 !include MultiUser.nsh
+[% endif %]
 
 [% block modernui %]
 ; Modern UI installer stuff 
@@ -31,7 +33,9 @@ SetCompressor lzma
 ; UI pages
 [% block ui_pages %]
 !insertmacro MUI_PAGE_WELCOME
+[% if ib.py_format == 'bundled' %]
 !insertmacro MULTIUSER_PAGE_INSTALLMODE
+[% endif %]
 !insertmacro MUI_PAGE_DIRECTORY
 !insertmacro MUI_PAGE_INSTFILES
 !insertmacro MUI_PAGE_FINISH
@@ -41,6 +45,9 @@ SetCompressor lzma
 
 Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
 OutFile "${INSTALLER_NAME}"
+[% if ib.py_format != 'bundled' %]
+InstallDir "$PROGRAMFILES${BITNESS}\${PRODUCT_NAME}"
+[% endif %]
 ShowInstDetails show
 
 Section -SETTINGS
@@ -57,11 +64,13 @@ Section "!${PRODUCT_NAME}" sec_app
   File /r "pkgs\*.*"
   SetOutPath "$INSTDIR"
 
+  [% if ib.py_format == 'bundled' %]
   ; Marker file for per-user install
   StrCmp $MultiUser.InstallMode CurrentUser 0 +3
     FileOpen $0 "$INSTDIR\${USER_INSTALL_MARKER}" w
     FileClose $0
     SetFileAttributes "$INSTDIR\${USER_INSTALL_MARKER}" HIDDEN
+  [% endif %]
 
   [% block install_files %]
   ; Install files
@@ -196,6 +205,7 @@ Function .onMouseOverSection
     [% endblock mouseover_messages %]
 FunctionEnd
 
+[% if ib.py_format == 'bundled' %]
 Function .onInit
   !insertmacro MULTIUSER_INIT
 FunctionEnd
@@ -212,3 +222,9 @@ Function correct_prog_files
     StrCpy $INSTDIR "$PROGRAMFILES64\${MULTIUSER_INSTALLMODE_INSTDIR}"
 FunctionEnd
 [% endif %]
+
+[% else %]
+Function .onInit
+  SetShellVarContext all
+FunctionEnd
+[% endif %]