Skip to main content

CLI to Sync MailingList archives in local Maildir from Hyperkitty.

Project description

HKsync

HKsync, short for Hyperkitty-Sync is a simple client to download archives for public mailing lists from Hyperkitty to a local Maildir to read with your favorite email client.

You don't have to be subscribed to the MailingList to download the archives. Since we just download public MailingLists, there is no need for any sort of authentication. We use Hyperkitty's export API to download emails as mbox and then populate a local Maildir.

WARNING: This is currently in alpha stage, although it has been tested by the author to work for simple situations.

Install

Right now, HKsync is in a alpha stage. To download and use, you need to download it from git repo. Here are the instructions:

# Clone the git repo.
$ git clone https://gitlab.com/mailman/hksync

# Create a virtualenv and install dependencies.
$ python3 -m venv hksync

# Download the dependencies.
$ source hksync/bin/activate
$ python setup.py install

Usage

HKsync let's you add various MailingLists and then sync from each of them using a single command, which can be used as a periodic cron job. It does not provide any mechanism to run periodically since there are several other tools already available to run commands periodically like Cron or Systemd.

To add a new MailingList:

$ hksync add --server https://myserver.com/hyperkitty --mlist mylist@myserver.com

You can list all the currently added MailingLists's using:

$ hksync list

You can remove a MailingList using:

$ hksync remove mylist@myserver.com

Finally, you can sync your emails using:

$ hksync sync

This will sync emails for past 1 day only. Optionally, you can provide a --days n parameter to sync past n days of emails for each list.

You can also pass --mlist mylist@myserver.com to sync emails for only one server instead of all.

Reading Emails

You can use your favorite Email client to read these emails since we use a standard Maildir format which most clients support.

mutt

This is a sample configuration to read emails in mutt, which is a popular command line email client:

# ~/.muttrc
set mbox_type=Maildir
set folder="~/hksync"
set mbox="~/hksync"
set spoolfile="~/hksync"

After this, you can just run mutt in your terminal to read the Emails from MailingLists that you downloaded.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hksync-0.1.0.tar.gz (5.5 kB view details)

Uploaded Source

File details

Details for the file hksync-0.1.0.tar.gz.

File metadata

  • Download URL: hksync-0.1.0.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.3

File hashes

Hashes for hksync-0.1.0.tar.gz
Algorithm Hash digest
SHA256 7e914186a0fa8c52c877467226ae7f2e3d5311396e03eb91df79e0979284b563
MD5 39260a0feb1c044194ac67cfcea38253
BLAKE2b-256 fc00055b5a31c41243ee2151b17cda4a685f7a4c6d90a974b030bd514c0a014a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page