app-id: com.zettlr.Zettlr runtime: org.freedesktop.Platform runtime-version: "21.08" base: org.electronjs.Electron2.BaseApp base-version: "21.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" build-options: cflags: -Os cppflags: -Os cxxflags: -Os ldflags: -Os sources: - type: archive url: https://nodejs.org/dist/v16.13.0/node-v16.13.0.tar.gz sha256: 9c00e5b6024cfcbc9105f9c58cf160762e78659a345d100c5bd80a7fb38c684f cleanup: - /include - "*" - name: yarn sources: - type: file url: https://github.com/yarnpkg/yarn/releases/download/v1.22.17/yarn-1.22.17.js sha256: 0a7a650c99f34c58cca1aaa82c25424d5383c29db30678450159b035107aea69 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.16/pandoc-2.16-linux-amd64.tar.gz sha256: d3961adc1805641bf11dcd36ed5f5ed168c84f67e6d7b920ed981cc4ac1e0b07 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: 4bfda751ce4ba73a0be59d812775aafb09af2c93 tag: v2.0.1 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