anchor.diff: -{ lib, python3, mautrix-telegram, fetchFromGitHub }:
  +{ lib, python3, mautrix-telegram, fetchFromGitHub
  +, withE2BE ? true
  +}:
   
   let
     python = python3.override {
  
positive.code:     sed -i -e '/alembic>/d' requirements.txt
    '';
  
    propagatedBuildInputs = with python.pkgs; [
      Mako
      aiohttp
      mautrix
  
negative.code:     pillow
      lxml
      setuptools
    ] ++ lib.optionals withE2BE [
      asyncpg
      python-olm
      pycryptodome
      unpaddedbase64
    ]) ++ dbDrivers;
  
    # `alembic` (a database migration tool) is only needed for the initial setup,
    # and not needed during the actual runtime. However `alembic` requires `mautrix-telegram`
  