Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MP1-5185: MP/MPE Installation fixes/rework/enhancement #237

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
0519980
MP1-Master: Update Size and Labels workflow
andrewjswan Nov 20, 2023
8b56aad
Merge pull request #232 from MediaPortal/MP1-Master-Update_Size_and_L…
andrewjswan Nov 20, 2023
2a06efc
MP1: Bump actions/setup-java from 3 to 4
dependabot[bot] Dec 4, 2023
ec453dd
Merge pull request #233 from MediaPortal/dependabot/github_actions/ac…
andrewjswan Dec 4, 2023
1dbbe86
MP1-5185: NSIS installation script fix
Dec 5, 2023
cf100e0
MP1-5185: DeployTool: Disabled TV Server Instalation in x64 version
Dec 5, 2023
1af8550
MP1-5185: DeployTool: Set bottom panel background color to transparent
Dec 5, 2023
0cbe878
MP1-5185: DeployTool: Platform compatibility check improvement
Dec 5, 2023
7cb1c14
MP1-5185: DeployTool: Fix x64 TV Server installation path
Dec 5, 2023
bd60b2c
MP1-5185: DeployTool: Fix x64 uninstall registry path
Dec 5, 2023
9c56581
MP1-5185: NSIS TV-Server x64 installation script compatibility fix
Dec 6, 2023
387ab6a
MP1-5185: DeployTool: Add TV-Server x64 compatibility warning dialog
Dec 6, 2023
5f984e1
MP1-5185: DeployTool: Add TV-Server x64 compatibility warning dialog …
Dec 6, 2023
eb8296f
MP1-5185: NSIS: Disable TV-Server x64 build until the branch 5184 wil…
Dec 6, 2023
cf13d36
MP1-5185: TvThumbnails: Change x86 project output path
Dec 6, 2023
e79de09
MP1-5185: DeployTool: Fix old TvServer x64 uninstall registry path
Dec 8, 2023
75a816d
MP1-5185: Fix TvService & WatchdogService registering (try to uninsta…
Dec 8, 2023
813645e
MP1-5185: NSIS: Fix string comparision syntax
Dec 8, 2023
4203414
MP1-5185: DeployTool: Fix TvServer/TvClient uninstall order
Dec 8, 2023
84c4773
MP1-5185: DeployTool: Update TV-Server x64 compatibility warning dialog
Dec 8, 2023
2b9b2da
MP1-5185: DeployTool: Add extension platform compatibility whitelist
Dec 9, 2023
a4d2246
MP1-5185: NSIS: Remove MPx86Proxy desktop icon creation
Dec 9, 2023
e647976
MP1-5185: DeployTool: Additional VC++ 2015 check
Dec 10, 2023
0154945
Revert "MP1-5185: DeployTool: Additional VC++ 2015 check"
Dec 11, 2023
2992e39
MP1: Force NSIS 3.08 (#234)
andrewjswan Dec 11, 2023
db23f1c
MP1: Bump actions/stale from 8 to 9
dependabot[bot] Dec 11, 2023
02613ec
Merge pull request #235 from MediaPortal/dependabot/github_actions/ac…
andrewjswan Dec 11, 2023
ed91915
Merge remote-tracking branch 'origin/master' into MP1-5185-MP_MPE_Ins…
Dec 11, 2023
8114a83
MP1-5185: DeployTool: Updated extension platform compatibility whitelist
Dec 11, 2023
e4723c3
MP1-5185: DeployTool: Updated TV-Server x64 compatibility warning dialog
Dec 11, 2023
aea9994
MP1-5185: NSIS: Fix TV-Server x64 directshow filter registration
Dec 11, 2023
56831ef
MP1-5185: NSIS: Update x64 Uninstal shortcut names
Dec 11, 2023
54dabd6
MP1-5185: DeployTool: Updated extension platform compatibility whitelist
Dec 12, 2023
84cff54
MP1-5185: MPEI: Set button ForeColor in ScreenShotNavigator dialog (d…
Dec 12, 2023
b6727b1
MP1-5185: NSIS: Update x64 StartMenu shortcut names
Dec 13, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/mediaportal.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,15 +32,15 @@ jobs:
shell: cmd

- name: Setup Java JDK
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: 8
architecture: x86
distribution: temurin

- name: Setup NSIS
run: |
choco install --yes nsis --version=3.08
choco install --yes nsis --version=3.08 --force

- name: Git Checkout
uses: actions/checkout@v4
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/mediaportal_jira.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,15 +32,15 @@ jobs:
shell: cmd

- name: Setup Java JDK
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: 8
architecture: x86
distribution: temurin

- name: Setup NSIS
run: |
choco install --yes nsis --version=3.08
choco install --yes nsis --version=3.08 --force

- name: Git Checkout
uses: actions/checkout@v4
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/mediaportal_test_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,15 +32,15 @@ jobs:
shell: cmd

- name: Setup Java JDK
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: 8
architecture: x86
distribution: temurin

- name: Setup NSIS
run: |
choco install --yes nsis --version=3.08
choco install --yes nsis --version=3.08 --force

- name: Git Checkout
uses: actions/checkout@v4
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/workflow_codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,15 +25,15 @@ jobs:
shell: cmd

- name: Setup Java JDK
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: 8
architecture: x86
distribution: temurin

- name: Setup NSIS
run: |
choco install --yes nsis --version=3.08
choco install --yes nsis --version=3.08 --force

- name: Git Checkout
uses: actions/checkout@v4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/workflow_size_labels.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name: Workflow / Size and Stability labels

on:
pull_request:
pull_request_target:
types: [opened, synchronize]
# push:
# branches: [master]
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/workflow_stale.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
# - No PRs marked as no-stale
# - No issues (-1)
- name: 90 days stale PRs policy
uses: actions/stale@v8
uses: actions/stale@v9
with:
days-before-stale: 90
days-before-close: 7
Expand Down
16 changes: 4 additions & 12 deletions Tools/InstallationScripts/include-MP-PreBuild.nsh
Original file line number Diff line number Diff line change
Expand Up @@ -115,16 +115,13 @@

; Build TV server
!ifdef BUILD_TVServer
!if "${Architecture}" == "x64"
!define TVServerArchitecture x86
!else
!define TVServerArchitecture x86
!endif
!insertmacro PrepareBuildReport TvPlugin
!system '"${MSBuild_Path}" ${logger} /target:Rebuild /property:Configuration=Release;Platform="Any CPU" "${git_TVServer}\TvPlugin\TvPlugin.sln"' = 0
!insertmacro FinalizeBuildReport
!insertmacro PrepareBuildReport TvLibrary
!system '"${MSBuild_Path}" ${logger} /target:Rebuild /property:Configuration=Release;Platform=${TVServerArchitecture} "${git_TVServer}\TvLibrary.sln"' = 0
# Use x86 platform target; x64 configuration is not available for tv server yet
!system '"${MSBuild_Path}" ${logger} /target:Rebuild /property:Configuration=Release;Platform=x86 "${git_TVServer}\TvLibrary.sln"' = 0
#!system '"${MSBuild_Path}" ${logger} /target:Rebuild /property:Configuration=Release;Platform=${Architecture} "${git_TVServer}\TvLibrary.sln"' = 0
!insertmacro FinalizeBuildReport
!endif

Expand All @@ -134,14 +131,9 @@
!endif

!ifdef BUILD_DeployTool
!if "${Architecture}" == "x64"
!define DeployArchitecture x64
!else
!define DeployArchitecture x86
!endif
!insertmacro PrepareBuildReport DeployTool
;!system '"${MSBuild_Path}" ${logger} /p:ALToolPath="${ALToolPath}" /target:Rebuild /property:Configuration=Release;Platform=${Architecture} "${git_DeployTool}\MediaPortal.DeployTool.sln"' = 0
!system '"${MSBuild_Path}" ${logger} /target:Rebuild /property:Configuration=Release;Platform=${DeployArchitecture} "${git_DeployTool}\MediaPortal.DeployTool.sln"' = 0
!system '"${MSBuild_Path}" ${logger} /target:Rebuild /property:Configuration=Release;Platform=${Architecture} "${git_DeployTool}\MediaPortal.DeployTool.sln"' = 0
!insertmacro FinalizeBuildReport
!endif

Expand Down
98 changes: 33 additions & 65 deletions Tools/InstallationScripts/include/MediaPortalMacros.nsh
Original file line number Diff line number Diff line change
Expand Up @@ -65,18 +65,10 @@
!endif

!ifndef MP_REG_UNINSTALL
!if "${Architecture}" == "x64"
!define MP_REG_UNINSTALL "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MediaPortal (x64)"
!else
!define MP_REG_UNINSTALL "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MediaPortal"
!endif
!define MP_REG_UNINSTALL "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MediaPortal"
!endif
!ifndef TV3_REG_UNINSTALL
!if "${Architecture}" == "x64"
!define TV3_REG_UNINSTALL "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MediaPortal TV Server (x64)"
!else
!define TV3_REG_UNINSTALL "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MediaPortal TV Server"
!endif
!define TV3_REG_UNINSTALL "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MediaPortal TV Server"
!endif

; modify your registry and uncomment the following line to test if the git version check is working
Expand Down Expand Up @@ -179,7 +171,7 @@

# old installations < 0.2.3.0 RC 3
!macro _MP022IsInstalled _a _b _t _f
SetRegView 32
;SetRegView 32
!insertmacro _LOGICLIB_TEMP

ReadRegStr $_LOGICLIB_TEMP HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{87819CFA-1786-484D-B0DE-10B5FBF2625D}" "UninstallString"
Expand All @@ -188,7 +180,7 @@
!define MP022IsInstalled `"" MP022IsInstalled ""`

!macro _MP023RC3IsInstalled _a _b _t _f
SetRegView 32
;SetRegView 32
!insertmacro _LOGICLIB_TEMP

ReadRegStr $_LOGICLIB_TEMP HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MediaPortal 0.2.3.0 RC3" "UninstallString"
Expand All @@ -197,7 +189,7 @@
!define MP023RC3IsInstalled `"" MP023RC3IsInstalled ""`

!macro _MP023IsInstalled _a _b _t _f
SetRegView 32
;SetRegView 32
!insertmacro _LOGICLIB_TEMP

ReadRegStr $_LOGICLIB_TEMP HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MediaPortal 0.2.3.0" "UninstallString"
Expand All @@ -208,7 +200,7 @@
;====================================== OLD TVServer/TVClient INSTALLATION TESTs

!macro _MSI_TVServerIsInstalled _a _b _t _f
SetRegView 32
;SetRegView 32
!insertmacro _LOGICLIB_TEMP

ReadRegStr $_LOGICLIB_TEMP HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{4B738773-EE07-413D-AFB7-BB0AB04A5488}" "UninstallString"
Expand All @@ -217,7 +209,7 @@
!define MSI_TVServerIsInstalled `"" MSI_TVServerIsInstalled ""`

!macro _MSI_TVClientIsInstalled _a _b _t _f
SetRegView 32
;SetRegView 32
!insertmacro _LOGICLIB_TEMP

ReadRegStr $_LOGICLIB_TEMP HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{F7444E89-5BC0-497E-9650-E50539860DE0}" "UninstallString"
Expand All @@ -235,23 +227,28 @@
!insertmacro _LOGICLIB_TEMP

ReadRegStr $_LOGICLIB_TEMP HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MediaPortal" "UninstallString"

!if "${Architecture}" == "x64"
SetRegView 64
!endif

IfFileExists $_LOGICLIB_TEMP `${_t}` `${_f}`
!macroend
!define MPIsInstalledx86 `"" MPIsInstalledx86 ""`

!macro _MPIsInstalledx64 _a _b _t _f
SetRegView 32
;SetRegView 32
!insertmacro _LOGICLIB_TEMP

ReadRegStr $_LOGICLIB_TEMP HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MediaPortal (x64)" "UninstallString"
ReadRegStr $_LOGICLIB_TEMP HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MediaPortal" "UninstallString"
IfFileExists $_LOGICLIB_TEMP `${_t}` `${_f}`
!macroend
!define MPIsInstalledx64 `"" MPIsInstalledx64 ""`

;====================================== Mediaportal / TV Server / TV Client

!macro _MPIsInstalled _a _b _t _f
SetRegView 32
;SetRegView 32
!insertmacro _LOGICLIB_TEMP

ReadRegStr $_LOGICLIB_TEMP HKLM "${MP_REG_UNINSTALL}" "UninstallString"
Expand All @@ -260,7 +257,7 @@
!define MPIsInstalled `"" MPIsInstalled ""`

!macro _TVServerIsInstalled _a _b _t _f
SetRegView 32
;SetRegView 32
!insertmacro _LOGICLIB_TEMP

ReadRegStr $_LOGICLIB_TEMP HKLM "${TV3_REG_UNINSTALL}" "UninstallString"
Expand All @@ -272,7 +269,7 @@
!define TVServerIsInstalled `"" TVServerIsInstalled ""`

!macro _TVClientIsInstalled _a _b _t _f
SetRegView 32
;SetRegView 32
!insertmacro _LOGICLIB_TEMP

ReadRegStr $_LOGICLIB_TEMP HKLM "${TV3_REG_UNINSTALL}" "UninstallString"
Expand Down Expand Up @@ -316,7 +313,7 @@
#**********************************************************************************************************#
# Get MP infos
!macro MP_GET_INSTALL_DIR _var
SetRegView 32
;SetRegView 32
;${LOG_TEXT} "DEBUG" "MACRO:MP_GET_INSTALL_DIR"

${If} ${MP023IsInstalled}
Expand All @@ -337,7 +334,7 @@
!macroend

!macro TVSERVER_GET_INSTALL_DIR _var
SetRegView 32
;SetRegView 32
;${LOG_TEXT} "DEBUG" "MACRO:TVSERVER_GET_INSTALL_DIR"

${If} ${TVServerIsInstalled}
Expand All @@ -352,7 +349,7 @@
!macroend

!macro MP_GET_VERSION _var
SetRegView 32
;SetRegView 32
${LOG_TEXT} "DEBUG" "MACRO:MP_GET_VERSION"

${If} ${MPIsInstalled}
Expand All @@ -368,7 +365,7 @@
!macroend

!macro TVSERVER_GET_VERSION _var
SetRegView 32
;SetRegView 32
${LOG_TEXT} "DEBUG" "MACRO:TVSERVER_GET_VERSION"

${If} ${TVServerIsInstalled}
Expand Down Expand Up @@ -933,49 +930,12 @@ ${EndIf}


!if "${PRODUCT_NAME}" == "MediaPortal"

!macro DoPreInstallChecks

!ifdef GIT_BUILD
; check if correct MP version ist installed, which is required for this git snapshot
!insertmacro MinimumVersionForGITCheck
!define _macro_cond_MP_
!else if "${PRODUCT_NAME}" == "MediaPortal (x64)"
!define _macro_cond_MP_
!endif

; OS and other common initialization checks are done in the following NSIS header file
!insertmacro MediaPortalOperatingSystemCheck
!insertmacro MediaPortalAdminCheck
!insertmacro MediaPortalVCRedistCheck
!insertmacro MediaPortalNetFrameworkCheck

; check if old mp 0.2.2 is installed
${If} ${MP022IsInstalled}
MessageBox MB_OK|MB_ICONSTOP "$(TEXT_MSGBOX_ERROR_MP022)"
Abort
${EndIf}

; check if old mp 0.2.3 RC3 is installed
${If} ${MP023RC3IsInstalled}
MessageBox MB_OK|MB_ICONSTOP "$(TEXT_MSGBOX_ERROR_MP023RC3)"
Abort
${EndIf}

; check if old mp 0.2.3 is installed.
${If} ${MP023IsInstalled}
MessageBox MB_OK|MB_ICONSTOP "$(TEXT_MSGBOX_ERROR_MP023)"
Abort
${EndIf}

; check if reboot is required
${If} ${FileExists} "$MPdir.Base\rebootflag"
MessageBox MB_OK|MB_ICONSTOP "$(TEXT_MSGBOX_ERROR_REBOOT_REQUIRED)"
Abort
${EndIf}

!macroend

!endif

!if "${PRODUCT_NAME}" == "MediaPortal (x64)"
!ifdef _macro_cond_MP_

!macro DoPreInstallChecks

Expand Down Expand Up @@ -1018,7 +978,15 @@ ${EndIf}

!endif



!if "${PRODUCT_NAME}" == "MediaPortal TV Server / Client"
!define _macro_cond_TV_
!else if "${PRODUCT_NAME}" == "MediaPortal TV Server / Client (x64)"
!define _macro_cond_TV_
!endif

!ifdef _macro_cond_TV_

!macro DoPreInstallChecks

Expand Down
2 changes: 1 addition & 1 deletion Tools/MediaPortal.DeployTool/DeployTool.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

23 changes: 10 additions & 13 deletions Tools/MediaPortal.DeployTool/DeployTool.cs
Original file line number Diff line number Diff line change
Expand Up @@ -83,19 +83,16 @@ public DeployTool()
// Set default folders
InstallationProperties.Instance.Set("MPDir",
Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles) +
"\\Team MediaPortal\\MediaPortal");
if (Utils.Is64bit())
{
InstallationProperties.Instance.Set("TVServerDir",
Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86) +
"\\Team MediaPortal\\MediaPortal TV Server (x64)");
}
else
{
InstallationProperties.Instance.Set("TVServerDir",
Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles) +
"\\Team MediaPortal\\MediaPortal TV Server");
}
@"\Team MediaPortal\MediaPortal");


InstallationProperties.Instance.Set("TVServerDir",
Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles) +
@"\Team MediaPortal\MediaPortal TV Server");


//Fix old MediaPortal x64 registry path
Utils.FixMediaPortal64RegistryPath();

if (Utils.Is64bit())
{
Expand Down
Loading