From 258c573ac2a09dcd3f80da6dc86183f1206c9380 Mon Sep 17 00:00:00 2001 From: Sina M <1591639+s1na@users.noreply.github.com> Date: Mon, 15 Dec 2025 22:23:58 +0100 Subject: [PATCH] Website: add arm64 build to downloads page (#33418) Fixes #33268 --------- Co-authored-by: lightclient --- src/constants.ts | 2 ++ src/pages/downloads.tsx | 14 ++++++++++++++ src/utils/fetchXMLData.ts | 2 ++ src/utils/getSortedReleases.ts | 4 ++-- 4 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/constants.ts b/src/constants.ts index d53502c6f5..611317f279 100644 --- a/src/constants.ts +++ b/src/constants.ts @@ -175,6 +175,8 @@ export const WINDOWS_BINARY_BASE_URL = // linux export const ALL_LINUX_GETH_RELEASES_URL = 'https://gethstore.blob.core.windows.net/builds?restype=container&comp=list&prefix=geth-linux'; +export const ALL_LINUX_ARM64_GETH_RELEASES_URL = + 'https://gethstore.blob.core.windows.net/builds?restype=container&comp=list&prefix=geth-linux-arm64'; export const ALL_LINUX_ALLTOOLS_GETH_RELEASES_URL = 'https://gethstore.blob.core.windows.net/builds?restype=container&comp=list&prefix=geth-alltools-linux'; diff --git a/src/pages/downloads.tsx b/src/pages/downloads.tsx index 68a2bd88bf..735480e259 100644 --- a/src/pages/downloads.tsx +++ b/src/pages/downloads.tsx @@ -69,6 +69,7 @@ export const getStaticProps: GetStaticProps = async () => { try { const [ ALL_LINUX_RELEASES_XML_DATA, + ALL_LINUX_ARM64_RELEASES_XML_DATA, ALL_LINUX_ALL_TOOLS_RELEASES_XML_DATA, ALL_WINDOWS_RELEASES_XML_DATA, ALL_WINDOWS_ALL_TOOLS_RELEASES_XML_DATA, @@ -83,6 +84,9 @@ export const getStaticProps: GetStaticProps = async () => { const linuxJson = parser.parse(ALL_LINUX_RELEASES_XML_DATA); const ALL_LINUX_BLOBS_JSON_DATA = linuxJson.EnumerationResults.Blobs.Blob; + const linuxArm64Json = parser.parse(ALL_LINUX_ARM64_RELEASES_XML_DATA); + const ALL_LINUX_ARM64_BLOBS_JSON_DATA = linuxArm64Json.EnumerationResults.Blobs.Blob; + const linuxAllToolsJson = parser.parse(ALL_LINUX_ALL_TOOLS_RELEASES_XML_DATA); const ALL_LINUX_ALL_TOOLS_BLOBS_JSON_DATA = linuxAllToolsJson.EnumerationResults.Blobs.Blob; @@ -107,6 +111,10 @@ export const getStaticProps: GetStaticProps = async () => { blobsList: ALL_LINUX_BLOBS_JSON_DATA, isStableRelease: true }); + const LINUX_ARM64_STABLE_RELEASES_DATA = mapReleasesData({ + blobsList: ALL_LINUX_ARM64_BLOBS_JSON_DATA, + isStableRelease: true + }); const LINUX_ALLTOOLS_STABLE_RELEASES_DATA = mapReleasesData({ blobsList: ALL_LINUX_ALL_TOOLS_BLOBS_JSON_DATA, isStableRelease: true @@ -115,6 +123,10 @@ export const getStaticProps: GetStaticProps = async () => { blobsList: ALL_LINUX_BLOBS_JSON_DATA, isStableRelease: false }); + const LINUX_ARM64_DEV_BUILDS_DATA = mapReleasesData({ + blobsList: ALL_LINUX_ARM64_BLOBS_JSON_DATA, + isStableRelease: false + }); const LINUX_ALLTOOLS_DEV_BUILDS_DATA = mapReleasesData({ blobsList: ALL_LINUX_ALL_TOOLS_BLOBS_JSON_DATA, isStableRelease: false @@ -166,10 +178,12 @@ export const getStaticProps: GetStaticProps = async () => { // linux ALL_LINUX_STABLE_RELEASES: getSortedReleases( LINUX_STABLE_RELEASES_DATA, + LINUX_ARM64_STABLE_RELEASES_DATA, LINUX_ALLTOOLS_STABLE_RELEASES_DATA ), ALL_LINUX_DEV_BUILDS: getSortedReleases( LINUX_DEV_BUILDS_DATA, + LINUX_ARM64_DEV_BUILDS_DATA, LINUX_ALLTOOLS_DEV_BUILDS_DATA ), // windows diff --git a/src/utils/fetchXMLData.ts b/src/utils/fetchXMLData.ts index 274ae7906a..60c6740914 100644 --- a/src/utils/fetchXMLData.ts +++ b/src/utils/fetchXMLData.ts @@ -2,6 +2,7 @@ import { ALL_ANDROID_GETH_RELEASES_URL, ALL_IOS_GETH_RELEASES_URL, ALL_LINUX_ALLTOOLS_GETH_RELEASES_URL, + ALL_LINUX_ARM64_GETH_RELEASES_URL, ALL_LINUX_GETH_RELEASES_URL, ALL_WINDOWS_ALLTOOLS_GETH_RELEASES_URL, ALL_WINDOWS_GETH_RELEASES_URL @@ -10,6 +11,7 @@ import { export const fetchXMLData = () => { const urls = [ ALL_LINUX_GETH_RELEASES_URL, + ALL_LINUX_ARM64_GETH_RELEASES_URL, ALL_LINUX_ALLTOOLS_GETH_RELEASES_URL, ALL_WINDOWS_GETH_RELEASES_URL, ALL_WINDOWS_ALLTOOLS_GETH_RELEASES_URL, diff --git a/src/utils/getSortedReleases.ts b/src/utils/getSortedReleases.ts index 830c406852..2c4c910c59 100644 --- a/src/utils/getSortedReleases.ts +++ b/src/utils/getSortedReleases.ts @@ -1,6 +1,6 @@ import { ReleaseData } from './../types'; import { compareReleasesFn } from './compareReleasesFn'; -export const getSortedReleases = (releases: ReleaseData[], moreReleases: ReleaseData[] = []) => { - return releases.concat(moreReleases).sort(compareReleasesFn); +export const getSortedReleases = (...releases: ReleaseData[][]) => { + return releases.flat().sort(compareReleasesFn); };