tdesktop/snap/snapcraft.yaml

349 lines
9.1 KiB
YAML
Raw Normal View History

Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
name: telegram-desktop
adopt-info: telegram
2020-01-25 05:44:58 +00:00
icon: Telegram/Resources/art/icon512@2x.png
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
2020-05-15 18:36:35 +00:00
base: core20
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
grade: stable
confinement: strict
architectures:
- build-on: amd64
- build-on: arm64
- build-on: armhf
- build-on: ppc64el
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
apps:
telegram-desktop:
2020-05-15 18:36:35 +00:00
command: bin/desktop-launch telegram-desktop
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
common-id: org.telegram.desktop
2020-05-15 18:36:35 +00:00
desktop: usr/share/applications/telegramdesktop.desktop
2020-06-07 20:38:59 +00:00
environment:
# Use GTK3 cursor theme, icon theme and open/save file dialogs.
QT_QPA_PLATFORMTHEME: gtk3
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
plugs:
- alsa
- audio-playback
- audio-record
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
- desktop
- desktop-legacy
- home
- network
- network-manager
- opengl
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
- pulseaudio
- removable-media
- unity7
- wayland
2020-02-03 08:38:15 +00:00
- x11
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
plugs:
2020-01-25 05:44:58 +00:00
# Support for common GTK themes
# https://forum.snapcraft.io/t/how-to-use-the-system-gtk-theme-via-the-gtk-common-themes-snap/6235
gsettings:
gtk-3-themes:
interface: content
2020-01-25 05:44:58 +00:00
target: $SNAP/data-dir/themes
default-provider: gtk-common-themes
icon-themes:
interface: content
2020-01-25 05:44:58 +00:00
target: $SNAP/data-dir/icons
default-provider: gtk-common-themes
sound-themes:
interface: content
2020-01-25 05:44:58 +00:00
target: $SNAP/data-dir/sounds
default-provider: gtk-common-themes
layout:
/usr/share/alsa:
bind: $SNAP/usr/share/alsa
/usr/share/X11:
bind: $SNAP/usr/share/X11
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
parts:
telegram:
2020-01-25 05:44:58 +00:00
plugin: cmake
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
source: .
source-type: git
2020-05-15 18:36:35 +00:00
parse-info: [usr/share/metainfo/telegramdesktop.appdata.xml]
build-environment:
2020-05-15 18:36:35 +00:00
- LD_LIBRARY_PATH: $SNAPCRAFT_STAGE/usr/lib
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
build-packages:
2020-05-15 18:36:35 +00:00
- qtbase5-private-dev
2020-01-25 05:44:58 +00:00
- libasound2-dev
- libglib2.0-dev
- libgtk-3-dev
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
- liblzma-dev
2020-01-25 05:44:58 +00:00
- libopus-dev
- libpulse-dev
2020-05-15 18:36:35 +00:00
- libqt5svg5-dev
- libqt5waylandclient5-dev
- libqt5x11extras5-dev
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
- libssl-dev
- libxcb1-dev
- libxcb-screensaver0-dev
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
- zlib1g-dev
stage-packages:
2020-05-15 18:36:35 +00:00
- qt5-image-formats-plugins
- qtwayland5
- libasound2
- libgtk-3-0
2020-01-25 05:44:58 +00:00
- liblzma5
2020-05-15 18:36:35 +00:00
- libopus0
- libpulse0
- libqt5svg5
- libqt5waylandclient5
- libqt5x11extras5
- libssl1.1
- libxcb1
- libxcb-screensaver0
2020-05-15 18:36:35 +00:00
- zlib1g
cmake-parameters:
2020-01-25 05:44:58 +00:00
- -DCMAKE_BUILD_TYPE=Release
2020-05-15 18:36:35 +00:00
- -DCMAKE_INSTALL_PREFIX=/usr
2020-01-25 05:44:58 +00:00
- -DTDESKTOP_API_ID=611335
- -DTDESKTOP_API_HASH=d524b414d21f4d37f08684c1df41ac9c
- -DDESKTOP_APP_USE_PACKAGED_LAZY=ON
2020-01-25 05:44:58 +00:00
- -DDESKTOP_APP_USE_PACKAGED_FONTS=OFF
- -DTDESKTOP_USE_GTK_FILE_DIALOG=ON
2020-05-15 18:36:35 +00:00
- -DDESKTOP_APP_QTWAYLANDCLIENT_PRIVATE_HEADERS=$SNAPCRAFT_STAGE/usr/include/$SNAPCRAFT_ARCH_TRIPLET/qt5/QtWaylandClient/5.12.8
2020-01-25 05:44:58 +00:00
override-pull: |
snapcraftctl pull
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
2020-01-25 05:44:58 +00:00
version_file=Telegram/build/version
version=$(sed -n "s/AppVersionStr[ ]\+\(.*\)\+/\1/p" $version_file)
beta=$(sed -n "s/BetaChannel[ ]\+\(.*\)\+/\1/p" $version_file)
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
2020-01-25 05:44:58 +00:00
if [ "$beta" != "0" ]; then
version="$version-beta"
fi
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
2020-01-25 05:44:58 +00:00
version="${version}$(git describe --tags | sed 's,^v[^-]\+,,')"
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
2020-01-25 05:44:58 +00:00
snapcraftctl set-version "$version"
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
2020-05-15 18:36:35 +00:00
sed -i 's|^Icon=.*|Icon=/usr/share/icons/hicolor/512x512/apps/telegram.png|g' lib/xdg/telegramdesktop.desktop
2020-01-25 05:44:58 +00:00
after:
2020-05-15 18:36:35 +00:00
- desktop-qt5
2020-03-09 07:11:12 +00:00
- ffmpeg
- openal
- qtwayland
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
2020-05-15 18:36:35 +00:00
desktop-qt5:
source: https://github.com/ubuntu/snapcraft-desktop-helpers.git
source-subdir: qt
2020-01-25 05:44:58 +00:00
plugin: make
2020-05-15 18:36:35 +00:00
make-parameters: ["FLAVOR=qt5"]
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
build-packages:
2020-01-25 05:44:58 +00:00
- build-essential
2020-05-15 18:36:35 +00:00
- qtbase5-dev
- dpkg-dev
2020-01-25 05:44:58 +00:00
stage-packages:
2020-05-15 18:36:35 +00:00
- libxkbcommon0
- ttf-ubuntu-font-family
- dmz-cursor-theme
- light-themes
- adwaita-icon-theme
- gnome-themes-standard
- shared-mime-info
- libqt5gui5
- libgdk-pixbuf2.0-0
- libqt5svg5 # for loading icon themes which are svg
- try: [appmenu-qt5] # not available on core18
- locales-all
- xdg-user-dirs
- fcitx-frontend-qt5
Snap packaging support (#4505) * qtbuilder: inherit from make plugin instead of autotools * qtbuilder: update to properly support snapcraft 2.23 We don't use the default 'source' property as it will recursively download all the submodules and we don't want that. Implement newer get_pull_properties. * gyp-cmake: only strip in Release mode and if we've a binary * telegram-snap: add first basic snapcraft.yaml to build tdesktop from src We need to build upstream versions of libva, ffmpeg (with opus support), openal, portaudio with custom flags and patched versions of gyp, and Qt. This requires some custom plugins for patching sources, mix repos and new build plugins for qt and gyp+cmake. * plugins: properly support snapcraft 2.23 Implementing get_pull_properties class methods * patches: add qt patch for saving tray icon in .cache TMPDIR overriding isn't needed anymore * snapcraft: add xdg-open support to open URIs * snapcraft: move external libraries to desktop-integration part * snapcraft: set QTCOMPOSE pointing to proper x11-data * desktop-integration: add libpulse0 to enable voice/video recording / playing * qtbuilder: add support for local patches that overrides remote ones * qtbuilder: make qt-version optional This allows to build upstream git version * gyp-cmake: inherit from CMakePlugin reusing artifacts + organize * patched-python: add support for patching using local files * snapcraft.yaml: use distro's portaudio instead of building ours * telegram: disable desktop file generation and custuom scheme registration * snapcraft.yaml: update version to 0.10.20 * .travis.yaml: add support for building using travis * qtbuilder: add g++ as build packages * snapcraft: use distro opus version * snapcraft: lzma for qt and ffmpeg * snapcraft: add libdbusmenu for qt * openal: add oss4-dev as build dependency * travis: test some hacks to speed things up * Move plugins to new dir * QtBuilder: add qt-extra-plugins support To include plugins that are out of the main qt repo * QtBuilder: generate branch based on qtversion * GypCMake: allow to define custom environment variables * snapcraft: set name to 'telegram-desktop' * snapcraft: add 'network-status' interface to Telegram app To automatically reconnect * snapcraft: use prime instead of snap for flitering files * snacpraft: update dependencies and versions to build against git * snapcraft: build with GCC-7 hackish solution * QtBuilder: add environment support * QtBuilder: add qt-extra-plugins to get_pull_properties * snapcraft: set name of the app to telegram-desktop too * snapcraft: build opus from git (v1.2.1) So it does upstream, let's follow them * telegram: apply patch to get proper home path from $HOME * snapcraft: add version-script to generate proper version from upstream * telegram: simplify the start command * snapcraft: get rid of snapd-xdg-open * snapcraft: use gtk3 and unity integration * qt5: build using gcc7 too * telegram-desktop: update desktop file * telegram: add support unity launcher when snapped We should actually fix this inside libunity * gcc7: remove toolchain source.list after install * desktop-integration: add pulse-audio as dependency again * telegram-desktop: define XCURSOR_PATH to get system cursors * gui: move files to snap folder * libtgvoip: don't enable SSE2 in unsupported archs * snapcraft: add -alpha sufix on versions and do not include git for tags * telegram: add patch for building in ARM chips * desktop-integration: include libunity * telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do * snapcraft: compile libunity from upstream to get proper launcher integration Drop custom patch, it's just better to do it here. This means we go back to upstream telegramdesktop desktop-id too. * telegram: get desktop file and icon from telegram part source * snapcraft: improve snap description * gcc7: not needed to add devscripts or equivs Unless we try to build gcc7 here, which well... A bit time consuming. * libunity: use upstream branch (my changes just merged) * ci: remove travis integration, it takes to long b.s.io does it already * telegram: don't do unneeded checks in armhf * telegram: more signed/unsigned char fixes for ARM, ignore errors for now * telegram: add getclock definitions for ARM * telegram: arm support, always use signed chars * telegram: don't need to use signed chars in ARM anymmore As we've fixed all the issues * telegram: replace .desktop file icon with snap one, add keywords * snapcraft: use diversity check on alpha value * telegram: detect Ubuntu desktop adding support for badges and indicators * telegram: unset WAYLAND_DISPLAY to get it running properly * Add a README * telegram: just add network-observe plug * snapcraft: add beta detection * snapcraft: only add network-manager plug, users might connect it We should actually have a connection-observe plug. * patches: add patch to use a customizable working dir in debug * snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key Setting compose to proper paths will allow to get composition key working again in snapped QT apps. * desktop-integration: add indicator-gtk3 and chinese fonts * desktop-integration: don't snap fonts, use desktop interface Fonts are now bind-mounted from host by the desktop interface * patches: apply patches using 3way merge if they fail * patches: update telegram-arm-support to apply cleanly * snapcraft: disable wayland using desktop script env * snapcraft: libunity has been SRU'ed, we can go back to archive version * patches: update arm support patch * breakpad: use upstream versions * telegram, patches: remove upstreamed patches * patches: disable Werror It causes failures in some archs, and we don't care much at this level (for now). * patches: remove libtgvoip msse2 patch * Revert "patches: remove libtgvoip msse2 patch" Not yet in the submodule used by telegram desktop This reverts commit 2e6f4cc619ee591fdd250cb3b2af4f0330d1c4ca. * snapcraft: show bash debugging on version script * desktop-gtk3: update mime database and icon-cache during install This saves some startup time * telegram: add gsettings plug * telegram-launch: use user-common as home and migrate if needed * Import snap folder from telegram-snap repo * patches, qtbase: use indicator icon in unity or ubuntu Patch already applied upstream, remove from snap only * .gitignore: add snap related files * telegram-launch: merge downloaded files folder if found * snap: remove patches not needed for upstream * snap, patch, libtgvoip: sync with upstream * telegram-launch: remove default dir after moving download files * snap: remove libtgvoip patches, we can just update the submodule The actual module update should be managed in a different commit though. * snapcraft: explain why gcc7 part is needed * snapcraft: update summary text * qt: no need to build gstreamer, and reorder configflags * plugins: add copyright informations * telegram: add common-id and parse-info with AppData Use the appstream integration that snapcraft now supports. * openal: use v1.18 branch as upstream does now * qtbuilder: support tags in versions better * qtbuilder: use shutil.rmtree to remove files * telegram: set QT_IM_MODULE only if not set * telegram: add removable-media plug * telegram-launch: ignore ibus as input method And add support for getting it from $TELEGRAM_QT_IM_MODULE env var * snapcraft: use git describe to get revision * snapcraft: use override-* stanzas for scriptlets * snap: exit scriptlets on first error * snap: remove summary, inherit from AppData * lib_export: use includes paths as defined per platform
2018-07-21 14:35:37 +00:00
2020-05-15 18:36:35 +00:00
qt5-xdgdesktopportal-platform:
plugin: nil
stage-packages:
- qt5-xdgdesktopportal-platformtheme
# Qt checks that ibus-daemon binary is present, otherwise doesn't work
ibus:
plugin: nil
stage-packages:
- ibus
2020-03-28 03:23:19 +00:00
dav1d:
source: https://github.com/videolan/dav1d.git
source-depth: 1
source-tag: 0.6.0
plugin: meson
2020-05-15 18:36:35 +00:00
build-packages:
- nasm
meson-parameters:
- --prefix=/usr
2020-05-15 18:36:35 +00:00
- --libdir=lib
- -Denable_tools=false
- -Denable_tests=false
2020-04-19 02:57:03 +00:00
prime:
- -./usr/include
2020-05-15 18:36:35 +00:00
- -./usr/lib/pkgconfig
2020-03-28 03:23:19 +00:00
2020-03-09 07:11:12 +00:00
ffmpeg:
source: https://github.com/FFmpeg/FFmpeg.git
source-depth: 1
2020-06-17 16:27:37 +00:00
source-branch: release/4.3
2020-03-09 07:11:12 +00:00
plugin: autotools
build-packages:
2020-05-15 18:36:35 +00:00
- nasm
2020-03-09 07:11:12 +00:00
- libopus-dev
- libva-dev
- libvdpau-dev
2020-05-15 18:36:35 +00:00
stage-packages:
- libopus0
- libva2
- libva-drm2
- libvdpau1
autotools-configure-parameters:
2020-03-09 07:11:12 +00:00
- --prefix=/usr
2020-04-19 02:57:03 +00:00
- --disable-static
2020-03-09 07:11:12 +00:00
- --disable-debug
- --disable-programs
- --disable-doc
- --disable-network
- --disable-autodetect
2020-03-09 07:11:12 +00:00
- --disable-everything
- --disable-neon
- --disable-alsa
- --disable-iconv
2020-04-19 02:57:03 +00:00
- --enable-shared
2020-03-28 03:23:19 +00:00
- --enable-libdav1d
2020-03-09 07:11:12 +00:00
- --enable-libopus
- --enable-vaapi
- --enable-vdpau
- --enable-protocol=file
- --enable-hwaccel=h264_vaapi
- --enable-hwaccel=h264_vdpau
- --enable-hwaccel=mpeg4_vaapi
- --enable-hwaccel=mpeg4_vdpau
2020-03-09 07:11:12 +00:00
- --enable-decoder=aac
- --enable-decoder=aac_fixed
2020-03-09 07:11:12 +00:00
- --enable-decoder=aac_latm
- --enable-decoder=aasc
- --enable-decoder=alac
2020-03-09 07:11:12 +00:00
- --enable-decoder=flac
- --enable-decoder=gif
- --enable-decoder=h264
- --enable-decoder=hevc
2020-03-28 03:23:19 +00:00
- --enable-decoder=libdav1d
2020-03-09 07:11:12 +00:00
- --enable-decoder=mp1
- --enable-decoder=mp1float
- --enable-decoder=mp2
- --enable-decoder=mp2float
- --enable-decoder=mp3
- --enable-decoder=mp3adu
- --enable-decoder=mp3adufloat
- --enable-decoder=mp3float
- --enable-decoder=mp3on4
- --enable-decoder=mp3on4float
- --enable-decoder=mpeg4
- --enable-decoder=msmpeg4v2
- --enable-decoder=msmpeg4v3
- --enable-decoder=opus
- --enable-decoder=pcm_alaw
- --enable-decoder=pcm_f32be
- --enable-decoder=pcm_f32le
- --enable-decoder=pcm_f64be
- --enable-decoder=pcm_f64le
- --enable-decoder=pcm_lxf
- --enable-decoder=pcm_mulaw
- --enable-decoder=pcm_s16be
- --enable-decoder=pcm_s16be_planar
- --enable-decoder=pcm_s16le
- --enable-decoder=pcm_s16le_planar
- --enable-decoder=pcm_s24be
- --enable-decoder=pcm_s24daud
- --enable-decoder=pcm_s24le
- --enable-decoder=pcm_s24le_planar
- --enable-decoder=pcm_s32be
- --enable-decoder=pcm_s32le
- --enable-decoder=pcm_s32le_planar
- --enable-decoder=pcm_s64be
- --enable-decoder=pcm_s64le
- --enable-decoder=pcm_s8
- --enable-decoder=pcm_s8_planar
- --enable-decoder=pcm_u16be
- --enable-decoder=pcm_u16le
- --enable-decoder=pcm_u24be
- --enable-decoder=pcm_u24le
- --enable-decoder=pcm_u32be
- --enable-decoder=pcm_u32le
- --enable-decoder=pcm_u8
- --enable-decoder=pcm_zork
2020-03-09 07:11:12 +00:00
- --enable-decoder=vorbis
- --enable-decoder=wavpack
- --enable-decoder=wmalossless
- --enable-decoder=wmapro
- --enable-decoder=wmav1
- --enable-decoder=wmav2
- --enable-decoder=wmavoice
- --enable-encoder=libopus
- --enable-parser=aac
- --enable-parser=aac_latm
- --enable-parser=flac
- --enable-parser=h264
- --enable-parser=hevc
2020-03-09 07:11:12 +00:00
- --enable-parser=mpeg4video
- --enable-parser=mpegaudio
- --enable-parser=opus
- --enable-parser=vorbis
- --enable-demuxer=aac
- --enable-demuxer=flac
- --enable-demuxer=gif
- --enable-demuxer=h264
- --enable-demuxer=hevc
- --enable-demuxer=m4v
2020-03-09 07:11:12 +00:00
- --enable-demuxer=mov
- --enable-demuxer=mp3
- --enable-demuxer=ogg
- --enable-demuxer=wav
- --enable-muxer=ogg
- --enable-muxer=opus
2020-04-19 02:57:03 +00:00
prime:
- -./usr/include
- -./usr/lib/pkgconfig
after:
2020-03-28 03:23:19 +00:00
- dav1d
2020-03-09 07:11:12 +00:00
openal:
source: https://github.com/kcat/openal-soft.git
source-depth: 1
source-tag: openal-soft-1.20.1
plugin: cmake
build-packages:
- libasound2-dev
- libpulse-dev
- libsndio-dev
- portaudio19-dev
2020-05-15 18:36:35 +00:00
stage-packages:
- libasound2
- libpulse0
- libportaudio2
- libsndio7.0
cmake-parameters:
- -DCMAKE_BUILD_TYPE=Release
2020-05-15 18:36:35 +00:00
- -DCMAKE_INSTALL_PREFIX=/usr
- -DALSOFT_EXAMPLES=OFF
- -DALSOFT_TESTS=OFF
- -DALSOFT_UTILS=OFF
- -DALSOFT_CONFIG=OFF
2020-04-19 02:57:03 +00:00
prime:
2020-05-15 18:36:35 +00:00
- -./usr/include
- -./usr/lib/cmake
- -./usr/lib/pkgconfig
qtwayland:
source: https://github.com/qt/qtwayland.git
source-depth: 1
2020-05-15 18:36:35 +00:00
source-tag: v5.12.8
plugin: dump
override-build: |
2020-05-15 18:36:35 +00:00
qmake
make -j$(nproc)
2020-05-15 18:36:35 +00:00
make INSTALL_ROOT="$SNAPCRAFT_PART_INSTALL" install
after:
2020-05-15 18:36:35 +00:00
- desktop-qt5
stage: [-./usr/lib]
prime: [-./*]