productName: "MarkText" appId: "com.github.marktext.marktext" asar: true asarUnpack: - "**/*.node" directories: output: "build" # Workaround: Don't download prebuilt libraries (GH#2953). buildDependenciesFromSource: true files: - "dist/electron/**/*" # Don't bundle these files - "!**/node_modules/**/{CHANGELOG.md,README.md,README,readme.md,readme}" - "!node_modules/css-b64-images/{draft.png,draft.xcf}" - "!node_modules/dagre-d3-renderer/dist/demo/" - "!node_modules/dagre-d3/dist/demo/" - "!node_modules/dragula/resources" - "!node_modules/jest-image-snapshot/images/" - "!node_modules/jest-image-snapshot/jest-image-snapshot.png" - "!node_modules/**/*.js.map" - "!node_modules/**/*.cjs.map" - "!node_modules/**/*.mjs.map" - "!node_modules/**/*.ts.map" - "!node_modules/vscode-ripgrep/{jsconfig.json,*.md,LICENSE}" - "!node_modules/vscode-ripgrep/download.js" - "!node_modules/vscode-ripgrep/postinstall.js" # Don't bundle build files - "!node_modules/ced/bin" - "!node_modules/ced/vendor" - "!node_modules/fontmanager-redux/bin" - "!node_modules/keyboard-layout/bin" - "!node_modules/keytar/bin" - "!node_modules/native-keymap/bin" # Large source files that aren't needed - "!node_modules/dagre-d3/dist/dagre-d3.min.js" - "!node_modules/mermaid/dist/mermaid.js" - "!node_modules/mermaid/dist/mermaid.min.js" - "!node_modules/mermaid/dist/mermaid.esm.min.mjs" - "!node_modules/katex/dist/katex.min.js" - "!node_modules/katex/dist/katex.mjs" - "!node_modules/vega/build-es5/" - "!node_modules/vega-embed/build-es5/" # Don't bundle Linux build files - "!node_modules/ced/build/Release/compact_enc_det.a" # Don't bundle Windows build files - "!node_modules/**/{*.vcxproj,*.vcxproj.filters}" - "!node_modules/**/build/Release/{*.lib,*.exp,*.ilk,*.pdb,*.iobj,*.ipdb}" - "!node_modules/**/build/Release/obj" - "!node_modules/ced/build/vendor" extraFiles: - "LICENSE" - from: "resources/THIRD-PARTY-LICENSES.txt" to: "THIRD-PARTY-LICENSES.txt" fileAssociations: - ext: - "md" - "markdown" - "mmd" - "mdown" - "mdtxt" - "mdtext" - "mdx" name: "Markdown" description: "Markdown document" role: "Editor" icon: "../resources/icons/md.icns" mac: artifactName: "marktext-${arch}-mac.${ext}" icon: "resources/icons/icon.icns" darkModeSupport: true target: - target: dmg arch: [x64, arm64] - target: zip arch: [x64, arm64] dmg: artifactName: "marktext-${arch}.${ext}" contents: - x: 410 y: 240 type: "link" path: "/Applications" - x: 130 y: 240 type: "file" win: artifactName: "marktext-${arch}-win.${ext}" icon: "resources/icons/icon.ico" target: - target: "nsis" arch: [ia32, x64] - target: "zip" arch: [ia32, x64] requestedExecutionLevel: "asInvoker" nsis: artifactName: "marktext-setup.${ext}" perMachine: false oneClick: false allowToChangeInstallationDirectory: true include: "resources/windows/installer.nsh" linux: artifactName: "marktext-${arch}.${ext}" executableName: "marktext" description: "A simple and elegant open-source markdown editor that focused on speed and usability." maintainer: "MarkText Contributors" category: "Office;TextEditor;Utility" mimeTypes: - "text/markdown" icon: "resources/icons" desktop: StartupWMClass: "marktext" Keywords: "marktext;" target: - target: "AppImage" - target: "deb" - target: "rpm" - target: "tar.gz" # Workaround because file association array doesn't work. fileAssociations: - ext: "md" name: "Markdown" description: "Markdown document" - ext: "markdown" name: "Markdown" description: "Markdown document" - ext: "mmd" name: "Markdown" description: "Markdown document" - ext: "mdown" name: "Markdown" description: "Markdown document" - ext: "mdtxt" name: "Markdown" description: "Markdown document" - ext: "mdtext" name: "Markdown" description: "Markdown document" deb: # Custom dependencies: depends: # keytar - "libsecret-1-0" # keyboard-layout - "libx11-xcb1" - "libxkbfile1" # fontmanager - "libfontconfig1" fpm: # Expat := MIT like - "--license=Expat" rpm: # Custom dependencies: depends: # keytar - "libsecret" # keyboard-layout - "libX11-xcb" - "libxkbfile" # fontmanager - "fontconfig"