{
 "app_id": "io.github.OpenToonz",
 "source_url": "https://raw.githubusercontent.com/flathub/io.github.OpenToonz/master/io.github.OpenToonz.yaml",
 "runtime": "org.kde.Platform",
 "runtime_version": "5.15-25.08",
 "sdk": "org.kde.Sdk",
 "finish_args": [
  "--share=ipc",
  "--socket=pulseaudio",
  "--socket=x11",
  "--device=dri",
  "--filesystem=xdg-config/kdeglobals:ro",
  "--filesystem=host",
  "--talk-name=com.canonical.AppMenu.Registrar",
  "--talk-name=org.kde.kconfig.notify",
  "--talk-name=org.kde.KGlobalSettings"
 ],
 "module_count": 13,
 "fetched_at": "2026-09-17T16:10:24.841545+00:00",
 "manifest": {
  "app-id": "io.github.OpenToonz",
  "runtime": "org.kde.Platform",
  "runtime-version": "5.15-25.08",
  "sdk": "org.kde.Sdk",
  "command": "opentoonz",
  "finish-args": [
   "--share=ipc",
   "--socket=x11",
   "--device=dri",
   "--socket=pulseaudio",
   "--filesystem=host",
   "--env=LD_LIBRARY_PATH=/app/lib:/app/lib/opentoonz"
  ],
  "cleanup": [
   "/include",
   "/lib/cmake",
   "/lib/pkgconfig",
   "/share/gtk-doc",
   "/share/man",
   "/share/pkgconfig",
   "*.a",
   "*.la"
  ],
  "modules": [
   "shared-modules/glew/glew.json",
   "shared-modules/glu/glu-9.json",
   "shared-modules/intltool/intltool-0.51.json",
   {
    "name": "freeglut",
    "buildsystem": "cmake-ninja",
    "builddir": true,
    "config-opts": [
     "-DCMAKE_BUILD_TYPE=RelWithDebInfo",
     "-DCMAKE_POLICY_VERSION_MINIMUM=3.5"
    ],
    "build-options": {
     "cflags": "-fcommon -fpermissive",
     "cxxflags": "-fcommon"
    },
    "sources": [
     {
      "type": "archive",
      "url": "https://downloads.sourceforge.net/project/freeglut/freeglut/3.2.2/freeglut-3.2.2.tar.gz",
      "sha256": "c5944a082df0bba96b5756dddb1f75d0cd72ce27b5395c6c1dde85c2ff297a50"
     },
     {
      "type": "patch",
      "path": "patches/freeglut-egl-proto.patch"
     }
    ]
   },
   {
    "name": "superlu",
    "buildsystem": "cmake",
    "builddir": true,
    "build-options": {
     "cflags": "-fpermissive"
    },
    "config-opts": [
     "-DCMAKE_BUILD_TYPE=RelWithDebInfo",
     "-DCMAKE_POSITION_INDEPENDENT_CODE=True",
     "-DCMAKE_POLICY_VERSION_MINIMUM=3.5"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/xiaoyeli/superlu/archive/v5.2.1.tar.gz",
      "sha256": "77582501dedef295eb74e4dc9433e2816d2d8be211eae307379c13d93c65bc71"
     },
     {
      "type": "patch",
      "paths": [
       "patches/superlu-proto.patch",
       "patches/superlu-proto2.patch"
      ]
     }
    ]
   },
   {
    "name": "OpenBLAS",
    "buildsystem": "cmake-ninja",
    "builddir": true,
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/xianyi/OpenBLAS/archive/v0.3.29.tar.gz",
      "sha256": "38240eee1b29e2bde47ebb5d61160207dc68668a54cac62c076bb5032013b1eb"
     }
    ]
   },
   {
    "name": "json-c",
    "buildsystem": "cmake-ninja",
    "config-opts": [
     "-DCMAKE_POLICY_VERSION_MINIMUM=3.5"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/json-c/json-c/archive/json-c-0.17-20230812.tar.gz",
      "sha256": "024d302a3aadcbf9f78735320a6d5aedf8b77876c8ac8bbb95081ca55054c7eb"
     }
    ]
   },
   {
    "name": "libmypaint",
    "config-opts": [
     "--disable-gegl",
     "--disable-introspection"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/mypaint/libmypaint/releases/download/v1.5.1/libmypaint-1.5.1.tar.xz",
      "sha256": "aef8150a0c84ce2ff6fb24de8d5ffc564845d006f8bad7ed84ee32ed1dd90c2b"
     }
    ]
   },
   {
    "name": "boost",
    "buildsystem": "simple",
    "build-commands": [
     "mkdir -p /app/include/boost",
     "mv -t /app/include/boost *"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://archives.boost.io/release/1.72.0/source/boost_1_72_0.tar.bz2",
      "sha256": "59c9b274bc451cf91a9ba1dd2c7fdcaf5d60b1b3aa83f2c9fa143417cc660722"
     }
    ]
   },
   {
    "name": "x264",
    "config-opts": [
     "--disable-cli",
     "--enable-shared"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://code.videolan.org/videolan/x264/-/archive/1771b556ee45207f8711744ccbd5d42a3949b14c/x264-1771b556ee45207f8711744ccbd5d42a3949b14c.tar.bz2",
      "sha256": "b31c5db5337873b9ee42b8cbc60b56d60ce368fa7e4c4eff90a729b36eeb8326"
     }
    ]
   },
   {
    "name": "ffmpeg",
    "config-opts": [
     "--enable-gpl",
     "--disable-static",
     "--enable-shared",
     "--disable-doc",
     "--disable-ffplay",
     "--enable-libopus",
     "--enable-libvpx",
     "--enable-libx264"
    ],
    "cleanup": [
     "/share/ffmpeg/examples"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://www.ffmpeg.org/releases/ffmpeg-4.2.2.tar.xz",
      "sha256": "cb754255ab0ee2ea5f66f8850e1bd6ad5cac1cd855d0a2f4990fb8c668b0d29c"
     },
     {
      "type": "patch",
      "path": "patches/ffmpeg-as-fix.patch"
     }
    ]
   },
   {
    "name": "opencv",
    "buildsystem": "cmake-ninja",
    "builddir": true,
    "config-opts": [
     "-DCMAKE_BUILD_TYPE=RelWithDebInfo",
     "-DOPENCV_GENERATE_PKGCONFIG=ON",
     "-DWITH_OPENCL=ON",
     "-DWITH_OPENGL=ON",
     "-DWITH_TBB=ON",
     "-DWITH_VULKAN=ON",
     "-DBUILD_WITH_DEBUG_INFO=OFF",
     "-DBUILD_TESTS=OFF",
     "-DBUILD_PERF_TESTS=OFF",
     "-DBUILD_EXAMPLES=OFF",
     "-DINSTALL_C_EXAMPLES=OFF",
     "-DINSTALL_PYTHON_EXAMPLES=OFF",
     "-DWITH_1394=OFF",
     "-DWITH_PROTOBUF=ON",
     "-DBUILD_LIST=calib3d,core,dnn,features2d,flann,highgui,imgcodecs,imgproc,java_bindings_generator,ml,objdetect,photo,python_bindings_generator,python_tests,stitching,video,videoio"
    ],
    "cleanup": [
     "/bin"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/opencv/opencv/archive/4.2.0.tar.gz",
      "sha256": "9ccb2192d7e8c03c58fee07051364d94ed7599363f3b0dce1c5e6cc11c1bb0ec"
     },
     {
      "type": "archive",
      "url": "https://github.com/opencv/opencv_contrib/archive/4.2.0.tar.gz",
      "sha256": "8a6b5661611d89baa59a26eb7ccf4abb3e55d73f99bb52d8f7c32265c8a43020"
     },
     {
      "type": "patch",
      "path": "patches/opencv-cmake.patch"
     }
    ]
   },
   {
    "name": "opentoonz",
    "buildsystem": "cmake-ninja",
    "builddir": true,
    "subdir": "toonz/sources",
    "config-opts": [
     "-DCMAKE_POLICY_VERSION_MINIMUM=3.5",
     "-DCMAKE_BUILD_TYPE=RelWithDebInfo",
     "-DWITH_TRANSLATION=OFF",
     "-DBOOST_ROOT=/app/include/boost"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/opentoonz/opentoonz/archive/refs/tags/v1.8.0.tar.gz",
      "sha256": "4bfcc012cac5f52358250ba5b6aaffb9311760377d4bfd6a542d4e2b71d1e05e"
     },
     {
      "type": "patch",
      "paths": [
       "patches/opentoonz-ffmepg.patch"
      ]
     },
     {
      "type": "shell",
      "commands": [
       "cd thirdparty/tiff-4.0.3 && cp -p /usr/share/automake-*/config.{sub,guess} config && ./configure --with-pic --disable-jbig && make -j $FLATPAK_BUILDER_N_JOBS"
      ]
     }
    ]
   }
  ]
 }
}