{
 "app_id": "org.rayforge.rayforge",
 "source_url": "https://raw.githubusercontent.com/flathub/org.rayforge.rayforge/master/org.rayforge.rayforge.yml",
 "runtime": "org.gnome.Platform",
 "runtime_version": "49",
 "sdk": "org.gnome.Sdk",
 "finish_args": [
  "--share=ipc",
  "--share=network",
  "--socket=fallback-x11",
  "--socket=wayland",
  "--device=all"
 ],
 "module_count": 17,
 "fetched_at": "2026-09-17T16:16:26.903813+00:00",
 "manifest": {
  "app-id": "org.rayforge.rayforge",
  "runtime": "org.gnome.Platform",
  "runtime-version": "49",
  "sdk": "org.gnome.Sdk",
  "sdk-extensions": [
   "org.freedesktop.Sdk.Extension.rust-stable"
  ],
  "command": "rayforge",
  "finish-args": [
   "--share=ipc",
   "--socket=wayland",
   "--socket=fallback-x11",
   "--device=all",
   "--share=network"
  ],
  "cleanup": [
   "/include",
   "/lib/pkgconfig"
  ],
  "modules": [
   {
    "name": "python3-scikit-build",
    "buildsystem": "simple",
    "build-commands": [
     "pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"scikit-build>=0.14.0\" --no-build-isolation"
    ],
    "sources": [
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl",
      "sha256": "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2"
     },
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/88/ef/eb23f262cca3c0c4eb7ab1933c3b1f03d021f2c48f54763065b6f0e321be/packaging-24.2-py3-none-any.whl",
      "sha256": "09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759"
     },
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/c3/a3/21b519f58de90d684056c52ec4e45f744cfda7483f082dcc4dd18cc74a93/scikit_build-0.18.1-py3-none-any.whl",
      "sha256": "a6860e300f6807e76f21854163bdb9db16afc74eadf34bd6a9947d3fdfcd725a"
     }
    ],
    "cleanup": [
     "*"
    ]
   },
   {
    "name": "python3-pybind11",
    "buildsystem": "simple",
    "build-commands": [
     "pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"pybind11>=2.13.2\" --no-build-isolation"
    ],
    "sources": [
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/13/2f/0f24b288e2ce56f51c920137620b4434a38fd80583dbbe24fc2a1656c388/pybind11-2.13.6-py3-none-any.whl",
      "sha256": "237c41e29157b962835d356b370ededd57594a26d5894a795960f0047cb5caf5"
     }
    ],
    "cleanup": [
     "*"
    ]
   },
   {
    "name": "python3-meson-python",
    "buildsystem": "simple",
    "build-commands": [
     "pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"meson-python>=0.17.1\" --no-build-isolation"
    ],
    "sources": [
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/7d/ec/40c0ddd29ef4daa6689a2b9c5ced47d5b58fa54ae149b19e9a97f4979c8c/meson_python-0.17.1-py3-none-any.whl",
      "sha256": "30a75c52578ef14aff8392677b09c39346e0a24d2b2c6204b8ed30583c11269c"
     },
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/88/ef/eb23f262cca3c0c4eb7ab1933c3b1f03d021f2c48f54763065b6f0e321be/packaging-24.2-py3-none-any.whl",
      "sha256": "09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759"
     },
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/e8/61/9dd3e68d2b6aa40a5fc678662919be3c3a7bf22cba5a6b4437619b77e156/pyproject_metadata-0.9.0-py3-none-any.whl",
      "sha256": "fc862aab066a2e87734333293b0af5845fe8ac6cb69c451a41551001e923be0b"
     }
    ],
    "cleanup": [
     "*"
    ]
   },
   {
    "name": "python3-pythran",
    "buildsystem": "simple",
    "build-commands": [
     "pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"pythran>=0.14.0\" --no-build-isolation"
    ],
    "sources": [
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/44/e4/6e8731d4d10dd09942a6f5015b2148ae612bf13e49629f33f9fade3c8253/beniget-0.4.2.post1-py3-none-any.whl",
      "sha256": "e1b336e7b5f2ae201e6cc21f533486669f1b9eccba018dcff5969cd52f1c20ba"
     },
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/a3/61/8001b38461d751cd1a0c3a6ae84346796a5758123f3ed97a1b121dfbf4f3/gast-0.6.0-py3-none-any.whl",
      "sha256": "52b182313f7330389f72b069ba00f174cfe2a06411099547288839c6cbafbd54"
     },
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/ec/d0/c12ddfd3a02274be06ffc71f3efc6d0e457b0409c4481596881e748cb264/numpy-2.2.2.tar.gz",
      "sha256": "ed6906f61834d687738d25988ae117683705636936cc605be0bb208b23df4d8f"
     },
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl",
      "sha256": "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce"
     },
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/65/0a/557cef9d89cd21d7a4850c31701b7cfa78f6cc8b09249df678d174b6e6ca/pythran-0.17.0-py3-none-any.whl",
      "sha256": "be569cc2817b625ccd2c8f74fa3c93806f245c65fadc282c26a9f546ebd34cfa"
     }
    ]
   },
   {
    "name": "python3-pyvips",
    "buildsystem": "simple",
    "build-commands": [
     "pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"pyvips~=3.2.0\" --no-build-isolation"
    ],
    "sources": [
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/source/p/pyvips/pyvips-3.2.0.tar.gz",
      "sha256": "5fa47cdce4e7f450747c118c12fde913e0710850c6015d8ec4f5af490003a347"
     }
    ],
    "modules": [
     {
      "name": "vips",
      "buildsystem": "meson",
      "sources": [
       {
        "type": "archive",
        "url": "https://github.com/libvips/libvips/releases/download/v8.18.6/vips-8.18.6.tar.xz",
        "sha256": "3c41e1d5458081bfa4a5bc54e116c46259c75c6760a18027764555632b9dda3e"
       }
      ]
     },
     {
      "name": "python3-cffi",
      "buildsystem": "simple",
      "build-commands": [
       "pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"cffi~=1.17.1\" --no-build-isolation"
      ],
      "sources": [
       {
        "type": "file",
        "url": "https://files.pythonhosted.org/packages/fc/97/c783634659c2920c3fc70419e3af40972dbaf758daa229a7d6ea6135c90d/cffi-1.17.1.tar.gz",
        "sha256": "1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824"
       },
       {
        "type": "file",
        "url": "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl",
        "sha256": "c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc"
       }
      ]
     }
    ]
   },
   {
    "name": "openblas",
    "buildsystem": "cmake-ninja",
    "builddir": true,
    "config-opts": [
     "-DBUILD_SHARED_LIBS=ON",
     "-DBUILD_TESTING=OFF",
     "-DNO_AFFINITY=ON",
     "-DUSE_OPENMP=0",
     "-DNO_WARMUP=1",
     "-DNO_AVX512=1",
     "-DBUILD_WITHOUT_LAPAK=1",
     "-DBUILD_WITHOUT_LAPAKE=1",
     "-DDYNAMIC_ARCH=ON"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/OpenMathLib/OpenBLAS/releases/download/v0.3.31/OpenBLAS-0.3.31.tar.gz",
      "sha256": "6dd2a63ac9d32643b7cc636eab57bf4e57d0ed1fff926dfbc5d3d97f2d2be3a6"
     }
    ]
   },
   {
    "name": "python3-maturin",
    "buildsystem": "simple",
    "build-options": {
     "append-path": "/usr/lib/sdk/rust-stable/bin",
     "env": {
      "CARGO_HOME": "/run/build/python3-maturin/cargo",
      "CARGO_NET_OFFLINE": "true"
     }
    },
    "build-commands": [
     "cargo --offline fetch --manifest-path ./Cargo.toml",
     "cargo --offline build --release",
     "install -Dm755 target/release/maturin -t ${FLATPAK_DEST}/bin",
     "install -Dm644 maturin/__init__.py -t ${FLATPAK_DEST}/lib/python$(python -c 'import sys; print(\"%s.%s\" %sys.version_info[0:2])')/site-packages/maturin/"
    ],
    "sources": [
     "cargo-sources-maturin.json",
     {
      "type": "git",
      "url": "https://github.com/PyO3/maturin",
      "tag": "v1.12.6",
      "commit": "b61a28edb1bd435ed876f22cc5281e6dab082119"
     }
    ],
    "cleanup": [
     "*"
    ]
   },
   {
    "name": "python3-vtracer",
    "buildsystem": "simple",
    "build-options": {
     "append-path": "/usr/lib/sdk/rust-stable/bin",
     "env": {
      "CARGO_HOME": "/run/build/python3-vtracer/cargo",
      "CARGO_NET_OFFLINE": "true"
     }
    },
    "build-commands": [
     "cargo fetch --manifest-path ./cmdapp/Cargo.toml --verbose",
     "maturin build --release --compatibility linux --manifest-path ./cmdapp/Cargo.toml",
     "pip3 install --verbose --exists-action=i --no-index --find-links=file://${PWD}/target/wheels --prefix=${FLATPAK_DEST} vtracer --no-build-isolation"
    ],
    "sources": [
     "cargo-sources-vtracer.json",
     {
      "type": "git",
      "url": "https://github.com/visioncortex/vtracer.git",
      "tag": "0.6.15",
      "commit": "fd9cdb08e622f237eb05be553a020ddc9e4c47a1"
     }
    ]
   },
   {
    "name": "python3-msgpack",
    "buildsystem": "simple",
    "build-commands": [
     "pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"msgpack==1.2.2\" --no-build-isolation"
    ],
    "sources": [
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/6e/d3/6592e4064619b04f2dd0054c5fa13e37e3d55eb26044483d871fadb2f46b/msgpack-1.2.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
      "sha256": "d24b38a825bcca41bb956de50eb98451ef291304a8607fad99e619043d3e79b9"
     },
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/d7/75/35823e4419df8792191b2a17ae3fe71b41d02c162b2c491c94d1a87f0caa/msgpack-1.2.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
      "sha256": "1814f92306ae7862908e9ece7cfd90e0dc87ded3e89b6ae7ffdd1175d6376fdc"
     }
    ]
   },
   {
    "name": "python3-raygeo",
    "buildsystem": "simple",
    "build-options": {
     "append-path": "/usr/lib/sdk/rust-stable/bin",
     "env": {
      "CARGO_HOME": "/run/build/python3-raygeo/cargo",
      "CARGO_NET_OFFLINE": "true"
     }
    },
    "build-commands": [
     "cargo --offline fetch --manifest-path ./Cargo.toml",
     "maturin build --release --compatibility linux --manifest-path ./Cargo.toml",
     "pip3 install --verbose --exists-action=i --no-index --find-links=file://${PWD}/target/wheels --prefix=${FLATPAK_DEST} raygeo --no-build-isolation"
    ],
    "sources": [
     "cargo-sources-raygeo.json",
     {
      "type": "git",
      "url": "https://github.com/barebaric/raygeo.git",
      "tag": "v1.50.1",
      "commit": "ea3a56bfc020b8df7f0b7fc7e41a4e4432f376e7"
     }
    ]
   },
   {
    "name": "python3-pyclipper",
    "buildsystem": "simple",
    "build-commands": [
     "pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"pyclipper==1.3.0.post6\" --no-build-isolation --use-deprecated=legacy-resolver"
    ],
    "sources": [
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/4a/b2/550fe500e49c464d73fabcb8cb04d47e4885d6ca4cfc1f5b0a125a95b19a/pyclipper-1.3.0.post6.tar.gz",
      "sha256": "42bff0102fa7a7f2abdd795a2594654d62b786d0c6cd67b72d469114fdeb608c"
     }
    ]
   },
   {
    "name": "python3-expandvars",
    "buildsystem": "simple",
    "build-commands": [
     "pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"expandvars\" --no-build-isolation"
    ],
    "sources": [
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/29/ff/a2440069461c63b95fa8b5b89e26eb606e57d8a01391ccaae3738f1b845d/expandvars-1.0.0-py3-none-any.whl",
      "sha256": "ff1690eceb90bbdeefd1e4b15f4d217f22a3e66f776c2cb060635d2dde4a7689"
     }
    ]
   },
   "shared-modules/glu/glu-9.json",
   "python3-requirements.yaml",
   {
    "name": "rayforge",
    "buildsystem": "simple",
    "build-commands": [
     "for po in $(find . -name '*.po' -path '*/LC_MESSAGES/*'); do msgfmt \"${po}\" -o \"${po%.po}.mo\"; done",
     "pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=/app --no-deps --no-build-isolation ."
    ],
    "post-install": [
     "install -Dm644 rayforge/resources/icons/${FLATPAK_ID}.svg /app/share/icons/hicolor/scalable/apps/${FLATPAK_ID}.svg",
     "install -Dm644 data/${FLATPAK_ID}.desktop /app/share/applications/${FLATPAK_ID}.desktop",
     "for po in rayforge/locale/*/LC_MESSAGES/*.po; do lang=$(basename $(dirname $(dirname \"${po}\"))); domain=$(basename \"${po}\" .po); install -Dm644 \"${po%.po}.mo\" /app/share/locale/${lang}/LC_MESSAGES/${domain}.mo; done",
     "echo $(git describe --exact-match --tags) > ${FLATPAK_DEST}/lib/python$(python -c 'import sys; print(\"%s.%s\" %sys.version_info[0:2])')/site-packages/rayforge/version.txt"
    ],
    "sources": [
     {
      "type": "git",
      "url": "https://github.com/barebaric/rayforge.git",
      "tag": "1.11.1",
      "x-checker-data": {
       "type": "git",
       "url": "https://github.com/barebaric/rayforge.git",
       "tag-pattern": "^([\\d\\.]+(?:-[\\w\\.]+)?)$"
      },
      "commit": "f4731af194c7de2493873f20996ecf4aed33815f"
     }
    ]
   }
  ]
 }
}