From ee6dd6acb4be663a17d21250859e9ed67bfa79e1 Mon Sep 17 00:00:00 2001 From: nyanloutre Date: Tue, 29 Jan 2019 14:42:44 +0100 Subject: [PATCH 1/5] pythonPackages.future-fstrings: init at 0.4.5 --- .../future-fstrings/default.nix | 22 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 24 insertions(+) create mode 100644 pkgs/development/python-modules/future-fstrings/default.nix diff --git a/pkgs/development/python-modules/future-fstrings/default.nix b/pkgs/development/python-modules/future-fstrings/default.nix new file mode 100644 index 000000000000..7df148df09c9 --- /dev/null +++ b/pkgs/development/python-modules/future-fstrings/default.nix @@ -0,0 +1,22 @@ +{ lib, buildPythonPackage, fetchPypi, pythonOlder }: + +buildPythonPackage rec { + pname = "future-fstrings"; + version = "0.4.5"; + + src = fetchPypi { + inherit version; + pname = "future_fstrings"; + sha256 = "891c5d5f073b3e3ff686bebde0a4c45c479065f45c8cbd6de19323d5a50738a8"; + }; + + # No tests included in Pypi archive + doCheck = false; + + meta = with lib; { + homepage = https://github.com/asottile/future-fstrings; + description = "A backport of fstrings to python<3.6"; + license = licenses.mit; + maintainers = with maintainers; [ nyanloutre ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 279b22788a38..f260b6ad2117 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1752,6 +1752,8 @@ in { functools32 = callPackage ../development/python-modules/functools32 { }; + future-fstrings = callPackage ../development/python-modules/future-fstrings { }; + gateone = callPackage ../development/python-modules/gateone { }; # TODO: Remove after 19.03 is branched off: From 7993fa60b8ff96138d638ff7d1476863ddf833c6 Mon Sep 17 00:00:00 2001 From: nyanloutre Date: Tue, 29 Jan 2019 14:44:11 +0100 Subject: [PATCH 2/5] pythonPackages.mautrix-appservice: init at 0.3.7 --- .../mautrix-appservice/default.nix | 28 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 30 insertions(+) create mode 100644 pkgs/development/python-modules/mautrix-appservice/default.nix diff --git a/pkgs/development/python-modules/mautrix-appservice/default.nix b/pkgs/development/python-modules/mautrix-appservice/default.nix new file mode 100644 index 000000000000..1420f1880a31 --- /dev/null +++ b/pkgs/development/python-modules/mautrix-appservice/default.nix @@ -0,0 +1,28 @@ +{ lib, buildPythonPackage, fetchPypi, aiohttp, future-fstrings, pythonOlder }: + +buildPythonPackage rec { + pname = "mautrix-appservice"; + version = "0.3.7"; + + src = fetchPypi { + inherit pname version; + sha256 = "1615220f5bb75e2093ad1e30f4c2e1243499b0b20caef014fd73faadd3bfea6c"; + }; + + propagatedBuildInputs = [ + aiohttp + future-fstrings + ]; + + # No tests available + doCheck = false; + + disabled = pythonOlder "3.5"; + + meta = with lib; { + homepage = https://github.com/tulir/mautrix-appservice-python; + description = "A Python 3 asyncio-based Matrix application service framework"; + license = licenses.mit; + maintainers = with maintainers; [ nyanloutre ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f260b6ad2117..9c4b9a806a1b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3003,6 +3003,8 @@ in { matrix-client = callPackage ../development/python-modules/matrix-client { }; + mautrix-appservice = callPackage ../development/python-modules/mautrix-appservice { }; + maya = callPackage ../development/python-modules/maya { }; mccabe = callPackage ../development/python-modules/mccabe { }; From 351256a9dfd2861d41ad7951a186f58ae8f37333 Mon Sep 17 00:00:00 2001 From: nyanloutre Date: Tue, 29 Jan 2019 14:45:21 +0100 Subject: [PATCH 3/5] pythonPackages.telethon: init at 1.5.4 --- .../python-modules/telethon/default.nix | 30 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 32 insertions(+) create mode 100644 pkgs/development/python-modules/telethon/default.nix diff --git a/pkgs/development/python-modules/telethon/default.nix b/pkgs/development/python-modules/telethon/default.nix new file mode 100644 index 000000000000..d847a4942018 --- /dev/null +++ b/pkgs/development/python-modules/telethon/default.nix @@ -0,0 +1,30 @@ +{ lib, buildPythonPackage, fetchPypi, async_generator, rsa, pyaes, pythonOlder }: + +buildPythonPackage rec { + pname = "telethon"; + version = "1.5.4"; + + src = fetchPypi { + inherit version; + pname = "Telethon"; + sha256 = "52cb4929bf37c98ab5f3e173325dbb3cb9c1ca3f4fe6ba87d35c43e2f98858ce"; + }; + + propagatedBuildInputs = [ + async_generator + rsa + pyaes + ]; + + # No tests available + doCheck = false; + + disabled = pythonOlder "3.5"; + + meta = with lib; { + homepage = https://github.com/LonamiWebs/Telethon; + description = "Full-featured Telegram client library for Python 3"; + license = licenses.mit; + maintainers = with maintainers; [ nyanloutre ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9c4b9a806a1b..f96f85541132 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4415,6 +4415,8 @@ in { taskw = callPackage ../development/python-modules/taskw { }; + telethon = callPackage ../development/python-modules/telethon { }; + terminaltables = callPackage ../development/python-modules/terminaltables { }; testpath = callPackage ../development/python-modules/testpath { }; From 9cc5a48329246a32e17de7bcae68295417e99109 Mon Sep 17 00:00:00 2001 From: nyanloutre Date: Tue, 29 Jan 2019 14:45:59 +0100 Subject: [PATCH 4/5] pythonPackages.telethon-session-sqlalchemy: init at 0.2.5 --- .../telethon-session-sqlalchemy/default.nix | 25 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 27 insertions(+) create mode 100644 pkgs/development/python-modules/telethon-session-sqlalchemy/default.nix diff --git a/pkgs/development/python-modules/telethon-session-sqlalchemy/default.nix b/pkgs/development/python-modules/telethon-session-sqlalchemy/default.nix new file mode 100644 index 000000000000..c6d3a21b10ba --- /dev/null +++ b/pkgs/development/python-modules/telethon-session-sqlalchemy/default.nix @@ -0,0 +1,25 @@ +{ lib, buildPythonPackage, fetchPypi, sqlalchemy, telethon }: + +buildPythonPackage rec { + pname = "telethon-session-sqlalchemy"; + version = "0.2.5"; + + src = fetchPypi { + inherit pname version; + sha256 = "b392096b14e5cdc4040d3900cc2be7847b160ed77e5c861a6bd07d75d8e17a85"; + }; + + propagatedBuildInputs = [ + sqlalchemy + ]; + + # No tests available + doCheck = false; + + meta = with lib; { + homepage = https://github.com/tulir/telethon-session-sqlalchemy; + description = "SQLAlchemy backend for Telethon session storage"; + license = licenses.mit; + maintainers = with maintainers; [ nyanloutre ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f96f85541132..8463ea1763db 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4417,6 +4417,8 @@ in { telethon = callPackage ../development/python-modules/telethon { }; + telethon-session-sqlalchemy = callPackage ../development/python-modules/telethon-session-sqlalchemy { }; + terminaltables = callPackage ../development/python-modules/terminaltables { }; testpath = callPackage ../development/python-modules/testpath { }; From 53fddad692c0892161dfb5eec3a78c650b7466ec Mon Sep 17 00:00:00 2001 From: nyanloutre Date: Tue, 29 Jan 2019 14:46:44 +0100 Subject: [PATCH 5/5] mautrix-telegram: init at 0.4.0.post1 --- pkgs/servers/mautrix-telegram/default.nix | 50 +++++++++++++++++++ .../fix_patch_conflicts.patch | 27 ++++++++++ pkgs/top-level/all-packages.nix | 2 + 3 files changed, 79 insertions(+) create mode 100644 pkgs/servers/mautrix-telegram/default.nix create mode 100644 pkgs/servers/mautrix-telegram/fix_patch_conflicts.patch diff --git a/pkgs/servers/mautrix-telegram/default.nix b/pkgs/servers/mautrix-telegram/default.nix new file mode 100644 index 000000000000..9aa4fc24e4bf --- /dev/null +++ b/pkgs/servers/mautrix-telegram/default.nix @@ -0,0 +1,50 @@ +{ lib, fetchpatch, python3 }: + +with python3.pkgs; + +buildPythonPackage rec { + pname = "mautrix-telegram"; + version = "0.4.0.post1"; + + src = fetchPypi { + inherit pname version; + sha256 = "7a51e55a7f362013ce1cce7d850c65dc8d4651dd05c63004429bc521b461d029"; + }; + + patches = [ + (fetchpatch { + url = "https://github.com/tulir/mautrix-telegram/commit/a258c59ca3558ad91b1fee190c624763ca835d2f.patch"; + sha256 = "04z4plsmqmg38rsw9irp5xc9wdgjvg6xba69mixi5v82h9lg3zzp"; + }) + + ./fix_patch_conflicts.patch + + (fetchpatch { + url = "https://github.com/tulir/mautrix-telegram/commit/8021fcc24cbf8c88d9bcb2601333863c9615bd4f.patch"; + sha256 = "0cdfv8ggnjdwdhls1lk6498b233lvnb6175xbxr206km5mxyvqyk"; + }) + ]; + + propagatedBuildInputs = [ + aiohttp + mautrix-appservice + sqlalchemy + alembic + CommonMark + ruamel_yaml + future-fstrings + python_magic + telethon + telethon-session-sqlalchemy + ]; + + # No tests available + doCheck = false; + + meta = with lib; { + homepage = https://github.com/tulir/mautrix-telegram; + description = "A Matrix-Telegram hybrid puppeting/relaybot bridge"; + license = licenses.agpl3Plus; + maintainers = with maintainers; [ nyanloutre ]; + }; +} diff --git a/pkgs/servers/mautrix-telegram/fix_patch_conflicts.patch b/pkgs/servers/mautrix-telegram/fix_patch_conflicts.patch new file mode 100644 index 000000000000..99c902ce03b7 --- /dev/null +++ b/pkgs/servers/mautrix-telegram/fix_patch_conflicts.patch @@ -0,0 +1,27 @@ +diff --git a/mautrix_telegram/abstract_user.py b/mautrix_telegram/abstract_user.py +index 11273f8..aadaf5d 100644 +--- a/mautrix_telegram/abstract_user.py ++++ b/mautrix_telegram/abstract_user.py +@@ -21,14 +21,14 @@ import logging + import platform + + from sqlalchemy import orm +-from telethon.tl.types import Channel, ChannelForbidden, Chat, ChatForbidden, Message, \ +- MessageActionChannelMigrateFrom, MessageService, PeerUser, TypeUpdate, \ +- UpdateChannelPinnedMessage, UpdateChatAdmins, UpdateChatParticipantAdmin, \ +- UpdateChatParticipants, UpdateChatUserTyping, UpdateDeleteChannelMessages, \ +- UpdateDeleteMessages, UpdateEditChannelMessage, UpdateEditMessage, UpdateNewChannelMessage, \ +- UpdateNewMessage, UpdateReadHistoryOutbox, UpdateShortChatMessage, UpdateShortMessage, \ +- UpdateUserName, UpdateUserPhoto, UpdateUserStatus, UpdateUserTyping, User, UserStatusOffline, \ +- UserStatusOnline ++from telethon.tl.patched import MessageService, Message ++from telethon.tl.types import ( ++ Channel, ChannelForbidden, Chat, ChatForbidden, MessageActionChannelMigrateFrom, PeerUser, ++ TypeUpdate, UpdateChannelPinnedMessage, UpdateChatAdmins, UpdateChatParticipantAdmin, ++ UpdateChatParticipants, UpdateChatUserTyping, UpdateDeleteChannelMessages, UpdateDeleteMessages, ++ UpdateEditChannelMessage, UpdateEditMessage, UpdateNewChannelMessage, UpdateNewMessage, ++ UpdateReadHistoryOutbox, UpdateShortChatMessage, UpdateShortMessage, UpdateUserName, ++ UpdateUserPhoto, UpdateUserStatus, UpdateUserTyping, User, UserStatusOffline, UserStatusOnline) + + from mautrix_appservice import MatrixRequestError, AppService + from alchemysession import AlchemySessionContainer diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 465f86e1b76f..998258f4ef0f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3803,6 +3803,8 @@ in matrix-synapse = callPackage ../servers/matrix-synapse { }; + mautrix-telegram = callPackage ../servers/mautrix-telegram { }; + mdbook = callPackage ../tools/text/mdbook { inherit (darwin.apple_sdk.frameworks) CoreServices; };