Add Amazon Corretto 21/24/26 Windows apps (#46875)

Add support for Amazon Corretto JDKs (21, 24, 26) on Windows: new winget
input manifests and outputs with installer URLs, SHA256s,
existence/patch queries, upgrade codes, and install/uninstall script
refs. Update maintained apps index (apps.json) to include the three new
Corretto entries. Add frontend icon components for Corretto 21/24/26 and
update icon exports.
This commit is contained in:
Allen Houchins
2026-06-04 23:08:27 -05:00
committed by GitHub
parent 1582252f92
commit 7a78d0521f
11 changed files with 171 additions and 0 deletions
@@ -0,0 +1,11 @@
{
"name": "Amazon Corretto 21",
"slug": "amazon-corretto-21/windows",
"package_identifier": "Amazon.Corretto.21.JDK",
"unique_identifier": "Amazon Corretto (x64)",
"exists_query": "SELECT 1 FROM programs WHERE name = 'Amazon Corretto (x64)' AND publisher = 'Amazon' AND version LIKE '21.%';",
"installer_arch": "x64",
"installer_type": "msi",
"installer_scope": "machine",
"default_categories": ["Developer tools"]
}
@@ -0,0 +1,11 @@
{
"name": "Amazon Corretto 24",
"slug": "amazon-corretto-24/windows",
"package_identifier": "Amazon.Corretto.24.JDK",
"unique_identifier": "Amazon Corretto (x64)",
"exists_query": "SELECT 1 FROM programs WHERE name = 'Amazon Corretto (x64)' AND publisher = 'Amazon' AND version LIKE '24.%';",
"installer_arch": "x64",
"installer_type": "msi",
"installer_scope": "machine",
"default_categories": ["Developer tools"]
}
@@ -0,0 +1,11 @@
{
"name": "Amazon Corretto 26",
"slug": "amazon-corretto-26/windows",
"package_identifier": "Amazon.Corretto.26.JDK",
"unique_identifier": "Amazon Corretto (x64)",
"exists_query": "SELECT 1 FROM programs WHERE name = 'Amazon Corretto (x64)' AND publisher = 'Amazon' AND version LIKE '26.%';",
"installer_arch": "x64",
"installer_type": "msi",
"installer_scope": "machine",
"default_categories": ["Developer tools"]
}
@@ -0,0 +1,23 @@
{
"versions": [
{
"version": "21.0.11.10",
"queries": {
"exists": "SELECT 1 FROM programs WHERE name = 'Amazon Corretto (x64)' AND publisher = 'Amazon' AND version LIKE '21.%';",
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Amazon Corretto (x64)' AND publisher = 'Amazon' AND version LIKE '21.%' AND version_compare(version, '21.0.11.10') < 0);"
},
"installer_url": "https://corretto.aws/downloads/resources/21.0.11.10.1/amazon-corretto-21.0.11.10.1-windows-x64.msi",
"install_script_ref": "8959087b",
"uninstall_script_ref": "66b02de4",
"sha256": "df8d443f0ab1eca0d1b95177d3d45a100616ecfab93226a2f126dd1f3baafb50",
"default_categories": [
"Developer tools"
],
"upgrade_code": "{590058C2-642A-4980-A36B-A1212D1C4E5D}"
}
],
"refs": {
"66b02de4": "# Fleet uninstalls app by finding all related product codes for the specified upgrade code\n$inst = New-Object -ComObject \"WindowsInstaller.Installer\"\n$timeoutSeconds = 300 # 5 minute timeout per product\n\nforeach ($product_code in $inst.RelatedProducts('{590058C2-642A-4980-A36B-A1212D1C4E5D}')) {\n $process = Start-Process msiexec -ArgumentList @(\"/quiet\", \"/x\", $product_code, \"/norestart\") -PassThru\n \n # Wait for process with timeout\n $completed = $process.WaitForExit($timeoutSeconds * 1000)\n \n if (-not $completed) {\n Stop-Process -Id $process.Id -Force -ErrorAction SilentlyContinue\n Exit 1603 # ERROR_UNINSTALL_FAILURE\n }\n \n # If the uninstall failed, bail\n if ($process.ExitCode -ne 0) {\n Write-Output \"Uninstall for $($product_code) exited $($process.ExitCode)\"\n Exit $process.ExitCode\n }\n}\n\n# All uninstalls succeeded; exit success\nExit 0\n",
"8959087b": "$logFile = \"${env:TEMP}/fleet-install-software.log\"\n\ntry {\n\n$installProcess = Start-Process msiexec.exe `\n -ArgumentList \"/quiet /norestart /lv ${logFile} /i `\"${env:INSTALLER_PATH}`\"\" `\n -PassThru -Verb RunAs -Wait\n\nGet-Content $logFile -Tail 500\n\nExit $installProcess.ExitCode\n\n} catch {\n Write-Host \"Error: $_\"\n Exit 1\n}\n"
}
}
@@ -0,0 +1,23 @@
{
"versions": [
{
"version": "24.0.2.12",
"queries": {
"exists": "SELECT 1 FROM programs WHERE name = 'Amazon Corretto (x64)' AND publisher = 'Amazon' AND version LIKE '24.%';",
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Amazon Corretto (x64)' AND publisher = 'Amazon' AND version LIKE '24.%' AND version_compare(version, '24.0.2.12') < 0);"
},
"installer_url": "https://corretto.aws/downloads/resources/24.0.2.12.1/amazon-corretto-24.0.2.12.1-windows-x64.msi",
"install_script_ref": "8959087b",
"uninstall_script_ref": "7963606b",
"sha256": "5f9b4b2dd5ca34c1fd9672e63d355461dc5dbf9e3d67155d947466469850b2eb",
"default_categories": [
"Developer tools"
],
"upgrade_code": "{3EEF11EA-DDFA-4BF4-A5ED-DDCA47D0628C}"
}
],
"refs": {
"7963606b": "# Fleet uninstalls app by finding all related product codes for the specified upgrade code\n$inst = New-Object -ComObject \"WindowsInstaller.Installer\"\n$timeoutSeconds = 300 # 5 minute timeout per product\n\nforeach ($product_code in $inst.RelatedProducts('{3EEF11EA-DDFA-4BF4-A5ED-DDCA47D0628C}')) {\n $process = Start-Process msiexec -ArgumentList @(\"/quiet\", \"/x\", $product_code, \"/norestart\") -PassThru\n \n # Wait for process with timeout\n $completed = $process.WaitForExit($timeoutSeconds * 1000)\n \n if (-not $completed) {\n Stop-Process -Id $process.Id -Force -ErrorAction SilentlyContinue\n Exit 1603 # ERROR_UNINSTALL_FAILURE\n }\n \n # If the uninstall failed, bail\n if ($process.ExitCode -ne 0) {\n Write-Output \"Uninstall for $($product_code) exited $($process.ExitCode)\"\n Exit $process.ExitCode\n }\n}\n\n# All uninstalls succeeded; exit success\nExit 0\n",
"8959087b": "$logFile = \"${env:TEMP}/fleet-install-software.log\"\n\ntry {\n\n$installProcess = Start-Process msiexec.exe `\n -ArgumentList \"/quiet /norestart /lv ${logFile} /i `\"${env:INSTALLER_PATH}`\"\" `\n -PassThru -Verb RunAs -Wait\n\nGet-Content $logFile -Tail 500\n\nExit $installProcess.ExitCode\n\n} catch {\n Write-Host \"Error: $_\"\n Exit 1\n}\n"
}
}
@@ -0,0 +1,23 @@
{
"versions": [
{
"version": "26.0.1.8",
"queries": {
"exists": "SELECT 1 FROM programs WHERE name = 'Amazon Corretto (x64)' AND publisher = 'Amazon' AND version LIKE '26.%';",
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Amazon Corretto (x64)' AND publisher = 'Amazon' AND version LIKE '26.%' AND version_compare(version, '26.0.1.8') < 0);"
},
"installer_url": "https://corretto.aws/downloads/resources/26.0.1.8.1/amazon-corretto-26.0.1.8.1-windows-x64.msi",
"install_script_ref": "8959087b",
"uninstall_script_ref": "a6930387",
"sha256": "a1085f5c34196c080b196881d13bc92e022759743d18829f10c962419ad683ad",
"default_categories": [
"Developer tools"
],
"upgrade_code": "{40108932-3B67-4510-A55E-4B43E52A5FFE}"
}
],
"refs": {
"8959087b": "$logFile = \"${env:TEMP}/fleet-install-software.log\"\n\ntry {\n\n$installProcess = Start-Process msiexec.exe `\n -ArgumentList \"/quiet /norestart /lv ${logFile} /i `\"${env:INSTALLER_PATH}`\"\" `\n -PassThru -Verb RunAs -Wait\n\nGet-Content $logFile -Tail 500\n\nExit $installProcess.ExitCode\n\n} catch {\n Write-Host \"Error: $_\"\n Exit 1\n}\n",
"a6930387": "# Fleet uninstalls app by finding all related product codes for the specified upgrade code\n$inst = New-Object -ComObject \"WindowsInstaller.Installer\"\n$timeoutSeconds = 300 # 5 minute timeout per product\n\nforeach ($product_code in $inst.RelatedProducts('{40108932-3B67-4510-A55E-4B43E52A5FFE}')) {\n $process = Start-Process msiexec -ArgumentList @(\"/quiet\", \"/x\", $product_code, \"/norestart\") -PassThru\n \n # Wait for process with timeout\n $completed = $process.WaitForExit($timeoutSeconds * 1000)\n \n if (-not $completed) {\n Stop-Process -Id $process.Id -Force -ErrorAction SilentlyContinue\n Exit 1603 # ERROR_UNINSTALL_FAILURE\n }\n \n # If the uninstall failed, bail\n if ($process.ExitCode -ne 0) {\n Write-Output \"Uninstall for $($product_code) exited $($process.ExitCode)\"\n Exit $process.ExitCode\n }\n}\n\n# All uninstalls succeeded; exit success\nExit 0\n"
}
}
+21
View File
@@ -148,6 +148,20 @@
"unique_identifier": "com.amazon.Amazon-Chime",
"description": "Amazon Chime is a communications service that lets you meet, chat, and place business calls inside and outside your organization."
},
{
"name": "Amazon Corretto 21",
"slug": "amazon-corretto-21/windows",
"platform": "windows",
"unique_identifier": "Amazon Corretto (x64)",
"description": "Amazon Corretto 21 is a no-cost, multiplatform, production-ready distribution of OpenJDK 21."
},
{
"name": "Amazon Corretto 24",
"slug": "amazon-corretto-24/windows",
"platform": "windows",
"unique_identifier": "Amazon Corretto (x64)",
"description": "Amazon Corretto 24 is a no-cost, multiplatform, production-ready distribution of OpenJDK 24."
},
{
"name": "Amazon Corretto 25",
"slug": "amazon-corretto-25/windows",
@@ -155,6 +169,13 @@
"unique_identifier": "Amazon Corretto (x64)",
"description": "Amazon Corretto 25 is a no-cost, multiplatform, production-ready distribution of OpenJDK 25."
},
{
"name": "Amazon Corretto 26",
"slug": "amazon-corretto-26/windows",
"platform": "windows",
"unique_identifier": "Amazon Corretto (x64)",
"description": "Amazon Corretto 26 is a no-cost, multiplatform, production-ready distribution of OpenJDK 26."
},
{
"name": "Amazon DCV Client",
"slug": "amazon-dcv-client/windows",
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -5,7 +5,10 @@ import { HOST_LINUX_PLATFORMS } from "interfaces/platform";
import { ISoftware } from "interfaces/software";
import { matchLoosePrefixToKey } from "utilities/strings/stringUtils";
import AmazonCorretto21 from "./AmazonCorretto21";
import AmazonCorretto24 from "./AmazonCorretto24";
import AmazonCorretto25 from "./AmazonCorretto25";
import AmazonCorretto26 from "./AmazonCorretto26";
import AmazonWorkspaces from "./AmazonWorkspaces";
import AnotherRedisDesktopManager from "./AnotherRedisDesktopManager";
import AzulZulu25Jdk from "./AzulZulu25Jdk";
@@ -312,7 +315,10 @@ export const SOFTWARE_NAME_TO_ICON_MAP = {
aircall: Aircall,
airtame: Airtame,
"amazon chime": AmazonChime,
"amazon corretto 21": AmazonCorretto21,
"amazon corretto 24": AmazonCorretto24,
"amazon corretto 25": AmazonCorretto25,
"amazon corretto 26": AmazonCorretto26,
"amazon dcv": AmazonDCV,
"amazon workspaces": AmazonWorkspaces,
androidPlayStore: AndroidPlayStore,