papero

module
v0.0.0-...-900104f Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 6, 2022 License: LGPL-3.0

README

Papero

This repository holds some golang cli utilities to interact with IMAP servers. Currently the plans include two such programs:

  • papero: a stateless cli tool to grab and/or alter content from the server
  • paperod: a daemon in charge of keeping in sync the server with local maildirs

Roadmap

common parts

  • Allow the use of proxies to connect to the IMAP server (i.e. Tor)
  • Allow to log in json format
  • Pluggable storage system
    • A local sqlite
    • mbox format
    • A custom serialization format (i.e. json)

papero

  • read from server
    • list the mailbox content
    • list messages in a mailbox
    • retrieve the content of a message
    • search on a content in a mailbox by criteria (flags, keywords, ...)
    • list active subscriptions
  • modify the server
    • set the flags on server
    • put a message in mailbox
    • delete a message in mailbox
    • create a mailbox
    • delete a mailbox
    • copy a message from a folder to another
    • move a message from a folder to another
    • create a subscription
    • delete a subscription

paperod

Properly sync with server:

  • Read remote
    • List remote mailboxes
    • List remote messages in mailboxes
    • Pull remote messages's content
  • Read local maildirs
    • Read local content
    • Match local content with remote
  • Alter local maildirs
    • Deliver new messages's content in a file in the proper maildir subdir
    • Remove messages if moved/removed on the server
  • Update the remote if a file is changed locally
  • Act on selected mailboxes, per account, given a filter
    • Using explicit allow/block directives
    • Using regex
    • Using external programs via pipes
  • Add hooks on given events
    • With default internal mechanisms
    • Using external programs via pipes

Directories

Path Synopsis
cli

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL