mirror of
				https://github.com/jellyfin/jellyfin.git
				synced 2025-10-31 10:37:22 -04:00 
			
		
		
		
	Begin to add setup type dialog
This commit is contained in:
		
							parent
							
								
									c8ffa2fb1d
								
							
						
					
					
						commit
						04c4ad731e
					
				
							
								
								
									
										12
									
								
								deployment/windows/dialogs/setuptype.nsddef
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								deployment/windows/dialogs/setuptype.nsddef
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,12 @@ | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <!-- | ||||
| This file was created by NSISDialogDesigner 1.4.4.0 | ||||
| http://coolsoft.altervista.org/nsisdialogdesigner | ||||
| Do not edit manually! | ||||
| --> | ||||
| <Dialog Name="setuptype" Title="This controls how Jellyfin is installed." Subtitle="Setup Type"> | ||||
|   <Label Name="InstallasaServiceLabel" Location="12, 115" Size="426, 46" Text="Install Jellyfin as a service. This method is recommended for Advanced Users. Additional setup is required to access network shares." TabIndex="0" /> | ||||
|   <RadioButton Name="InstallasaService" Location="12, 88" Size="426, 24" Text="Install as a Service (Advanced Users)" TabIndex="1" /> | ||||
|   <Label Name="BasicInstallLabel" Location="12, 39" Size="426, 46" Text="The basic install will run Jellyfin in your current user account.$\nThis is recommended for new users and those with existing Jellyfin installs older than 10.4." TabIndex="2" /> | ||||
|   <RadioButton Name="BasicInstall" Location="12, 12" Size="426, 24" Text="Basic Install (Recommended)" Font="Microsoft Sans Serif, 8.25pt, style=Bold" Checked="True" TabIndex="3" /> | ||||
| </Dialog> | ||||
							
								
								
									
										56
									
								
								deployment/windows/dialogs/setuptype.nsdinc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								deployment/windows/dialogs/setuptype.nsdinc
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,56 @@ | ||||
| ; ========================================================= | ||||
| ; This file was generated by NSISDialogDesigner 1.4.4.0 | ||||
| ; http://coolsoft.altervista.org/nsisdialogdesigner | ||||
| ; | ||||
| ; Do not edit it manually, use NSISDialogDesigner instead! | ||||
| ; ========================================================= | ||||
| 
 | ||||
| ; handle variables | ||||
| Var hCtl_setuptype | ||||
| Var hCtl_setuptype_InstallasaServiceLabel | ||||
| Var hCtl_setuptype_InstallasaService | ||||
| Var hCtl_setuptype_BasicInstallLabel | ||||
| Var hCtl_setuptype_BasicInstall | ||||
| Var hCtl_setuptype_Font1 | ||||
| 
 | ||||
| 
 | ||||
| ; dialog create function | ||||
| Function fnc_setuptype_Create | ||||
|    | ||||
|   ; custom font definitions | ||||
|   CreateFont $hCtl_setuptype_Font1 "Microsoft Sans Serif" "8.25" "700" | ||||
|    | ||||
|   ; === setuptype (type: Dialog) === | ||||
|   nsDialogs::Create 1018 | ||||
|   Pop $hCtl_setuptype | ||||
|   ${If} $hCtl_setuptype == error | ||||
|     Abort | ||||
|   ${EndIf} | ||||
|   !insertmacro MUI_HEADER_TEXT "This controls how Jellyfin is installed." "Setup Type" | ||||
|    | ||||
|   ; === InstallasaServiceLabel (type: Label) === | ||||
|   ${NSD_CreateLabel} 8u 71u 280u 28u "Install Jellyfin as a service. This method is recommended for Advanced Users. Additional setup is required to access network shares." | ||||
|   Pop $hCtl_setuptype_InstallasaServiceLabel | ||||
|    | ||||
|   ; === InstallasaService (type: RadioButton) === | ||||
|   ${NSD_CreateRadioButton} 8u 54u 280u 15u "Install as a Service (Advanced Users)" | ||||
|   Pop $hCtl_setuptype_InstallasaService | ||||
|   ${NSD_AddStyle} $hCtl_setuptype_InstallasaService ${WS_GROUP} | ||||
|    | ||||
|   ; === BasicInstallLabel (type: Label) === | ||||
|   ${NSD_CreateLabel} 8u 24u 280u 28u "The basic install will run Jellyfin in your current user account.$\nThis is recommended for new users and those with existing Jellyfin installs older than 10.4." | ||||
|   Pop $hCtl_setuptype_BasicInstallLabel | ||||
|    | ||||
|   ; === BasicInstall (type: RadioButton) === | ||||
|   ${NSD_CreateRadioButton} 8u 7u 280u 15u "Basic Install (Recommended)" | ||||
|   Pop $hCtl_setuptype_BasicInstall | ||||
|   SendMessage $hCtl_setuptype_BasicInstall ${WM_SETFONT} $hCtl_setuptype_Font1 0 | ||||
|   ${NSD_Check} $hCtl_setuptype_BasicInstall | ||||
|    | ||||
| FunctionEnd | ||||
| 
 | ||||
| ; dialog show function | ||||
| Function fnc_setuptype_Show | ||||
|   Call fnc_setuptype_Create | ||||
|   nsDialogs::Show | ||||
| FunctionEnd | ||||
| @ -16,6 +16,7 @@ ShowUninstDetails show | ||||
| ; Global variables that we'll use | ||||
|     Var _JELLYFINVERSION_ | ||||
|     Var _JELLYFINDATADIR_ | ||||
|     Var _SETUPTYPE_ | ||||
|     Var _INSTALLSERVICE_ | ||||
|     Var _SERVICESTART_ | ||||
|     Var _SERVICEACCOUNTTYPE_ | ||||
| @ -86,6 +87,9 @@ ShowUninstDetails show | ||||
|     !insertmacro MUI_PAGE_WELCOME | ||||
| ; License Page | ||||
|     !insertmacro MUI_PAGE_LICENSE "$%InstallLocation%\LICENSE" ; picking up generic GPL | ||||
| 
 | ||||
| ; Setup Type Page | ||||
|     Page custom ShowSetupTypePage SetupTypePage_Config | ||||
| ; Components Page | ||||
|     !insertmacro MUI_PAGE_COMPONENTS | ||||
|     !define MUI_PAGE_CUSTOMFUNCTION_PRE HideInstallDirectoryPage ; Controls when to hide / show | ||||
| @ -102,6 +106,7 @@ ShowUninstDetails show | ||||
|     !insertmacro MUI_PAGE_DIRECTORY | ||||
| 
 | ||||
| ; Custom Dialogs | ||||
|     !include "dialogs\setuptype.nsdinc" | ||||
|     !include "dialogs\service-config.nsdinc" | ||||
|     !include "dialogs\confirmation.nsdinc" | ||||
| 
 | ||||
| @ -170,7 +175,7 @@ Section "!Jellyfin Server (required)" InstallJellyfinServer | ||||
|     WriteRegExpandStr HKLM "${REG_UNINST_KEY}" "UninstallString" '"$INSTDIR\Uninstall.exe"' | ||||
|     WriteRegStr HKLM "${REG_UNINST_KEY}" "DisplayIcon" '"$INSTDIR\Uninstall.exe",0' | ||||
|     WriteRegStr HKLM "${REG_UNINST_KEY}" "Publisher" "The Jellyfin Project" | ||||
|     WriteRegStr HKLM "${REG_UNINST_KEY}" "URLInfoAbout" "https://jellyfin.media/" | ||||
|     WriteRegStr HKLM "${REG_UNINST_KEY}" "URLInfoAbout" "https://jellyfin.org/" | ||||
|     WriteRegStr HKLM "${REG_UNINST_KEY}" "DisplayVersion" "$_JELLYFINVERSION_" | ||||
|     WriteRegDWORD HKLM "${REG_UNINST_KEY}" "NoModify" 1 | ||||
|     WriteRegDWORD HKLM "${REG_UNINST_KEY}" "NoRepair" 1 | ||||
| @ -413,6 +418,19 @@ Function HideConfirmationPage | ||||
|     ${EndIf} | ||||
| FunctionEnd | ||||
| 
 | ||||
| Function HideSetupTypePage | ||||
|     ${If} $_EXISTINGINSTALLATION_ == "Yes" ; Existing installation detected, so don't ask for InstallFolder | ||||
|         Abort | ||||
|     ${EndIf} | ||||
| FunctionEnd | ||||
| 
 | ||||
| ; Setup Type dialog show function | ||||
| Function ShowSetupTypePage | ||||
|   Call HideSetupTypePage | ||||
|   Call fnc_setuptype_Create | ||||
|   nsDialogs::Show | ||||
| FunctionEnd | ||||
| 
 | ||||
| ; Service Config dialog show function | ||||
| Function ShowServiceConfigPage | ||||
|   Call HideServiceConfigPage | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user