id: org.telegram.desktop runtime: org.freedesktop.Platform runtime-version: '23.08' sdk: org.freedesktop.Sdk command: telegram-desktop rename-icon: telegram finish-args: - --share=ipc - --share=network - --socket=wayland - --socket=fallback-x11 - --socket=pulseaudio - --device=all - --talk-name=org.gnome.Mutter.IdleMonitor - --talk-name=org.kde.StatusNotifierWatcher - --talk-name=com.canonical.AppMenu.Registrar - --talk-name=com.canonical.indicator.application - --talk-name=org.ayatana.indicator.application - --filesystem=xdg-run/pipewire-0 - --unset-env=QT_PLUGIN_PATH - --env=PATH=/app/lib/webview/bin:/app/bin:/usr/bin sdk-extensions: - org.freedesktop.Sdk.Extension.llvm16 add-extensions: org.freedesktop.Platform.ffmpeg-full: directory: lib/ffmpeg add-ld-path: . version: '23.08' autodownload: true autodelete: false org.telegram.desktop.webview: directory: lib/webview add-ld-path: lib version: stable autodownload: true autodelete: true cleanup-commands: - mkdir -p ${FLATPAK_DEST}/lib/ffmpeg - mkdir -p ${FLATPAK_DEST}/lib/webview build-options: cflags: -DNDEBUG cxxflags: -DNDEBUG append-path: /usr/lib/sdk/llvm16/bin append-ld-library-path: /usr/lib/sdk/llvm16/lib cleanup: - /doc - /include - /lib/cmake - /lib/libexec - /lib/metatypes - /lib/pkgconfig - /lib/systemd - /mkspecs - /modules - /share/doc - /share/man - '*.prl' - '*.la' - '*.a' modules: - name: yasm buildsystem: cmake-ninja config-opts: - -DCMAKE_BUILD_TYPE=None sources: - type: archive url: https://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz sha256: 3dce6601b495f5b3d45b59f7d2492a340ee7e84b5beca17e48f862502bd5603f x-checker-data: type: anitya project-id: 5286 url-template: https://www.tortall.net/projects/yasm/releases/yasm-$version.tar.gz cleanup: - '*' - name: jinja2 buildsystem: simple build-commands: - pip3 install --exists-action=i --no-index --find-links="file://${PWD}" --prefix=${FLATPAK_DEST} flit-core --no-build-isolation - pip3 install --exists-action=i --no-index --find-links="file://${PWD}" --prefix=${FLATPAK_DEST} "Jinja2" --no-build-isolation sources: - type: file url: https://files.pythonhosted.org/packages/c4/e6/c1ac50fe3eebb38a155155711e6e864e254ce4b6e17fe2429b4c4d5b9e80/flit_core-3.9.0.tar.gz sha256: 72ad266176c4a3fcfab5f2930d76896059851240570ce9a98733b658cb786eba x-checker-data: type: pypi name: flit-core - type: file url: https://files.pythonhosted.org/packages/87/5b/aae44c6655f3801e81aa3eef09dbbf012431987ba564d7231722f68df02d/MarkupSafe-2.1.5.tar.gz sha256: d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b x-checker-data: type: pypi name: MarkupSafe - type: file url: https://files.pythonhosted.org/packages/ed/55/39036716d19cab0747a5020fc7e907f362fbf48c984b14e62127f7e68e5d/jinja2-3.1.4.tar.gz sha256: 4a3aee7acbbe7303aede8e9648d13b8bf88a429282aa6122a993f0ac800cb369 x-checker-data: type: pypi name: Jinja2 cleanup: - '*' - name: systemd buildsystem: meson builddir: true config-opts: - --buildtype=plain - -Drootprefix=/app make-args: - systemd-detect-virt no-make-install: true post-install: - install -D systemd-detect-virt "$FLATPAK_DEST/bin" sources: - type: archive url: https://github.com/systemd/systemd/archive/v256.4/systemd-256.4.tar.gz sha256: 7861d544190f938cac1b242624d78c96fe2ebbc7b72f86166e88b50451c6fa58 x-checker-data: type: json url: https://api.github.com/repos/systemd/systemd/releases/latest tag-query: .tag_name timestamp-query: .published_at version-query: $tag | sub("^[vV]"; "") url-query: '"https://github.com/systemd/systemd/archive/\($tag)/systemd-\($version).tar.gz"' - type: shell commands: - 'sed -i "/systemd-detect-virt/,/link_with/ s/link_with : \\[libshared\\]/link_with : [libshared_static, libsystemd_static, libbasic]/" meson.build' - name: boost buildsystem: simple build-commands: - ./bootstrap.sh --prefix=${FLATPAK_DEST} --with-libraries=program_options,regex - ./b2 variant=release link=shared runtime-link=shared cxxflags="$CXXFLAGS" linkflags="$LDFLAGS" -j $FLATPAK_BUILDER_N_JOBS install sources: - type: archive url: https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/boost_1_85_0.tar.bz2 sha256: 7009fe1faa1697476bdc7027703a2badb84e849b7b0baad5086b087b971f8617 x-checker-data: type: anitya project-id: 6845 stable-only: true url-template: https://boostorg.jfrog.io/artifactory/main/release/$version/source/boost_${major}_${minor}_${patch}.tar.bz2 - name: protobuf buildsystem: cmake-ninja builddir: true config-opts: - -DCMAKE_BUILD_TYPE=None - -DBUILD_SHARED_LIBS=ON - -Dprotobuf_BUILD_TESTS=OFF sources: - type: git url: https://github.com/protocolbuffers/protobuf.git commit: 63def39e881afa496502d9c410f4ea948e59490d tag: v27.2 x-checker-data: type: json url: https://api.github.com/repos/protocolbuffers/protobuf/releases/latest tag-query: .tag_name timestamp-query: .published_at version-query: $tag | sub("^[vV]"; "") cleanup: - /bin - name: highway buildsystem: cmake-ninja builddir: true config-opts: - -DCMAKE_BUILD_TYPE=None - -DBUILD_SHARED_LIBS=ON - -DBUILD_TESTING=OFF - -DHWY_ENABLE_CONTRIB=OFF - -DHWY_ENABLE_EXAMPLES=OFF sources: - type: archive url: https://github.com/google/highway/archive/1.2.0/highway-1.2.0.tar.gz sha256: 7e0be78b8318e8bdbf6fa545d2ecb4c90f947df03f7aadc42c1967f019e63343 x-checker-data: type: json url: https://api.github.com/repos/google/highway/releases/latest tag-query: .tag_name timestamp-query: .published_at version-query: $tag url-query: '"https://github.com/google/highway/archive/\($tag)/highway-\($version).tar.gz"' - name: libde265 buildsystem: cmake-ninja config-opts: - -DCMAKE_BUILD_TYPE=None - -DENABLE_SDL=OFF sources: - type: archive url: https://github.com/strukturag/libde265/archive/v1.0.15/libde265-1.0.15.tar.gz sha256: d4e55706dfc5b2c5c9702940b675ce2d3e7511025c6894eaddcdbaf0b15fd3f3 x-checker-data: type: json url: https://api.github.com/repos/strukturag/libde265/releases/latest tag-query: .tag_name timestamp-query: .published_at version-query: $tag | sub("^[vV]"; "") url-query: '"https://github.com/strukturag/libde265/archive/\($tag)/libde265-\($version).tar.gz"' cleanup: - /bin - name: libavif buildsystem: cmake-ninja builddir: true config-opts: - -DCMAKE_BUILD_TYPE=None - -DAVIF_CODEC_DAV1D=SYSTEM - -DAVIF_LIBYUV=OFF sources: - type: archive url: https://github.com/AOMediaCodec/libavif/archive/v1.1.0/libavif-1.1.0.tar.gz sha256: edb31951005d7a143be1724f24825809599a4832073add50eaf987733defb5c8 x-checker-data: type: json url: https://api.github.com/repos/AOMediaCodec/libavif/releases/latest tag-query: .tag_name timestamp-query: .published_at version-query: $tag | sub("^[vV]"; "") url-query: '"https://github.com/AOMediaCodec/libavif/archive/\($tag)/libavif-\($version).tar.gz"' - name: libheif buildsystem: cmake-ninja builddir: true config-opts: - -DCMAKE_BUILD_TYPE=None - -DWITH_X265=OFF - -DWITH_AOM=OFF - -DWITH_RAV1E=OFF - -DWITH_DAV1D=OFF - -DWITH_EXAMPLES=OFF sources: - type: archive url: https://github.com/strukturag/libheif/archive/v1.18.1/libheif-1.18.1.tar.gz sha256: 73bc94442038d44d56fe730f72516ae53134eb15b878a7ad89ef60fac93a3318 x-checker-data: type: json url: https://api.github.com/repos/strukturag/libheif/releases/latest tag-query: .tag_name timestamp-query: .published_at version-query: $tag | sub("^[vV]"; "") url-query: '"https://github.com/strukturag/libheif/archive/\($tag)/libheif-\($version).tar.gz"' - name: libjxl buildsystem: cmake-ninja builddir: true config-opts: - -DCMAKE_BUILD_TYPE=None - -DBUILD_TESTING=OFF - -DJPEGXL_ENABLE_DEVTOOLS=OFF - -DJPEGXL_ENABLE_TOOLS=OFF - -DJPEGXL_INSTALL_JPEGLI_LIBJPEG=ON - -DJPEGXL_ENABLE_DOXYGEN=OFF - -DJPEGXL_ENABLE_MANPAGES=OFF - -DJPEGXL_ENABLE_BENCHMARK=OFF - -DJPEGXL_ENABLE_EXAMPLES=OFF - -DJPEGXL_ENABLE_JNI=OFF - -DJPEGXL_ENABLE_SJPEG=OFF - -DJPEGXL_ENABLE_OPENEXR=OFF - -DJPEGXL_ENABLE_SKCMS=OFF sources: - type: archive url: https://github.com/libjxl/libjxl/archive/v0.10.3/libjxl-0.10.3.tar.gz sha256: e0191411cfcd927eebe5392d030fe4283fe27ba1685ab7265104936e0b4283a6 x-checker-data: type: json url: https://api.github.com/repos/libjxl/libjxl/releases/latest tag-query: .tag_name timestamp-query: .published_at version-query: $tag | sub("^[vV]"; "") url-query: '"https://github.com/libjxl/libjxl/archive/\($tag)/libjxl-\($version).tar.gz"' - type: archive url: https://github.com/libjpeg-turbo/libjpeg-turbo/archive/3.0.3/libjpeg-turbo-3.0.3.tar.gz sha256: a649205a90e39a548863a3614a9576a3fb4465f8e8e66d54999f127957c25b21 strip-components: 0 x-checker-data: type: json url: https://api.github.com/repos/libjpeg-turbo/libjpeg-turbo/releases/latest tag-query: .tag_name timestamp-query: .published_at version-query: $tag url-query: '"https://github.com/libjpeg-turbo/libjpeg-turbo/archive/\($tag)/libjpeg-turbo-\($version).tar.gz"' - type: shell commands: - mv libjpeg-turbo-*/* third_party/libjpeg-turbo - type: patch paths: - desktop-app-patches/libjxl.patch - name: rnnoise config-opts: - --disable-static - --disable-examples - --disable-doc sources: - type: git url: https://gitlab.xiph.org/xiph/rnnoise.git commit: 7f449bf8bd3b933891d12c30112268c4090e4d59 - name: qtbase buildsystem: cmake-ninja builddir: true config-opts: - -DCMAKE_BUILD_TYPE=None - -DINSTALL_ARCHDATADIR=/app/lib - -DINPUT_openssl=linked sources: - type: archive url: https://download.qt.io/archive/qt/6.7/6.7.2/submodules/qtbase-everywhere-src-6.7.2.tar.xz sha256: c5f22a5e10fb162895ded7de0963328e7307611c688487b5d152c9ee64767599 x-checker-data: type: anitya project-id: 7927 url-template: https://download.qt.io/archive/qt/$major.$minor/$version/submodules/qtbase-everywhere-src-$version.tar.xz - qtbase.json cleanup: - /bin - name: qtshadertools buildsystem: cmake-ninja builddir: true config-opts: - -DCMAKE_BUILD_TYPE=None sources: - type: archive url: https://download.qt.io/archive/qt/6.7/6.7.2/submodules/qtshadertools-everywhere-src-6.7.2.tar.xz sha256: edfa34c0ac8c00fcaa949df1d8e7a77d89dadd6386e683ce6c3e3b117e2f7cc1 x-checker-data: type: anitya project-id: 7927 url-template: https://download.qt.io/archive/qt/$major.$minor/$version/submodules/qtshadertools-everywhere-src-$version.tar.xz cleanup: - '*' - name: qtdeclarative buildsystem: cmake-ninja builddir: true config-opts: - -DCMAKE_BUILD_TYPE=None sources: - type: archive url: https://download.qt.io/archive/qt/6.7/6.7.2/submodules/qtdeclarative-everywhere-src-6.7.2.tar.xz sha256: 4c29cba1af8c42d425d8eb6e01bad24cb80f4b983d71eef566a0542dfdb9b999 x-checker-data: type: anitya project-id: 7927 url-template: https://download.qt.io/archive/qt/$major.$minor/$version/submodules/qtdeclarative-everywhere-src-$version.tar.xz cleanup: - /bin - name: qtwayland buildsystem: cmake-ninja builddir: true config-opts: - -DCMAKE_BUILD_TYPE=None sources: - type: archive url: https://download.qt.io/archive/qt/6.7/6.7.2/submodules/qtwayland-everywhere-src-6.7.2.tar.xz sha256: a2a057e1dd644bd44abb9990fecc194b2e25c2e0f39e81aa9fee4c1e5e2a8a5b x-checker-data: type: anitya project-id: 7927 url-template: https://download.qt.io/archive/qt/$major.$minor/$version/submodules/qtwayland-everywhere-src-$version.tar.xz - qtwayland.json cleanup: - /bin - name: qtimageformats buildsystem: cmake-ninja builddir: true config-opts: - -DCMAKE_BUILD_TYPE=None sources: - type: archive url: https://download.qt.io/archive/qt/6.7/6.7.2/submodules/qtimageformats-everywhere-src-6.7.2.tar.xz sha256: e1a1d8785fae67d16ad0a443b01d5f32663a6b68d275f1806ebab257485ce5d6 x-checker-data: type: anitya project-id: 7927 url-template: https://download.qt.io/archive/qt/$major.$minor/$version/submodules/qtimageformats-everywhere-src-$version.tar.xz - name: qtsvg buildsystem: cmake-ninja builddir: true config-opts: - -DCMAKE_BUILD_TYPE=None sources: - type: archive url: https://download.qt.io/archive/qt/6.7/6.7.2/submodules/qtsvg-everywhere-src-6.7.2.tar.xz sha256: fb0d1286a35be3583fee34aeb5843c94719e07193bdf1d4d8b0dc14009caef01 x-checker-data: type: anitya project-id: 7927 url-template: https://download.qt.io/archive/qt/$major.$minor/$version/submodules/qtsvg-everywhere-src-$version.tar.xz - name: tg_owt buildsystem: cmake-ninja builddir: true config-opts: - -DCMAKE_BUILD_TYPE=None sources: - type: git url: https://github.com/desktop-app/tg_owt.git commit: c9cc4390ab951f2cbc103ff783a11f398b27660b x-checker-data: type: json parent-id: telegram-desktop-git-0 commit-data-url: >- "https://github.com/telegramdesktop/tdesktop/raw/\($parent.new.tag//$parent.current.tag)/snap/snapcraft.yaml" commit-query: >- .parts.webrtc."source-commit" version-data-url: >- "https://api.github.com/repos/desktop-app/tg_owt/commits/\($commit)" version-query: >- "desktop-app/tg_owt@\(.sha[0:7])" timestamp-data-url: >- "https://api.github.com/repos/desktop-app/tg_owt/commits/\($commit)" timestamp-query: >- .commit.committer.date cleanup: - '*' - name: telegram-desktop buildsystem: cmake-ninja builddir: true build-options: arch: aarch64: cflags: -g1 cxxflags: -g1 config-opts: - -DCMAKE_BUILD_TYPE=None - -DTDESKTOP_API_ID=611335 - -DTDESKTOP_API_HASH=d524b414d21f4d37f08684c1df41ac9c - -DDESKTOP_APP_USE_PACKAGED_LAZY=ON sources: - type: git url: https://github.com/telegramdesktop/tdesktop.git commit: 78093173a92e9b0b60086ed5d91bdc051be7fb67 tag: v5.2.3 x-checker-data: type: json url: https://api.github.com/repos/telegramdesktop/tdesktop/releases tag-query: first | .tag_name timestamp-query: first | .published_at version-query: $tag | sub("^[vV]"; "") - type: shell commands: - sed -i '/-Werror/d' Telegram/ThirdParty/dispatch/cmake/modules/DispatchCompilerWarnings.cmake