mirror of
https://github.com/gavvvr/obsidian-timecodes-plugin.git
synced 2026-07-22 05:38:08 +00:00
build: adjust CI Dockerfile to make it possible to run on Apple Silicon Mac
This commit is contained in:
parent
1b4bde0ec0
commit
a0051c6654
1 changed files with 16 additions and 2 deletions
|
|
@ -1,6 +1,7 @@
|
|||
ARG NODEJS_VERSION=22
|
||||
ARG DEBIAN_VERSION=trixie
|
||||
ARG BASE_IMAGE=node:${NODEJS_VERSION}-${DEBIAN_VERSION}-slim
|
||||
ARG TARGET_IMAGE_PLATFORM=linux/amd64
|
||||
|
||||
ARG OBSIDIAN_VERSION=1.9.14
|
||||
ARG OBSIDIAN_APPIMAGE_FILE=Obsidian-${OBSIDIAN_VERSION}.AppImage
|
||||
|
|
@ -10,7 +11,7 @@ ARG OBSIDIAN_VERSION
|
|||
ARG OBSIDIAN_APPIMAGE_FILE
|
||||
RUN wget https://github.com/obsidianmd/obsidian-releases/releases/download/v${OBSIDIAN_VERSION}/${OBSIDIAN_APPIMAGE_FILE}
|
||||
|
||||
FROM ${BASE_IMAGE} AS obsidian-extractor
|
||||
FROM ${BASE_IMAGE} AS obsidian-extractor-amd64
|
||||
ARG OBSIDIAN_APPIMAGE_FILE
|
||||
COPY --from=obsidian-downloader /${OBSIDIAN_APPIMAGE_FILE} /${OBSIDIAN_APPIMAGE_FILE}
|
||||
RUN LIBZ_PATH=$(ldconfig -p | grep 'libz.so.1 ' | awk '{print $NF}' | head -n1) && \
|
||||
|
|
@ -18,7 +19,20 @@ RUN LIBZ_PATH=$(ldconfig -p | grep 'libz.so.1 ' | awk '{print $NF}' | head -n1)
|
|||
RUN chmod +x ${OBSIDIAN_APPIMAGE_FILE}
|
||||
RUN ./${OBSIDIAN_APPIMAGE_FILE} --appimage-extract
|
||||
|
||||
FROM ${BASE_IMAGE}
|
||||
# `--appimage-extract` won't work on Apple Silicon, hence using a special extraction stage
|
||||
FROM --platform=${TARGET_IMAGE_PLATFORM} ${BASE_IMAGE} AS obsidian-extractor-arm64
|
||||
ARG OBSIDIAN_APPIMAGE_FILE
|
||||
RUN apt-get update && \
|
||||
apt install -y squashfs-tools && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
COPY --from=obsidian-downloader /${OBSIDIAN_APPIMAGE_FILE} /${OBSIDIAN_APPIMAGE_FILE}
|
||||
RUN offset=$(grep -aob 'hsqs' ${OBSIDIAN_APPIMAGE_FILE} | tail -n1 | cut -d: -f1) && \
|
||||
dd if=${OBSIDIAN_APPIMAGE_FILE} of=image.squashfs bs=4M iflag=skip_bytes,count_bytes skip=$offset status=progress && \
|
||||
unsquashfs image.squashfs
|
||||
|
||||
FROM obsidian-extractor-${TARGETARCH} AS obsidian-extractor
|
||||
|
||||
FROM --platform=${TARGET_IMAGE_PLATFORM} ${BASE_IMAGE}
|
||||
RUN apt-get update && \
|
||||
apt-get install -y --no-install-recommends --no-install-suggests \
|
||||
libgtk-3-0 libnss3 libgbm1 libasound2 \
|
||||
|
|
|
|||
Loading…
Reference in a new issue