megolm-filter


Namemegolm-filter JSON
Version 0.2 PyPI version JSON
download
home_pageNone
SummaryModify your offline megolm key backups from shell
upload_time2025-01-30 14:42:46
maintainerNone
docs_urlNone
authorNone
requires_python>=3.6
licenseGPLv3
keywords element matrix megolm
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ### `megolm_filter.py` ###

Modify your offline megolm key backups from a shell.  

The main use of megolm_filter is to filter what keys you'd like to share with another user. Let's say you have a 1:1 chat, and the other user lost all their keys and
you need to give them access without giving access to all of your rooms.  

[There is currently no Element-based support for this](https://github.com/element-hq/element-meta/issues/1287), so this script can help in the meantime.  

Install
-------

```
pip install megolm-filter
```

Command Line Interface
----------------------

```
usage: megolm_filter [-h] [-o OUTPUT] [--plain] [file] [room_id]

Operate on megolm session backups.

positional arguments:
  file                 megolm session data
  room_id              Room id to filter (optional)

options:
  -h, --help           show this help message and exit
  -o, --output OUTPUT  Output to file
  -p, --plain          Returns the plain unencrypted content
```

You can filter your keys fairly easily running:

```bash
megolm_filter element-keys.txt '!room1:matrix.org' '!room2:matrix.org' ...
```

___
Copyright (C) 2019 Aleksa Sarai <cyphar@cyphar.com>  
Copyright (C) 2025 Lain Iwakura <lain@serialexperiments.club>  

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "megolm-filter",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": "element, matrix, megolm",
    "author": null,
    "author_email": "Lain Iwakura <lain@serialexperiments.club>",
    "download_url": "https://files.pythonhosted.org/packages/7b/27/5eff2772426bdcee2f3c59dabc2e39f34ad799e48279ca4f398f915e6b43/megolm_filter-0.2.tar.gz",
    "platform": null,
    "description": "### `megolm_filter.py` ###\n\nModify your offline megolm key backups from a shell.  \n\nThe main use of megolm_filter is to filter what keys you'd like to share with another user. Let's say you have a 1:1 chat, and the other user lost all their keys and\nyou need to give them access without giving access to all of your rooms.  \n\n[There is currently no Element-based support for this](https://github.com/element-hq/element-meta/issues/1287), so this script can help in the meantime.  \n\nInstall\n-------\n\n```\npip install megolm-filter\n```\n\nCommand Line Interface\n----------------------\n\n```\nusage: megolm_filter [-h] [-o OUTPUT] [--plain] [file] [room_id]\n\nOperate on megolm session backups.\n\npositional arguments:\n  file                 megolm session data\n  room_id              Room id to filter (optional)\n\noptions:\n  -h, --help           show this help message and exit\n  -o, --output OUTPUT  Output to file\n  -p, --plain          Returns the plain unencrypted content\n```\n\nYou can filter your keys fairly easily running:\n\n```bash\nmegolm_filter element-keys.txt '!room1:matrix.org' '!room2:matrix.org' ...\n```\n\n___\nCopyright (C) 2019 Aleksa Sarai <cyphar@cyphar.com>  \nCopyright (C) 2025 Lain Iwakura <lain@serialexperiments.club>  \n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program.  If not, see <https://www.gnu.org/licenses/>.\n",
    "bugtrack_url": null,
    "license": "GPLv3",
    "summary": "Modify your offline megolm key backups from shell",
    "version": "0.2",
    "project_urls": {
        "changelog": "https://git.serialexperiments.club/lain/megolm_filter/commits/branch/master",
        "homepage": "https://git.serialexperiments.club/lain/megolm_filter",
        "repository": "https://git.serialexperiments.club"
    },
    "split_keywords": [
        "element",
        " matrix",
        " megolm"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cd90e101d69f2e5a8cb0a8f03c043e877fcff44a8ffcecd4df62147c2cf23d5d",
                "md5": "7a12da9c915e5461f07343be90ba0665",
                "sha256": "dedc8116f8015ae371f293d0f39ca482ffba7d51db79861287e0423da7e42665"
            },
            "downloads": -1,
            "filename": "megolm_filter-0.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7a12da9c915e5461f07343be90ba0665",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 17565,
            "upload_time": "2025-01-30T14:42:43",
            "upload_time_iso_8601": "2025-01-30T14:42:43.444153Z",
            "url": "https://files.pythonhosted.org/packages/cd/90/e101d69f2e5a8cb0a8f03c043e877fcff44a8ffcecd4df62147c2cf23d5d/megolm_filter-0.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7b275eff2772426bdcee2f3c59dabc2e39f34ad799e48279ca4f398f915e6b43",
                "md5": "5cc136f40d310dc60647a6b0fb310577",
                "sha256": "11c3cb3a8a03b83b9ae983a67ab30d7290fb743d4260e72dc7788716e1011c40"
            },
            "downloads": -1,
            "filename": "megolm_filter-0.2.tar.gz",
            "has_sig": false,
            "md5_digest": "5cc136f40d310dc60647a6b0fb310577",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 16425,
            "upload_time": "2025-01-30T14:42:46",
            "upload_time_iso_8601": "2025-01-30T14:42:46.899785Z",
            "url": "https://files.pythonhosted.org/packages/7b/27/5eff2772426bdcee2f3c59dabc2e39f34ad799e48279ca4f398f915e6b43/megolm_filter-0.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-01-30 14:42:46",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "megolm-filter"
}
        
Elapsed time: 0.67544s