{ "info": { "author": "Abhilash Raj", "author_email": "maxking@asynchronous.in", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3" ], "description": "HKsync\n=======\n\nHKsync, short for Hyperkitty-Sync is a simple client to download archives for\npublic mailing lists from [Hyperkitty][1] to a local [Maildir][2] to read with\nyour favorite email client.\n\n**You don't have to be subscribed to the MailingList to download the\narchives**. Since we just download public MailingLists, there is no need for\nany sort of authentication. We use Hyperkitty's export API to download emails\nas mbox and then populate a local Maildir.\n\n**WARNING: This is currently in alpha stage, although it has been tested by the\nauthor to work for simple situations**.\n\nInstall\n--------\n\nRight now, HKsync is in a alpha stage. To download and use, you need to\ndownload it from git repo. Here are the instructions:\n\n\n```bash\n# Clone the git repo.\n$ git clone https://gitlab.com/mailman/hksync\n\n# Create a virtualenv and install dependencies.\n$ python3 -m venv hksync\n\n# Download the dependencies.\n$ source hksync/bin/activate\n$ python setup.py install\n```\n\n\nUsage\n------\n\nHKsync let's you add various MailingLists and then sync from each of them using\na single command, which can be used as a periodic cron job. It does not provide\nany mechanism to run periodically since there are several other tools already\navailable to run commands periodically like Cron or Systemd.\n\n**To add a new MailingList**:\n```bash\n$ hksync add --server https://myserver.com/hyperkitty --mlist mylist@myserver.com\n```\n\n**You can list all the currently added MailingLists's using**:\n```bash\n$ hksync list\n```\n\n**You can remove a MailingList using**:\n```bash\n$ hksync remove mylist@myserver.com\n```\n\n**Finally, you can sync your emails using**:\n```bash\n$ hksync sync\n```\n\nThis will sync emails for past 1 day only. Optionally, you can provide a\n`--days n` parameter to sync past `n` days of emails for each list.\n\nYou can also pass `--mlist mylist@myserver.com` to sync emails for only one\nserver instead of all.\n\n\nReading Emails\n----------------\n\nYou can use your favorite Email client to read these emails since we use a\nstandard [Maildir][2] format which most clients support.\n\n\n### mutt\n\nThis is a sample configuration to read emails in `mutt`, which is a popular\ncommand line email client:\n\n\n```\n# ~/.muttrc\nset mbox_type=Maildir\nset folder=\"~/hksync\"\nset mbox=\"~/hksync\"\nset spoolfile=\"~/hksync\"\n```\n\nAfter this, you can just run `mutt` in your terminal to read the Emails from\nMailingLists that you downloaded.\n\nIf you don't want to alter the configuration, you can just run:\n\n```\n$ mutt -f ~/hksync\n```\n\n[1]: https://pypi.org/project/HyperKitty/\n[2]: https://en.wikipedia.org/wiki/Maildir\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.com/mailman/hksync", "keywords": "", "license": "GPLv3+", "maintainer": "", "maintainer_email": "", "name": "hksync", "package_url": "https://pypi.org/project/hksync/", "platform": "", "project_url": "https://pypi.org/project/hksync/", "project_urls": { "Homepage": "https://gitlab.com/mailman/hksync" }, "release_url": "https://pypi.org/project/hksync/0.2.1/", "requires_dist": [ "click", "aiohttp", "aiodns", "cchardet" ], "requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3", "summary": "CLI to Sync MailingList archives in local Maildir from Hyperkitty.", "version": "0.2.1" }, "last_serial": 5685421, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "39260a0feb1c044194ac67cfcea38253", "sha256": "7e914186a0fa8c52c877467226ae7f2e3d5311396e03eb91df79e0979284b563" }, "downloads": -1, "filename": "hksync-0.1.0.tar.gz", "has_sig": true, "md5_digest": "39260a0feb1c044194ac67cfcea38253", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3", "size": 5463, "upload_time": "2019-07-25T04:07:40", "url": "https://files.pythonhosted.org/packages/fc/00/055b5a31c41243ee2151b17cda4a685f7a4c6d90a974b030bd514c0a014a/hksync-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "b4aa3f24e97400971dca288404228e12", "sha256": "c18c5bf0fd9189386296d4084364d63390e7067517e66e1979c5c6870aecbe1d" }, "downloads": -1, "filename": "hksync-0.2.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "b4aa3f24e97400971dca288404228e12", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3", "size": 1483, "upload_time": "2019-08-16T03:00:15", "url": "https://files.pythonhosted.org/packages/99/0f/1a47bf0f90b7112014840bfec4f944528e36bada943b4cf846d73699f024/hksync-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "65f27d42c909c59b86206b9495358746", "sha256": "732aabe5a33501aadcf26d872fa5ea38d9966c930ae96d48ce6d951f87d82ba9" }, "downloads": -1, "filename": "hksync-0.2.0.tar.gz", "has_sig": true, "md5_digest": "65f27d42c909c59b86206b9495358746", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3", "size": 5357, "upload_time": "2019-08-16T03:00:16", "url": "https://files.pythonhosted.org/packages/a4/6d/8cf1805aa9b2dbb65b81a0eb089a127fcff1563b5c0f049f83096d1c6b81/hksync-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "2d295b7087c2fedcfbacbc4afb9b8d92", "sha256": "03abb11baa249c72b263cbc61170f09ba6a2af765e8d3affd68256db826a6ab6" }, "downloads": -1, "filename": "hksync-0.2.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "2d295b7087c2fedcfbacbc4afb9b8d92", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3", "size": 2614, "upload_time": "2019-08-16T03:08:01", "url": "https://files.pythonhosted.org/packages/85/a6/4ec6fddfb77262611ba0b13041f9de642498f6ce9e1aef81cc62ea7f356e/hksync-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a919f6e81d3a65d538dbfb1430da8335", "sha256": "4cc644d0243f07508c38767e0a03a9b3417631407bc6a61c0c3a7af1c5b3e2e8" }, "downloads": -1, "filename": "hksync-0.2.1.tar.gz", "has_sig": true, "md5_digest": "a919f6e81d3a65d538dbfb1430da8335", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3", "size": 5714, "upload_time": "2019-08-16T03:08:03", "url": "https://files.pythonhosted.org/packages/d7/37/d6e18b95e21f9993d4d261664f9b95a3446ee7fea67976823eded5219f03/hksync-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2d295b7087c2fedcfbacbc4afb9b8d92", "sha256": "03abb11baa249c72b263cbc61170f09ba6a2af765e8d3affd68256db826a6ab6" }, "downloads": -1, "filename": "hksync-0.2.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "2d295b7087c2fedcfbacbc4afb9b8d92", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3", "size": 2614, "upload_time": "2019-08-16T03:08:01", "url": "https://files.pythonhosted.org/packages/85/a6/4ec6fddfb77262611ba0b13041f9de642498f6ce9e1aef81cc62ea7f356e/hksync-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a919f6e81d3a65d538dbfb1430da8335", "sha256": "4cc644d0243f07508c38767e0a03a9b3417631407bc6a61c0c3a7af1c5b3e2e8" }, "downloads": -1, "filename": "hksync-0.2.1.tar.gz", "has_sig": true, "md5_digest": "a919f6e81d3a65d538dbfb1430da8335", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3", "size": 5714, "upload_time": "2019-08-16T03:08:03", "url": "https://files.pythonhosted.org/packages/d7/37/d6e18b95e21f9993d4d261664f9b95a3446ee7fea67976823eded5219f03/hksync-0.2.1.tar.gz" } ] }