{
 "app_id": "io.github.screwys.Rufin",
 "source_url": "https://raw.githubusercontent.com/flathub/io.github.screwys.Rufin/master/io.github.screwys.Rufin.json",
 "runtime": "org.gnome.Platform",
 "runtime_version": "50",
 "sdk": "org.gnome.Sdk",
 "finish_args": [
  "--share=ipc",
  "--share=network",
  "--socket=fallback-x11",
  "--socket=pulseaudio",
  "--socket=wayland",
  "--device=dri",
  "--filesystem=xdg-run/app/com.discordapp.Discord:create",
  "--talk-name=org.kde.StatusNotifierWatcher",
  "--talk-name=org.freedesktop.Notifications"
 ],
 "module_count": 4,
 "fetched_at": "2026-09-17T16:12:06.897691+00:00",
 "manifest": {
  "app-id": "io.github.screwys.Rufin",
  "runtime": "org.gnome.Platform",
  "runtime-version": "50",
  "sdk": "org.gnome.Sdk",
  "sdk-extensions": [
   "org.freedesktop.Sdk.Extension.rust-stable"
  ],
  "command": "rufin",
  "separate-locales": false,
  "build-options": {
   "append-path": "/usr/lib/sdk/rust-stable/bin",
   "env": {
    "CARGO_NET_OFFLINE": "true"
   }
  },
  "finish-args": [
   "--share=ipc",
   "--share=network",
   "--socket=fallback-x11",
   "--socket=wayland",
   "--socket=pulseaudio",
   "--device=dri",
   "--talk-name=org.kde.StatusNotifierWatcher",
   "--talk-name=org.freedesktop.Notifications",
   "--filesystem=xdg-run/app/com.discordapp.Discord:create"
  ],
  "cleanup": [
   "/include",
   "/lib/cmake",
   "/lib/pkgconfig",
   "/lib/*.a",
   "/lib/*.la",
   "/share/doc"
  ],
  "modules": [
   {
    "name": "game-music-emu",
    "buildsystem": "cmake-ninja",
    "config-opts": [
     "-DGME_BUILD_STATIC=OFF",
     "-DGME_BUILD_TESTING=OFF",
     "-DGME_BUILD_EXAMPLES=OFF",
     "-DGME_YM2612_EMU=Nuked"
    ],
    "post-install": [
     "install -Dm644 gme/ext/LICENSE $FLATPAK_DEST/share/licenses/$FLATPAK_ID/game-music-emu/emu2413-LICENSE"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/libgme/game-music-emu/archive/refs/tags/0.6.5.tar.gz",
      "sha256": "8531678502451c2cf04248cda45c8b4645e19fcfb63e6a7ec2549641c47bb392"
     }
    ]
   },
   {
    "name": "libopenmpt",
    "buildsystem": "autotools",
    "config-opts": [
     "--without-portaudio",
     "--disable-openmpt123",
     "--disable-examples",
     "--disable-tests",
     "--disable-static"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://lib.openmpt.org/files/libopenmpt/src/libopenmpt-0.8.7+release.autotools.tar.gz",
      "sha256": "275c29ef47be9992f62a35fcc96f7ca05c06d2fd05c9298b8dee9f743f75b089"
     }
    ]
   },
   {
    "name": "gstreamer-openmpt-gme",
    "buildsystem": "simple",
    "build-commands": [
     "meson setup build -Dauto_features=disabled -Dgme=enabled -Dopenmpt=enabled --buildtype=release",
     "meson compile -C build gstgme gstopenmpt",
     "install -Dm755 build/ext/gme/libgstgme.so /app/lib/gstreamer-1.0/libgstgme.so",
     "install -Dm755 build/ext/openmpt/libgstopenmpt.so /app/lib/gstreamer-1.0/libgstopenmpt.so"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.26.11.tar.xz",
      "sha256": "110fb82795f0e569b1e27b12ab9699d35c7762e1ff4db95335d6ac8d1442af3d"
     }
    ]
   },
   {
    "name": "rufin",
    "buildsystem": "simple",
    "build-commands": [
     "install -Dm644 cargo/config .cargo/config.toml",
     "cargo fetch --locked --offline --manifest-path Cargo.toml --verbose",
     "cmake -S . -B build-cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/app -DRUFIN_BUILD_IDENTITY=stable -DRUFIN_CARGO_FROZEN=ON",
     "cmake --build build-cmake --target rufin",
     "cmake --install build-cmake",
     "gtk4-update-icon-cache -f -t /app/share/icons/hicolor"
    ],
    "sources": [
     {
      "type": "git",
      "url": "https://github.com/screwys/Rufin.git",
      "tag": "v0.15.4",
      "commit": "417cde807634d0ebad45e5b94c98485e9ca39765"
     },
     "cargo-sources.json"
    ]
   }
  ]
 }
}