Browse Source

Start net-im/telegram-desktop

master
Sergey Kiselev 1 year ago
parent
commit
ce26cedad6
  1. 119
      net-im/telegram-desktop/Makefile
  2. 3
      net-im/telegram-desktop/distinfo
  3. 11
      net-im/telegram-desktop/pkg-descr
  4. 10
      net-im/telegram-desktop/pkg-plist

119
net-im/telegram-desktop/Makefile

@ -0,0 +1,119 @@
PORTNAME= telegram-desktop
DISTVERSION= 4.6.5
CATEGORIES= net-im
MASTER_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/releases/download/v${DISTVERSION}/
DISTNAME= tdesktop-${DISTVERSION}-full
DISTFILES= ${DISTNAME}${EXTRACT_SUFX}
MAINTAINER= ports@FreeBSD.org
COMMENT= Telegram Desktop messaging app
WWW= https://desktop.telegram.org/
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/LICENSE
BROKEN_i386= does not build, webrtc related
NOT_FOR_ARCHS= powerpc powerpc64 powerpcspe
NOT_FOR_ARCHS_REASON= Only little endian is supported
BUILD_DEPENDS= alsa-lib>0:audio/alsa-lib \
microsoft-gsl>0:devel/microsoft-gsl \
pulseaudio>0:audio/pulseaudio \
range-v3>0:devel/range-v3 \
tl-expected>0:devel/tl-expected \
v4l_compat>0:multimedia/v4l_compat \
yasm:devel/yasm \
${LOCALBASE}/lib/libtg_owt.a:net-im/tg_owt
LIB_DEPENDS= libabsl_base.so:devel/abseil \
libavformat.so:multimedia/ffmpeg \
libdbus-1.so:devel/dbus \
libdispatch.so:devel/libdispatch \
libhunspell-1.7.so:textproc/hunspell \
liblz4.so:archivers/liblz4 \
libopenh264.so:multimedia/openh264 \
libopus.so:audio/opus \
libpipewire-0.3.so:multimedia/pipewire \
libprotobuf.so:devel/protobuf \
libqrcodegencpp.so:graphics/qr-code-generator \
librnnoise.so:audio/rnnoise \
libxcb-keysyms.so:x11/xcb-util-keysyms \
libxkbcommon.so:x11/libxkbcommon \
libxxhash.so:devel/xxhash \
libvpx.so:multimedia/libvpx
FLAVORS= qt5 qt6
FLAVOR?= ${FLAVORS:[1]}
qt5_PKGNAMESUFFIX=
qt6_PKGNAMESUFFIX= -qt6
qt5_CONFLICTS_INSTALL= ${PORTNAME}-qt6
qt6_CONFLICTS_INSTALL= ${PORTNAME}
USES= cmake desktop-file-utils gl gnome jpeg localbase \
minizip openal pkgconfig python:3.7+,build ssl xorg
USE_CXXSTD= c++17
USE_GITHUB= nodefault
GH_ACCOUNT= telegramdesktop
GH_PROJECT= tdesktop
.if ${FLAVOR} == qt5
USES+= kde:5 qt:5
USE_QT= buildtools:build core dbus gui imageformats network qmake:build \
svg wayland widgets
USE_KDE= coreaddons kimageformats
.else
USES+= qt:6
USE_QT= 5compat base imageformats lottie shadertools svg tools:build wayland
.endif
USE_GL= gl
USE_GNOME= glib20 glibmm26
USE_XORG= x11 xcb xcomposite xdamage xext xfixes xrandr xrender xtst
CMAKE_ARGS= -DTDESKTOP_API_ID=${TELEGRAM_API_ID} -DTDESKTOP_API_HASH=${TELEGRAM_API_HASH}
CMAKE_ON= DESKTOP_APP_USE_PACKAGED DESKTOP_APP_DISABLE_CRASH_REPORTS \
DESKTOP_APP_DISABLE_WAYLAND_INTEGRATION
CMAKE_OFF= DESKTOP_APP_USE_PACKAGED_FONTS
# Since cmake 3.25.0, BSDs are no longer recognised as Linux (in this port).
CMAKE_ARGS+= -DLINUX=true
# libdispatch components
LDFLAGS+= -lBlocksRuntime
# Telegram uses OpenAL for its audio, but libtgvoip (for voice calls) can use PulseAudio or ALSA.
# It dynamically loads PulseAudio, and if this fails, it loads ALSA.
# If both of them are not installed, then voice calls do not work, but other functionalities still work.
OPTIONS_DEFAULT= ALSA
OPTIONS_MULTI= AUDIO
OPTIONS_MULTI_AUDIO= ALSA PULSEAUDIO
AUDIO_DESC= Audio backend for voice calls
ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib
PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio
# Telegram asks each custom build to have its own API ID and hash.
TELEGRAM_API_HASH= 20a3432aab43f24bb4460fceac5ba38d
TELEGRAM_API_ID= 601761
.include <bsd.port.options.mk>
.if ${OSVERSION} > 1400000
USES+= llvm:build
CC= ${_LLVM_MK_PREFIX}/bin/clang
CPP= ${_LLVM_MK_PREFIX}/bin/clang-cpp
CXX= ${_LLVM_MK_PREFIX}/bin/clang++
#LD?= ${_LLVM_MK_PREFIX}/bin/ld
.else
USES+= compiler:c++17-lang
.endif
post-patch:
# XXX fix the following on every source file
# warning: unknown warning option '-Wno-maybe-uninitialized'
# warning: argument unused during compilation: '-fstack-clash-protection'
${REINPLACE_CMD} -e /-Wno-maybe-uninitialized/d -e /-fstack-clash-protection/d \
${WRKSRC}/cmake/options_linux.cmake
.include <bsd.port.mk>

3
net-im/telegram-desktop/distinfo

@ -0,0 +1,3 @@
TIMESTAMP = 1677352285
SHA256 (tdesktop-4.6.5-full.tar.gz) = 3448d879afdc7c5c06d2b0f9cabe339b08093cb25f380a3e398d32daa96a9c36
SIZE (tdesktop-4.6.5-full.tar.gz) = 63793549

11
net-im/telegram-desktop/pkg-descr

@ -0,0 +1,11 @@
Telegram Desktop is a messaging app. It is the fast and functional open source
desktop app connected to the closed source Telegram server.
Features:
* accounts tied to telephone numbers
* cloud-based messaging
* bots for third party developers
* channels
* secret chats featuring with client-to-client encryption
* stickers
* voice calls

10
net-im/telegram-desktop/pkg-plist

@ -0,0 +1,10 @@
bin/telegram-desktop
share/applications/org.telegram.desktop.desktop
share/icons/hicolor/128x128/apps/telegram.png
share/icons/hicolor/16x16/apps/telegram.png
share/icons/hicolor/256x256/apps/telegram.png
share/icons/hicolor/32x32/apps/telegram.png
share/icons/hicolor/48x48/apps/telegram.png
share/icons/hicolor/512x512/apps/telegram.png
share/icons/hicolor/64x64/apps/telegram.png
share/metainfo/org.telegram.desktop.metainfo.xml
Loading…
Cancel
Save