diff --git a/Telegram/CMakeLists.txt b/Telegram/CMakeLists.txt
index d9bcc80f9..ac8b90c8b 100644
--- a/Telegram/CMakeLists.txt
+++ b/Telegram/CMakeLists.txt
@@ -1680,7 +1680,6 @@ endif()
if (LINUX AND DESKTOP_APP_USE_PACKAGED)
include(GNUInstallDirs)
- configure_file("../lib/xdg/telegramdesktop.metainfo.xml.in" "${CMAKE_CURRENT_BINARY_DIR}/telegramdesktop.metainfo.xml" @ONLY)
generate_appdata_changelog(Telegram "${CMAKE_SOURCE_DIR}/changelog.txt" "${CMAKE_CURRENT_BINARY_DIR}/telegramdesktop.metainfo.xml")
install(TARGETS Telegram RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" BUNDLE DESTINATION "${CMAKE_INSTALL_BINDIR}")
install(FILES "Resources/art/icon16.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/16x16/apps" RENAME "telegram.png")
@@ -1690,6 +1689,6 @@ if (LINUX AND DESKTOP_APP_USE_PACKAGED)
install(FILES "Resources/art/icon128.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/128x128/apps" RENAME "telegram.png")
install(FILES "Resources/art/icon256.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/256x256/apps" RENAME "telegram.png")
install(FILES "Resources/art/icon512.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/512x512/apps" RENAME "telegram.png")
- install(FILES "../lib/xdg/telegramdesktop.desktop" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications" RENAME "${TDESKTOP_LAUNCHER_BASENAME}.desktop")
- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/telegramdesktop.metainfo.xml" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/metainfo" RENAME "${TDESKTOP_LAUNCHER_BASENAME}.metainfo.xml")
+ install(FILES "../lib/xdg/telegramdesktop.desktop" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications")
+ install(FILES "../lib/xdg/telegramdesktop.metainfo.xml" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/metainfo")
endif()
diff --git a/Telegram/SourceFiles/platform/linux/specific_linux.cpp b/Telegram/SourceFiles/platform/linux/specific_linux.cpp
index 6a63aff42..15498ed09 100644
--- a/Telegram/SourceFiles/platform/linux/specific_linux.cpp
+++ b/Telegram/SourceFiles/platform/linux/specific_linux.cpp
@@ -403,6 +403,17 @@ namespace Platform {
void start() {
QGuiApplication::setDesktopFileName([] {
+ if (KSandbox::isFlatpak()) {
+ return qEnvironmentVariable("FLATPAK_ID") + qsl(".desktop");
+ }
+
+ if (KSandbox::isSnap()) {
+ return qEnvironmentVariable("SNAP_INSTANCE_NAME")
+ + '_'
+ + cExeName()
+ + qsl(".desktop");
+ }
+
if (!Core::UpdaterDisabled() && !cExeName().isEmpty()) {
const auto appimagePath = qsl("file://%1%2").arg(
cExeDir(),
@@ -419,7 +430,7 @@ void start() {
AppName.utf16().replace(' ', '_'));
}
- return qsl(QT_STRINGIFY(TDESKTOP_LAUNCHER_BASENAME) ".desktop");
+ return qsl("telegramdesktop.desktop");
}());
LOG(("Launcher filename: %1").arg(QGuiApplication::desktopFileName()));
diff --git a/Telegram/cmake/telegram_options.cmake b/Telegram/cmake/telegram_options.cmake
index 1c3c25431..ff6bd398a 100644
--- a/Telegram/cmake/telegram_options.cmake
+++ b/Telegram/cmake/telegram_options.cmake
@@ -8,10 +8,6 @@ option(TDESKTOP_API_TEST "Use test API credentials." OFF)
set(TDESKTOP_API_ID "0" CACHE STRING "Provide 'api_id' for the Telegram API access.")
set(TDESKTOP_API_HASH "" CACHE STRING "Provide 'api_hash' for the Telegram API access.")
-if (LINUX)
- set(TDESKTOP_LAUNCHER_BASENAME "" CACHE STRING "Desktop file base name.")
-endif()
-
if (TDESKTOP_API_TEST)
set(TDESKTOP_API_ID 17349)
set(TDESKTOP_API_HASH 344583e45741c457fe1862106095a5eb)
@@ -53,8 +49,3 @@ endif()
if (DESKTOP_APP_SPECIAL_TARGET)
target_compile_definitions(Telegram PRIVATE TDESKTOP_ALLOW_CLOSED_ALPHA)
endif()
-
-if (NOT TDESKTOP_LAUNCHER_BASENAME)
- set(TDESKTOP_LAUNCHER_BASENAME "telegramdesktop")
-endif()
-target_compile_definitions(Telegram PRIVATE TDESKTOP_LAUNCHER_BASENAME=${TDESKTOP_LAUNCHER_BASENAME})
diff --git a/lib/xdg/telegramdesktop.metainfo.xml.in b/lib/xdg/telegramdesktop.metainfo.xml
similarity index 98%
rename from lib/xdg/telegramdesktop.metainfo.xml.in
rename to lib/xdg/telegramdesktop.metainfo.xml
index d9ee7635c..40675e798 100644
--- a/lib/xdg/telegramdesktop.metainfo.xml.in
+++ b/lib/xdg/telegramdesktop.metainfo.xml
@@ -73,7 +73,6 @@
none
moderate
- @TDESKTOP_LAUNCHER_BASENAME@.desktop
telegram-desktop
diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml
index d8014d496..7934511c0 100644
--- a/snap/snapcraft.yaml
+++ b/snap/snapcraft.yaml
@@ -17,7 +17,7 @@ apps:
telegram-desktop:
command: bin/desktop-launch telegram-desktop
common-id: org.telegram.desktop
- desktop: usr/share/applications/telegram-desktop_telegram-desktop.desktop
+ desktop: usr/share/applications/telegramdesktop.desktop
environment:
# Tell glib to use portals on file associations handling.
GTK_USE_PORTAL: 1
@@ -127,7 +127,6 @@ parts:
- -DTDESKTOP_API_ID=611335
- -DTDESKTOP_API_HASH=d524b414d21f4d37f08684c1df41ac9c
- -DDESKTOP_APP_USE_PACKAGED_LAZY=ON
- - -DTDESKTOP_LAUNCHER_BASENAME=telegram-desktop_telegram-desktop
override-pull: |
craftctl default