app-id: com.zettlr.Zettlr runtime: org.freedesktop.Platform runtime-version: "20.08" base: org.electronjs.Electron2.BaseApp base-version: "20.08" branch: stable sdk: org.freedesktop.Sdk command: run.sh separate-locales: false finish-args: - --share=ipc - --socket=x11 - --socket=wayland - --socket=pulseaudio - --filesystem=host build-options: env: SOURCE_DATE_EPOCH: "1" cleanup: - /lib/debug modules: - name: "nodejs" sources: - type: archive url: https://nodejs.org/dist/v14.15.4/node-v14.15.4.tar.gz sha256: 8610d81b2d4afc3a79afbe6209d510125131c45cae22cac63bb767dcfec1cbf0 cleanup: - /include - "*" - name: yarn sources: - type: file url: https://github.com/yarnpkg/yarn/releases/download/v1.22.10/yarn-1.22.10.js sha256: e094514987bda3cb0839ecfa7d902eb8972e41ed29a841ec14e92772089eb959 buildsystem: simple build-commands: - cp yarn-1.22.10.js /app/bin/yarn - chmod +x /app/bin/yarn cleanup: - "*" - name: pandoc sources: - type: archive url: https://github.com/jgm/pandoc/releases/download/2.11.4/pandoc-2.11.4-linux-amd64.tar.gz sha256: b15ce6009ab833fb51fc472bf8bb9683cd2bd7f8ac948f3ddeb6b8f9a366d69a only-arches: - x86_64 buildsystem: simple build-commands: - cp -rav bin/pandoc /app/bin - name: zettlr buildsystem: simple sources: - type: git url: https://github.com/Zettlr/Zettlr.git commit: 0e80c56063884f769349cb21f0712b12e97f9d4b tag: v1.8.7 dest: zettlr - ./sources_zettlr.json - type: shell commands: - export DIR_NAME=httpsgithub.comelectronelectronreleasesdownloadv11.1.1electron-v11.1.1-linux-x64.zip && (cd flatpak-node/electron-cache && mkdir -p "$DIR_NAME" && ln -s "../$(ls . | grep '^electron-')" "$DIR_NAME/") - export DIR_NAME=v11.1.1 && (cd flatpak-node/electron-cache && mkdir -p "$DIR_NAME" && ln -s "../$(ls . | grep '^electron-')" "$DIR_NAME/") - export DIR_NAME=v11.1.1 && (cd flatpak-node/electron-cache && mkdir -p "$DIR_NAME" && ln -s "../$(ls . | grep '^SHA')" "$DIR_NAME/SHASUMS256.txt") - type: archive url: https://node-pre-gyp.addaleax.net/lzma-native/lzma_native-v6.0.1-n-api-linux-x64.tar.gz sha256: 2fb467add0380d0707edac546c9de5661875e3ac059561169800a2ec27034170 dest: lzma build-commands: - yarn --offline config set yarn-offline-mirror "$(pwd)/flatpak-node/yarn-mirror" && export electron_config_cache="$(pwd)"/flatpak-node/electron-cache && cd zettlr && (while true; do mkdir -p node_modules/lzma-native/binding-v6.0.1-n-api-linux-x64 && cp -ra ../lzma/lzma_native.node node_modules/lzma-native/binding-v6.0.1-n-api-linux-x64/lzma_native.node; done &) && yarn --offline install && sed -i 's|https://github.com/electron/electron/releases/download/|http://127.0.0.1:8080/|' node_modules/@electron/get/dist/cjs/artifact-utils.js - (cd flatpak-node/electron-cache && exec python3 -m http.server 8080) & TO_KILL="$!" && sleep 5 && cd zettlr && ( ( while true; do mkdir -p resources && cp -rav /app/bin/pandoc ./resources/pandoc; done ) & ) && yarn --offline package && kill "$TO_KILL" - cp -ra zettlr/out/* /app/zettlr - name: starter sources: - type: script dest-filename: run.sh commands: - exec /app/zettlr/Zettlr --no-sandbox - type: file path: zettlr.appdata.xml - type: file path: zettlr.desktop - type: file path: zettlr.png buildsystem: simple build-commands: - install run.sh /app/bin/ - mkdir -p /app/share/icons/hicolor/512x512/apps/ && install zettlr.png /app/share/icons/hicolor/512x512/apps/ - mkdir -p /app/share/metainfo && install zettlr.appdata.xml /app/share/metainfo/ - mkdir -p /app/share/applications && install zettlr.desktop /app/share/applications/ rename-desktop-file: zettlr.desktop rename-appdata-file: zettlr.appdata.xml rename-icon: zettlr