diff --git a/.github/ISSUE_TEMPLATE/issue.bug.yml b/.github/ISSUE_TEMPLATE/issue.bug.yml
index 1f25845..ce3d19a 100644
--- a/.github/ISSUE_TEMPLATE/issue.bug.yml
+++ b/.github/ISSUE_TEMPLATE/issue.bug.yml
@@ -52,6 +52,7 @@ body:
label: CPU architecture
options:
- x86-64
+ - arm64
validations:
required: true
- type: textarea
diff --git a/.github/workflows/external_trigger.yml b/.github/workflows/external_trigger.yml
index 955db91..016bca2 100644
--- a/.github/workflows/external_trigger.yml
+++ b/.github/workflows/external_trigger.yml
@@ -39,10 +39,15 @@ jobs:
token=$(curl -sX GET \
"https://ghcr.io/token?scope=repository%3Alinuxserver%2Fgithub-desktop%3Apull" \
| jq -r '.token')
- digest=$(curl -s \
+ multidigest=$(curl -s \
--header "Accept: application/vnd.docker.distribution.manifest.v2+json" \
--header "Authorization: Bearer ${token}" \
"https://ghcr.io/v2/${image}/manifests/${tag}" \
+ | jq -r 'first(.manifests[].digest)')
+ digest=$(curl -s \
+ --header "Accept: application/vnd.docker.distribution.manifest.v2+json" \
+ --header "Authorization: Bearer ${token}" \
+ "https://ghcr.io/v2/${image}/manifests/${multidigest}" \
| jq -r '.config.digest')
image_info=$(curl -sL \
--header "Authorization: Bearer ${token}" \
diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64
new file mode 100644
index 0000000..ec05f42
--- /dev/null
+++ b/Dockerfile.aarch64
@@ -0,0 +1,59 @@
+FROM ghcr.io/linuxserver/baseimage-kasmvnc:arm64v8-debianbullseye
+
+# set version label
+ARG BUILD_DATE
+ARG GHDESKTOP_VERSION
+ARG VERSION
+LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
+LABEL maintainer="thelamer"
+
+# title
+ENV TITLE=Github-Desktop
+
+RUN \
+ echo "**** install packages ****" && \
+ apt-get update && \
+ apt-get install --no-install-recommends -y \
+ chromium \
+ git \
+ ssh-askpass \
+ thunar \
+ xfce4-terminal && \
+ echo "**** install github-desktop ****" && \
+ if [ -z ${GHDESKTOP_VERSION+x} ]; then \
+ GHDESKTOP_VERSION=$(curl -sX GET "https://api.github.com/repos/shiftkey/desktop/releases/latest" \
+ | awk '/tag_name/{print $4;exit}' FS='[""]'); \
+ fi && \
+ curl -o \
+ /tmp/ghdesktop.deb -L \
+ "https://github.com/shiftkey/desktop/releases/download/${GHDESKTOP_VERSION}/GitHubDesktop-linux-arm64-${GHDESKTOP_VERSION#release-}.deb" && \
+ apt install --no-install-recommends -y /tmp/ghdesktop.deb && \
+ echo "**** install codium ****" && \
+ CODIUM_VERSION=$(curl -sX GET "https://api.github.com/repos/VSCodium/vscodium/releases/latest" \
+ | awk '/tag_name/{print $4;exit}' FS='[""]'); \
+ curl -o \
+ /tmp/codium.deb -L \
+ "https://github.com/VSCodium/vscodium/releases/download/${CODIUM_VERSION}/codium_${CODIUM_VERSION}_arm64.deb" && \
+ apt install --no-install-recommends -y /tmp/codium.deb && \
+ echo "**** container tweaks ****" && \
+ ln -s \
+ /usr/bin/xfce4-terminal \
+ /usr/bin/gnome-terminal && \
+ mv \
+ /usr/bin/chromium \
+ /usr/bin/chromium-real && \
+ sed -i 's|| \n yes\n \n|' /etc/xdg/openbox/rc.xml && \
+ echo "**** cleanup ****" && \
+ apt-get autoclean && \
+ rm -rf \
+ /var/lib/apt/lists/* \
+ /var/tmp/* \
+ /tmp/*
+
+# add local files
+COPY /root /
+
+# ports and volumes
+EXPOSE 3000
+
+VOLUME /config
diff --git a/Jenkinsfile b/Jenkinsfile
index 84299f9..c2467f5 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -28,7 +28,7 @@ pipeline {
DEV_DOCKERHUB_IMAGE = 'lsiodev/github-desktop'
PR_DOCKERHUB_IMAGE = 'lspipepr/github-desktop'
DIST_IMAGE = 'ubuntu'
- MULTIARCH = 'false'
+ MULTIARCH = 'true'
CI = 'true'
CI_WEB = 'true'
CI_PORT = '3000'
diff --git a/README.md b/README.md
index 53d99de..4e8ba59 100644
--- a/README.md
+++ b/README.md
@@ -55,7 +55,7 @@ The architectures supported by this image are:
| Architecture | Available | Tag |
| :----: | :----: | ---- |
| x86-64 | ✅ | amd64-\ |
-| arm64 | ❌ | |
+| arm64 | ✅ | arm64v8-\ |
| armhf | ❌ | |
## Application Setup
diff --git a/jenkins-vars.yml b/jenkins-vars.yml
index 918e8ef..5af1a09 100644
--- a/jenkins-vars.yml
+++ b/jenkins-vars.yml
@@ -18,7 +18,7 @@ repo_vars:
- DEV_DOCKERHUB_IMAGE = 'lsiodev/github-desktop'
- PR_DOCKERHUB_IMAGE = 'lspipepr/github-desktop'
- DIST_IMAGE = 'ubuntu'
- - MULTIARCH = 'false'
+ - MULTIARCH = 'true'
- CI = 'true'
- CI_WEB = 'true'
- CI_PORT = '3000'
diff --git a/readme-vars.yml b/readme-vars.yml
index add82c5..d8bdc19 100644
--- a/readme-vars.yml
+++ b/readme-vars.yml
@@ -10,7 +10,8 @@ project_blurb_optional_extras_enabled: false
# supported architectures
available_architectures:
- - { arch: "{{ arch_x86_64 }}", tag: "latest"}
+ - { arch: "{{ arch_x86_64 }}", tag: "amd64-latest"}
+ - { arch: "{{ arch_arm64 }}", tag: "arm64v8-latest"}
# development version
development_versions: false