|
@@ -89,9 +89,10 @@ ShowUninstDetails show
|
|
|
!insertmacro MUI_PAGE_LICENSE "$%InstallLocation%\LICENSE" ; picking up generic GPL
|
|
|
|
|
|
; Setup Type Page
|
|
|
- Page custom ShowSetupTypePage ;SetupTypePage_Config
|
|
|
+ Page custom ShowSetupTypePage SetupTypePage_Config
|
|
|
|
|
|
; Components Page
|
|
|
+ !define MUI_PAGE_CUSTOMFUNCTION_PRE HideComponentsPage
|
|
|
!insertmacro MUI_PAGE_COMPONENTS
|
|
|
!define MUI_PAGE_CUSTOMFUNCTION_PRE HideInstallDirectoryPage ; Controls when to hide / show
|
|
|
!define MUI_DIRECTORYPAGE_TEXT_DESTINATION "Install folder" ; shows just above the folder selection dialog
|
|
@@ -185,8 +186,8 @@ Section "!Jellyfin Server (required)" InstallJellyfinServer
|
|
|
WriteUninstaller "$INSTDIR\Uninstall.exe"
|
|
|
SectionEnd
|
|
|
|
|
|
-Section /o "Jellyfin Server Service" InstallService
|
|
|
-
|
|
|
+Section "Jellyfin Server Service" InstallService
|
|
|
+${If} $_INSTALLSERVICE_ == "Yes" ; Only run this if we're going to install the service!
|
|
|
ExecWait '"$INSTDIR\nssm.exe" statuscode JellyfinServer' $0
|
|
|
DetailPrint "Jellyfin Server service statuscode, $0"
|
|
|
${If} $0 == 0
|
|
@@ -246,6 +247,7 @@ Section /o "Jellyfin Server Service" InstallService
|
|
|
${EndIf}
|
|
|
DetailPrint "Jellyfin Server service account change, $0"
|
|
|
${EndIf}
|
|
|
+${EndIf}
|
|
|
|
|
|
SectionEnd
|
|
|
|
|
@@ -327,7 +329,7 @@ SectionEnd
|
|
|
|
|
|
Function .onInit
|
|
|
; Setting up defaults
|
|
|
- StrCpy $_INSTALLSERVICE_ "No"
|
|
|
+ StrCpy $_INSTALLSERVICE_ "Yes"
|
|
|
StrCpy $_SERVICESTART_ "Yes"
|
|
|
StrCpy $_SERVICEACCOUNTTYPE_ "NetworkService"
|
|
|
StrCpy $_EXISTINGINSTALLATION_ "No"
|
|
@@ -420,7 +422,13 @@ Function HideConfirmationPage
|
|
|
FunctionEnd
|
|
|
|
|
|
Function HideSetupTypePage
|
|
|
- ${If} $_EXISTINGINSTALLATION_ == "Yes" ; Existing installation detected, so don't ask for InstallFolder
|
|
|
+ ${If} $_EXISTINGINSTALLATION_ == "Yes" ; Existing installation detected, so don't ask for SetupType
|
|
|
+ Abort
|
|
|
+ ${EndIf}
|
|
|
+FunctionEnd
|
|
|
+
|
|
|
+Function HideComponentsPage
|
|
|
+ ${If} $_SETUPTYPE_ == "Basic" ; Basic installation chosen, don't show components choice
|
|
|
Abort
|
|
|
${EndIf}
|
|
|
FunctionEnd
|
|
@@ -450,6 +458,22 @@ FunctionEnd
|
|
|
Var StartServiceAfterInstall
|
|
|
Var UseNetworkServiceAccount
|
|
|
Var UseLocalSystemAccount
|
|
|
+Var BasicInstall
|
|
|
+
|
|
|
+
|
|
|
+Function SetupTypePage_Config
|
|
|
+${NSD_GetState} $hCtl_setuptype_BasicInstall $BasicInstall
|
|
|
+${If} $BasicInstall == 1
|
|
|
+ StrCpy $_SETUPTYPE_ "Basic"
|
|
|
+ StrCpy $_INSTALLSERVICE_ "No"
|
|
|
+ StrCpy $_SERVICESTART_ "No"
|
|
|
+ StrCpy $_SERVICEACCOUNTTYPE_ "None"
|
|
|
+${Else}
|
|
|
+ StrCpy $_SETUPTYPE_ "Advanced"
|
|
|
+ StrCpy $_INSTALLSERVICE_ "Yes"
|
|
|
+${EndIf}
|
|
|
+
|
|
|
+FunctionEnd
|
|
|
|
|
|
Function ServiceConfigPage_Config
|
|
|
${NSD_GetState} $hCtl_service_config_StartServiceAfterInstall $StartServiceAfterInstall
|