{
 "app_id": "page.codeberg.impromptux.ytdl-gui",
 "source_url": "https://raw.githubusercontent.com/flathub/page.codeberg.impromptux.ytdl-gui/master/page.codeberg.impromptux.ytdl-gui.yml",
 "runtime": "org.kde.Platform",
 "runtime_version": "6.10",
 "sdk": "org.kde.Sdk",
 "finish_args": [
  "--share=ipc",
  "--share=network",
  "--socket=fallback-x11",
  "--socket=wayland",
  "--filesystem=xdg-download/VideoDownloader:create",
  "--filesystem=xdg-config/kdeglobals:ro",
  "--talk-name=com.canonical.AppMenu.Registrar",
  "--talk-name=org.kde.kconfig.notify",
  "--talk-name=org.kde.KGlobalSettings"
 ],
 "module_count": 9,
 "fetched_at": "2026-09-17T16:17:08.103794+00:00",
 "manifest": {
  "id": "page.codeberg.impromptux.ytdl-gui",
  "runtime": "org.kde.Platform",
  "runtime-version": "6.10",
  "sdk": "org.kde.Sdk",
  "command": "youtubedl-gui",
  "finish-args": [
   "--share=ipc",
   "--socket=fallback-x11",
   "--socket=wayland",
   "--share=network",
   "--filesystem=xdg-download/VideoDownloader:create"
  ],
  "modules": [
   {
    "name": "pyxattr",
    "buildsystem": "simple",
    "build-commands": [
     "pip3 install --no-build-isolation --prefix=/app ."
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/iustin/pyxattr/archive/refs/tags/v0.8.1.tar.gz",
      "sha256": "ce7ef783e751b96610a6eb32fc49a89340b5dc575fbe15054ce7935ebaf49edb",
      "x-checker-data": {
       "type": "json",
       "url": "https://api.github.com/repos/iustin/pyxattr/releases/latest",
       "version-query": ".tag_name",
       "url-query": "\"https://github.com/iustin/pyxattr/archive/refs/tags/\" + $version + \".tar.gz\""
      }
     }
    ]
   },
   {
    "name": "mutagen",
    "buildsystem": "simple",
    "build-commands": [
     "pip3 install --no-build-isolation --prefix=/app ."
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/quodlibet/mutagen/archive/refs/tags/release-1.48.1.tar.gz",
      "sha256": "779f18015af1b28af59bd80c6292aa8151ca7e5fe6a36e17a394dda515981a5e",
      "x-checker-data": {
       "type": "json",
       "url": "https://api.github.com/repos/quodlibet/mutagen/releases/latest",
       "version-query": ".tag_name",
       "url-query": "\"https://github.com/quodlibet/mutagen/archive/refs/tags/\" + $version + \".tar.gz\""
      }
     }
    ]
   },
   {
    "name": "pycryptodomex",
    "buildsystem": "simple",
    "build-commands": [
     "touch .separate_namespace",
     "pip3 install --no-build-isolation --prefix=/app ."
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/Legrandin/pycryptodome/archive/refs/tags/v3.23.0.tar.gz",
      "sha256": "5a905f0f4237b79aefee47f3e04568db2ecb70c55dd7cb118974c5260aa9e285",
      "x-checker-data": {
       "type": "json",
       "url": "https://api.github.com/repos/Legrandin/pycryptodome/tags",
       "version-query": "[.[].name | select(test(\"^v?[0-9.]+$\"))] | sort_by(sub(\"^v\"; \"\") | split(\".\") | map(tonumber))[-1]",
       "url-query": "\"https://github.com/Legrandin/pycryptodome/archive/refs/tags/\" + $version + \".tar.gz\""
      }
     }
    ]
   },
   {
    "name": "websockets",
    "buildsystem": "simple",
    "build-commands": [
     "pip3 install --no-build-isolation --prefix=/app ."
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/aaugustin/websockets/archive/refs/tags/17.1.tar.gz",
      "sha256": "35ceb07d65405d36302e4f5c21dd6f2050e0c334929cc9fc40b9c5973ce84bcb",
      "x-checker-data": {
       "type": "json",
       "url": "https://api.github.com/repos/aaugustin/websockets/tags",
       "version-query": "[.[].name | select(test(\"^v?[0-9.]+$\"))] | sort_by(sub(\"^v\"; \"\") | split(\".\") | map(tonumber))[-1]",
       "url-query": "\"https://github.com/aaugustin/websockets/archive/refs/tags/\" + $version + \".tar.gz\""
      }
     }
    ]
   },
   {
    "name": "brotli",
    "buildsystem": "simple",
    "build-commands": [
     "pip3 install --no-build-isolation --prefix=/app ."
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/google/brotli/archive/refs/tags/v1.2.0.tar.gz",
      "sha256": "816c96e8e8f193b40151dad7e8ff37b1221d019dbcb9c35cd3fadbfe6477dfec",
      "x-checker-data": {
       "type": "json",
       "url": "https://api.github.com/repos/google/brotli/releases/latest",
       "version-query": ".tag_name",
       "url-query": "\"https://github.com/google/brotli/archive/refs/tags/\" + $version + \".tar.gz\""
      }
     }
    ]
   },
   {
    "name": "deno",
    "buildsystem": "simple",
    "build-commands": [
     "install -Dt /app/bin deno"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/denoland/deno/releases/download/v2.9.6/deno-x86_64-unknown-linux-gnu.zip",
      "sha256": "394f07f4da2bebe6ce6f1e7ce0fa16429b29b08c35e3fac3fe25972676dff4b2",
      "x-checker-data": {
       "type": "json",
       "url": "https://api.github.com/repos/denoland/deno/releases/latest",
       "version-query": ".tag_name",
       "url-query": ".assets[] | select(.name == \"deno-x86_64-unknown-linux-gnu.zip\").browser_download_url"
      },
      "only-arches": [
       "x86_64"
      ]
     },
     {
      "type": "archive",
      "url": "https://github.com/denoland/deno/releases/download/v2.9.6/deno-aarch64-unknown-linux-gnu.zip",
      "sha256": "9a46afc6c392c7cd2ff71a31558935545b46408d0e87f7a86908c712721c046e",
      "x-checker-data": {
       "type": "json",
       "url": "https://api.github.com/repos/denoland/deno/releases/latest",
       "version-query": ".tag_name",
       "url-query": ".assets[] | select(.name == \"deno-aarch64-unknown-linux-gnu.zip\").browser_download_url"
      },
      "only-arches": [
       "aarch64"
      ]
     }
    ]
   },
   {
    "name": "yt-dlp-ejs",
    "buildsystem": "simple",
    "build-commands": [
     "pip3 install --prefix=/app *.whl"
    ],
    "sources": [
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/e3/bd/520769863744b669440a924271a6159ddd82ad5ae26b4ac4d4b69e9f8d44/yt_dlp_ejs-0.8.0-py3-none-any.whl",
      "sha256": "79300e5fca7f937a1eeede11f0456862c1b41107ce1d726871e0207424f4bdb4",
      "x-checker-data": {
       "type": "pypi",
       "name": "yt-dlp-ejs",
       "packagetype": "bdist_wheel"
      }
     }
    ]
   },
   {
    "name": "yt-dlp",
    "buildsystem": "simple",
    "build-commands": [
     "pip3 install --no-dependencies --prefix=/app *.whl"
    ],
    "sources": [
     {
      "type": "file",
      "url": "https://files.pythonhosted.org/packages/69/b2/8cd1613f56eed7ceb64fbd4df3f1c01246bfb098e6f398228bafda22b80b/yt_dlp-2026.8.19-py3-none-any.whl",
      "sha256": "1d57897e94c6665a0a6f9bc54b34e584284e32c034ffab3a7df25d8f7b24eedf",
      "x-checker-data": {
       "type": "pypi",
       "name": "yt-dlp",
       "packagetype": "bdist_wheel"
      }
     }
    ]
   },
   {
    "name": "youtubedl-gui",
    "buildsystem": "cmake",
    "sources": [
     {
      "type": "git",
      "url": "https://codeberg.org/impromptux/ytdl-gui.git",
      "commit": "bc812d22b6dbad66babef4fbcce84945c442164d",
      "x-checker-data": {
       "type": "git",
       "tag-pattern": "(\\d+\\.\\d+)"
      },
      "disable-submodules": true
     },
     {
      "type": "patch",
      "paths": [
       "patches/default_folder.patch"
      ]
     },
     {
      "type": "shell",
      "commands": [
       "install -D resources/flatpak/page.codeberg.impromptux.ytdl-gui.metainfo.xml -t /app/share/metainfo/"
      ]
     }
    ],
    "post-install": [
     "desktop-file-edit --set-key='Exec' --set-value='youtubedl-gui' /app/share/applications/page.codeberg.impromptux.ytdl-gui.desktop"
    ]
   }
  ]
 }
}