Skip to content

Commit

Permalink
Merge pull request #92744 from flokli/20.03-tdesktop
Browse files Browse the repository at this point in the history
tdesktop: 1.9.9 -> 2.1.0
  • Loading branch information
grahamc committed Jul 8, 2020
2 parents d57d32e + 5d68f77 commit b1d8764
Show file tree
Hide file tree
Showing 3 changed files with 37 additions and 13 deletions.
@@ -1,7 +1,8 @@
{ mkDerivation, lib, fetchurl, fetchsvn
, pkgconfig, cmake, ninja, python3, wrapGAppsHook, wrapQtAppsHook
, qtbase, qtimageformats, gtk3, libappindicator-gtk3, enchant2, lz4, xxHash
, qtbase, qtimageformats, gtk3, libsForQt5, enchant2, lz4, xxHash
, dee, ffmpeg_4, openalSoft, minizip, libopus, alsaLib, libpulseaudio, range-v3
, tl-expected, microsoft_gsl, hunspell
# TODO: Shouldn't be required:
, pcre, xorg, utillinux, libselinux, libsepol, epoxy, at-spi2-core, libXtst
, xdg_utils
Expand All @@ -18,17 +19,15 @@ with lib;

mkDerivation rec {
pname = "telegram-desktop";
version = "1.9.9";
version = "2.1.0";

# Telegram-Desktop with submodules
src = fetchurl {
url = "https://github.com/telegramdesktop/tdesktop/releases/download/v${version}/tdesktop-${version}-full.tar.gz";
sha256 = "08bxlqiapj9yqj9ywni33n5k7n3ckgfhv200snjqyqy9waqph1i6";
sha256 = "0l5917w90z9pg1al1hzcycb4yxv03vc88jg958ifl9nlvz1arll6";
};

postPatch = ''
substituteInPlace Telegram/SourceFiles/platform/linux/linux_libs.cpp \
--replace '"appindicator3"' '"${libappindicator-gtk3}/lib/libappindicator3.so"'
substituteInPlace Telegram/lib_spellcheck/spellcheck/platform/linux/linux_enchant.cpp \
--replace '"libenchant-2.so.2"' '"${enchant2}/lib/libenchant-2.so.2"'
substituteInPlace Telegram/CMakeLists.txt \
Expand All @@ -42,8 +41,9 @@ mkDerivation rec {
nativeBuildInputs = [ pkgconfig cmake ninja python3 wrapGAppsHook wrapQtAppsHook ];

buildInputs = [
qtbase qtimageformats gtk3 libappindicator-gtk3 enchant2 lz4 xxHash
qtbase qtimageformats gtk3 libsForQt5.libdbusmenu enchant2 lz4 xxHash
dee ffmpeg_4 openalSoft minizip libopus alsaLib libpulseaudio range-v3
tl-expected microsoft_gsl hunspell
# TODO: Shouldn't be required:
pcre xorg.libpthreadstubs xorg.libXdmcp utillinux libselinux libsepol epoxy at-spi2-core libXtst
];
Expand All @@ -55,12 +55,9 @@ mkDerivation rec {
# TODO: Officiall API credentials for Nixpkgs
# (see: https://github.com/NixOS/nixpkgs/issues/55271):
"-DTDESKTOP_API_TEST=ON"
"-DDESKTOP_APP_USE_GLIBC_WRAPS=OFF"
"-DDESKTOP_APP_USE_PACKAGED=ON"
"-DDESKTOP_APP_USE_PACKAGED_RLOTTIE=OFF"
"-DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON"
"-DDESKTOP_APP_USE_PACKAGED_VARIANT=OFF"
"-DTDESKTOP_DISABLE_REGISTER_CUSTOM_SCHEME=ON"
"-DTDESKTOP_DISABLE_DESKTOP_FILE_GENERATION=ON"
"-DTDESKTOP_USE_PACKAGED_TGVOIP=OFF"
#"-DDESKTOP_APP_SPECIAL_TARGET=\"\"" # TODO: Error when set to "": Bad special target '""'
"-DTDESKTOP_LAUNCHER_BASENAME=telegramdesktop" # Note: This is the default
Expand All @@ -80,6 +77,7 @@ mkDerivation rec {
# - upstream: https://github.com/grishka/libtgvoip
# Both of these packages are included in this PR (kotatogram-desktop):
# https://github.com/NixOS/nixpkgs/pull/75210
# TODO: Package mapbox-variant

postFixup = ''
# This is necessary to run Telegram in a pure environment.
Expand All @@ -88,8 +86,7 @@ mkDerivation rec {
"''${gappsWrapperArgs[@]}" \
"''${qtWrapperArgs[@]}" \
--prefix PATH : ${xdg_utils}/bin \
--set XDG_RUNTIME_DIR "XDG-RUNTIME-DIR" \
--unset QT_QPA_PLATFORMTHEME # From the Arch wrapper
--set XDG_RUNTIME_DIR "XDG-RUNTIME-DIR"
sed -i $out/bin/telegram-desktop \
-e "s,'XDG-RUNTIME-DIR',\"\''${XDG_RUNTIME_DIR:-/run/user/\$(id --user)}\","
'';
Expand All @@ -102,7 +99,8 @@ mkDerivation rec {
'';
license = licenses.gpl3;
platforms = platforms.linux;
homepage = https://desktop.telegram.org/;
homepage = "https://desktop.telegram.org/";
changelog = "https://github.com/telegramdesktop/tdesktop/releases/tag/v{version}";
maintainers = with maintainers; [ primeos abbradar ];
};
}
24 changes: 24 additions & 0 deletions pkgs/development/libraries/tl-expected/default.nix
@@ -0,0 +1,24 @@
{ stdenv, fetchFromGitHub, cmake }:

stdenv.mkDerivation rec {
pname = "tl-expected-unstable";
version = "2019-11-11"; # 5 commits ahead of version 1.0.0

src = fetchFromGitHub {
owner = "TartanLlama";
repo = "expected";
rev = "1d9c5d8c0da84b8ddc54bd3d90d632eec95c1f13";
fetchSubmodules = true;
sha256 = "0rzfn9yyg70zwpxbmv22qy0015baymi2rdd65ixmcb31fgnap68i";
};

nativeBuildInputs = [ cmake ];

meta = with stdenv.lib; {
description = "C++11/14/17 std::expected with functional-style extensions";
homepage = https://tl.tartanllama.xyz/en/latest/api/expected.html;
license = licenses.cc0;
platforms = platforms.all;
maintainers = with maintainers; [ primeos ];
};
}
2 changes: 2 additions & 0 deletions pkgs/top-level/all-packages.nix
Expand Up @@ -14542,6 +14542,8 @@ in
tk-8_6 = callPackage ../development/libraries/tk/8.6.nix { };
tk-8_5 = callPackage ../development/libraries/tk/8.5.nix { tcl = tcl-8_5; };

tl-expected = callPackage ../development/libraries/tl-expected { };

tnt = callPackage ../development/libraries/tnt { };

tntnet = callPackage ../development/libraries/tntnet { };
Expand Down

0 comments on commit b1d8764

Please sign in to comment.