{
 "app_id": "org.tropy.Tropy",
 "source_url": "https://raw.githubusercontent.com/flathub/org.tropy.Tropy/master/org.tropy.Tropy.yml",
 "runtime": "org.freedesktop.Platform",
 "runtime_version": "25.08",
 "sdk": "org.freedesktop.Sdk",
 "finish_args": [
  "--share=network",
  "--share=ipc",
  "--socket=x11",
  "--socket=wayland",
  "--socket=fallback-x11",
  "--socket=cups",
  "--device=dri",
  "--filesystem=home",
  "--filesystem=/media",
  "--filesystem=xdg-run/gvfsd",
  "--filesystem=/run/media",
  "--filesystem=/mnt",
  "--filesystem=xdg-run/gvfs",
  "--talk-name=org.gnome.Mutter.IdleMonitor",
  "--talk-name=org.gtk.vfs.*"
 ],
 "module_count": 7,
 "fetched_at": "2026-09-17T16:16:47.247192+00:00",
 "manifest": {
  "app-id": "org.tropy.Tropy",
  "base": "org.electronjs.Electron2.BaseApp",
  "base-version": "25.08",
  "runtime": "org.freedesktop.Platform",
  "runtime-version": "25.08",
  "sdk": "org.freedesktop.Sdk",
  "sdk-extensions": [
   "org.freedesktop.Sdk.Extension.node22"
  ],
  "command": "tropy",
  "finish-args": [
   "--share=ipc",
   "--socket=wayland",
   "--socket=fallback-x11",
   "--share=network",
   "--socket=cups",
   "--device=dri",
   "--talk-name=org.gnome.Mutter.IdleMonitor",
   "--filesystem=home",
   "--filesystem=/media",
   "--filesystem=/run/media",
   "--filesystem=/mnt",
   "--talk-name=org.gtk.vfs.*",
   "--filesystem=xdg-run/gvfs",
   "--filesystem=xdg-run/gvfsd",
   "--env=XCURSOR_PATH=/run/host/user-share/icons:/run/host/share/icons"
  ],
  "cleanup": [
   "/include",
   "/lib/*.a",
   "/lib/*.la",
   "/lib/pkgconfig",
   "/share/pkgconfig"
  ],
  "modules": [
   {
    "name": "libimagequant",
    "builddir": true,
    "buildsystem": "meson",
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/lovell/libimagequant/archive/v2.4.1.tar.gz",
      "sha256": "da531249038e17f0674cef6e5d4100e43bf8cdfb4f330bc2a590bff50cd91913"
     }
    ]
   },
   {
    "name": "libspng",
    "builddir": true,
    "buildsystem": "cmake-ninja",
    "cleanup": [
     "/lib/cmake"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/randy408/libspng/archive/v0.7.4.tar.gz",
      "sha256": "47ec02be6c0a6323044600a9221b049f63e1953faf816903e7383d4dc4234487"
     }
    ]
   },
   {
    "name": "cgif",
    "builddir": true,
    "buildsystem": "meson",
    "config-opts": [
     "--buildtype=release"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/dloebl/cgif/archive/refs/tags/v0.5.0.tar.gz",
      "sha256": "d6cb312c7da2c6c9f310811aa3658120c0316ba130c48a012e7baf3698920fe9"
     }
    ]
   },
   {
    "name": "poppler-data",
    "builddir": true,
    "buildsystem": "cmake-ninja",
    "sources": [
     {
      "type": "archive",
      "url": "https://poppler.freedesktop.org/poppler-data-0.4.12.tar.gz",
      "sha256": "c835b640a40ce357e1b83666aabd95edffa24ddddd49b8daff63adb851cdab74"
     }
    ]
   },
   {
    "name": "poppler-glib",
    "builddir": true,
    "buildsystem": "cmake-ninja",
    "config-opts": [
     "-DENABLE_ZLIB=ON",
     "-DENABLE_LIBTIFF=ON",
     "-DENABLE_LIBPNG=ON",
     "-DENABLE_GLIB=ON",
     "-DENABLE_LIBOPENJPEG=openjpeg2",
     "-DENABLE_DCTDECODER=libjpeg",
     "-DENABLE_BOOST=OFF",
     "-DENABLE_CPP=OFF",
     "-DENABLE_UTILS=OFF",
     "-DENABLE_QT5=OFF",
     "-DENABLE_QT6=OFF"
    ],
    "cleanup": [
     "/lib/girepository-1.0",
     "/share/gir-1.0"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://poppler.freedesktop.org/poppler-25.10.0.tar.xz",
      "sha256": "6b5e9bb64dabb15787a14db1675291c7afaf9387438cc93a4fb7f6aec4ee6fe0"
     }
    ]
   },
   {
    "name": "libvips",
    "builddir": true,
    "buildsystem": "meson",
    "config-opts": [
     "--buildtype=release",
     "-Ddeprecated=false",
     "-Dexamples=false",
     "-Dintrospection=disabled",
     "-Dmodules=disabled",
     "-Dppm=false",
     "-Danalyze=false",
     "-Dradiance=false"
    ],
    "cleanup": [
     "/bin/vips*",
     "/share/man"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/libvips/libvips/releases/download/v8.17.3/vips-8.17.3.tar.xz",
      "sha256": "41e9a1439cd57dcc6d4435a085e2cfe181d9da1962fa84a484f09e8b536e4b77"
     }
    ]
   },
   {
    "name": "tropy",
    "buildsystem": "simple",
    "build-options": {
     "append-path": "/usr/lib/sdk/node22/bin",
     "env": {
      "SHARP_FORCE_GLOBAL_LIBVIPS": "true",
      "XDG_CACHE_HOME": "/run/build/tropy/flatpak-node/cache",
      "NPM_CONFIG_CACHE": "/run/build/tropy/flatpak-node/npm-cache",
      "NPM_CONFIG_LOGLEVEL": "info",
      "NPM_CONFIG_OFFLINE": "true",
      "NPM_CONFIG_AUDIT": "false",
      "NPM_CONFIG_FUND": "false"
     }
    },
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/tropy/tropy/archive/refs/tags/v1.17.3.tar.gz",
      "sha256": "87965f3526512e465e89997fbb1522e35183f8de65f48d5d746cc67b1a799a4f",
      "dest": "tropy"
     },
     {
      "type": "file",
      "url": "https://www.sqlite.org/2025/sqlite-autoconf-3480000.tar.gz",
      "sha256": "ac992f7fca3989de7ed1fe99c16363f848794c8c32a158dafd4eb927a2e02fd5"
     },
     "generated-sources.json",
     {
      "type": "file",
      "path": "tropy.sh"
     },
     {
      "type": "file",
      "path": "001.electron-got-checksum.patch"
     }
    ],
    "subdir": "tropy",
    "build-commands": [
     "install -Dm755 ../tropy.sh /app/bin/tropy",
     "npm install --ignore-scripts\nnode node_modules/electron/install.js\n",
     "mv ../sqlite-autoconf* node_modules/sqlite3/deps\nnode scripts/rebuild.js --skip-headers -f sharp sqlite3\n",
     "patch -p 1 < ../001.electron-got-checksum.patch\n",
     "npm run build",
     "cd dist/Tropy-linux-*\ninstall -Dm644 -t /app/share/metainfo org.tropy.Tropy.metainfo.xml\ninstall -Dm644 -t /app/share/applications org.tropy.Tropy.desktop\nrm -r resources/icons/hicolor/1024x1024\nmv resources/icons /app/share\nmv resources/mime /app/share\ncp -r * /app\n",
     "install -Dm755 -t /app ../flatpak-node/libffmpeg.so"
    ]
   }
  ]
 }
}