chval


Namechval JSON
Version 1.2.0 PyPI version JSON
download
home_pagehttp://framagit.org/spalax/chval
SummaryParallel `getmail` calls, with progress bars
upload_time2023-10-05 21:19:14
maintainer
docs_urlNone
authorLouis Paternault
requires_python<4,>=3.10
licenseGPLv3 or any later version
keywords getmail
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            chval — Parallel `getmail` calls, with progress bars
====================================================

Program *Ch'val* (abbreviated chval) is a wrapper for [getmail](https://pyropus.ca/software/getmail):

- it looks for your configuration files, and run getmail on all of them;
- it executes ``getmail`` calls in parallel;
- it displays a nice progress bar, and a summary at the end (as well as error messages, if *getmail* failed).

![Example](https://framagit.org/spalax/chval/-/raw/v1.2.0/chval-example.png)

Configuration
-------------

Chval takes no configuration, and does not require any specific getmail configuration. The only assumption are that:

- getmail configuration files are located in the default getmail folder ``~/.config/getmail``;
- getmail configuration files have a name starting with ``getmailrc-`` (e.g. ``getmailrc-work``);
- getmail does not prompt for a password (it is either stored in plain text in the configuration file, or in a password manager (see option ``--store-password-in-keyring``)).

That way, Ch'val can automatically find your getmail configuration files.

Installation
------------

* Install this program from [Pypi](https://pypi.org/project/chval/):

      python3 -m pip install chval

* Quick and dirty Debian (and Ubuntu?) package (requires `stdeb <https://github.com/astraw/stdeb>`):

      python3 setup.py --command-packages=stdeb.command bdist_deb
      sudo dpkg -i deb_dist/chval-<VERSION>_all.deb

History
-------

The name comes from [Ferdinand Cheval](https://fr.wikipedia.org/wiki/Ferdinand_Cheval), known as *le facteur Cheval* (Postman Cheval), a famous French postman and naive architect. *Cheval* means *horse* in French, and may be orally shortened to *ch'val*.

In 2010, the only way to provide a password to [getmail](https://pyropus.ca/software/getmail/) was by storing it in plain text in the configuration file (not really secure), or by providing it when prompted (combersome when you check your 5 or 10 email addresses several times a day). I (back then, a yound and inexperimented programmer) started this project (then named *gams*, for *get all mails*), that wrapped *getmail* by storing the passwords in an encrypted file : a server would call `getmail` when prompted by the client, which would provide, *once*, the master password to decrypt the email passwords. I also added a home-made progress bar.

Three years later (in 2013), I started to experiment with [twisted](https://twisted.org/) to replace the named pipe used by the client and server to communicate. This never led to anything…

Eight years later (in 2021), I wondered if it would be possible to use an existing keyring software (like [Seahorse](https://wiki.gnome.org/Apps/Seahorse/)) to store password keys, and to communicate with it using *dbus*. This never led to anything.

The very same year, I noticed that `getmail` had a new feature (which already existed for several years) to use a keyring to store the password. My software was outdated, and I happily dropped support for it.

About a year later, I missed the ability to run getmail on all my mailboxes at once, and the progress bar, so I revived Ch'val from the dead: the initial goal (storing password) is no longer relevant, but the progress bar, which was then an incidental feature, became the main purpose.

A more technical history can be found in the [changelog](https://framagit.org/spalax/chval/-/blob/main/CHANGELOG.md).

License
-------

Copyright 2010-2023 Louis Paternault

Ch'val is licensed under the [GNU GPL 3 license](https://www.gnu.org/licenses/gpl-3.0.html), or any later version.

            

Raw data

            {
    "_id": null,
    "home_page": "http://framagit.org/spalax/chval",
    "name": "chval",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "<4,>=3.10",
    "maintainer_email": "",
    "keywords": "getmail",
    "author": "Louis Paternault",
    "author_email": "spalax@gresille.org",
    "download_url": "https://files.pythonhosted.org/packages/77/10/3c284e2d8e8c71301302a78c5991079138a7ebb821d018b1413bc80f0f37/chval-1.2.0.tar.gz",
    "platform": null,
    "description": "chval \u2014 Parallel `getmail` calls, with progress bars\n====================================================\n\nProgram *Ch'val* (abbreviated chval) is a wrapper for [getmail](https://pyropus.ca/software/getmail):\n\n- it looks for your configuration files, and run getmail on all of them;\n- it executes ``getmail`` calls in parallel;\n- it displays a nice progress bar, and a summary at the end (as well as error messages, if *getmail* failed).\n\n![Example](https://framagit.org/spalax/chval/-/raw/v1.2.0/chval-example.png)\n\nConfiguration\n-------------\n\nChval takes no configuration, and does not require any specific getmail configuration. The only assumption are that:\n\n- getmail configuration files are located in the default getmail folder ``~/.config/getmail``;\n- getmail configuration files have a name starting with ``getmailrc-`` (e.g. ``getmailrc-work``);\n- getmail does not prompt for a password (it is either stored in plain text in the configuration file, or in a password manager (see option ``--store-password-in-keyring``)).\n\nThat way, Ch'val can automatically find your getmail configuration files.\n\nInstallation\n------------\n\n* Install this program from [Pypi](https://pypi.org/project/chval/):\n\n      python3 -m pip install chval\n\n* Quick and dirty Debian (and Ubuntu?) package (requires `stdeb <https://github.com/astraw/stdeb>`):\n\n      python3 setup.py --command-packages=stdeb.command bdist_deb\n      sudo dpkg -i deb_dist/chval-<VERSION>_all.deb\n\nHistory\n-------\n\nThe name comes from [Ferdinand Cheval](https://fr.wikipedia.org/wiki/Ferdinand_Cheval), known as *le facteur Cheval* (Postman Cheval), a famous French postman and naive architect. *Cheval* means *horse* in French, and may be orally shortened to *ch'val*.\n\nIn 2010, the only way to provide a password to [getmail](https://pyropus.ca/software/getmail/) was by storing it in plain text in the configuration file (not really secure), or by providing it when prompted (combersome when you check your 5 or 10 email addresses several times a day). I (back then, a yound and inexperimented programmer) started this project (then named *gams*, for *get all mails*), that wrapped *getmail* by storing the passwords in an encrypted file : a server would call `getmail` when prompted by the client, which would provide, *once*, the master password to decrypt the email passwords. I also added a home-made progress bar.\n\nThree years later (in 2013), I started to experiment with [twisted](https://twisted.org/) to replace the named pipe used by the client and server to communicate. This never led to anything\u2026\n\nEight years later (in 2021), I wondered if it would be possible to use an existing keyring software (like [Seahorse](https://wiki.gnome.org/Apps/Seahorse/)) to store password keys, and to communicate with it using *dbus*. This never led to anything.\n\nThe very same year, I noticed that `getmail` had a new feature (which already existed for several years) to use a keyring to store the password. My software was outdated, and I happily dropped support for it.\n\nAbout a year later, I missed the ability to run getmail on all my mailboxes at once, and the progress bar, so I revived Ch'val from the dead: the initial goal (storing password) is no longer relevant, but the progress bar, which was then an incidental feature, became the main purpose.\n\nA more technical history can be found in the [changelog](https://framagit.org/spalax/chval/-/blob/main/CHANGELOG.md).\n\nLicense\n-------\n\nCopyright 2010-2023 Louis Paternault\n\nCh'val is licensed under the [GNU GPL 3 license](https://www.gnu.org/licenses/gpl-3.0.html), or any later version.\n",
    "bugtrack_url": null,
    "license": "GPLv3 or any later version",
    "summary": "Parallel `getmail` calls, with progress bars",
    "version": "1.2.0",
    "project_urls": {
        "Documentation": "https://framagit.org/spalax/chval/-/blob/main/README.md",
        "Homepage": "http://framagit.org/spalax/chval",
        "Source": "https://framagit.org/spalax/chval",
        "Tracker": "https://framagit.org/spalax/chval/issues"
    },
    "split_keywords": [
        "getmail"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "04dfe1eca244bb2cdd57c64015edacaa95103d2bae67496fd32450dea4bde3bd",
                "md5": "936ec702baba790a8d55d55986ae2f6b",
                "sha256": "1e1091feee77a46ed337868dd8d8501089b9117025814869db0df1b4ad68879f"
            },
            "downloads": -1,
            "filename": "chval-1.2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "936ec702baba790a8d55d55986ae2f6b",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4,>=3.10",
            "size": 18812,
            "upload_time": "2023-10-05T21:19:12",
            "upload_time_iso_8601": "2023-10-05T21:19:12.107977Z",
            "url": "https://files.pythonhosted.org/packages/04/df/e1eca244bb2cdd57c64015edacaa95103d2bae67496fd32450dea4bde3bd/chval-1.2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "77103c284e2d8e8c71301302a78c5991079138a7ebb821d018b1413bc80f0f37",
                "md5": "ed60d5e50389c717f6e005759d41fa2c",
                "sha256": "9d484b069294770e376b774a8b8a342847fe24894b84d379248e39c5a8f54698"
            },
            "downloads": -1,
            "filename": "chval-1.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "ed60d5e50389c717f6e005759d41fa2c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4,>=3.10",
            "size": 80945,
            "upload_time": "2023-10-05T21:19:14",
            "upload_time_iso_8601": "2023-10-05T21:19:14.017926Z",
            "url": "https://files.pythonhosted.org/packages/77/10/3c284e2d8e8c71301302a78c5991079138a7ebb821d018b1413bc80f0f37/chval-1.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-10-05 21:19:14",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "chval"
}
        
Elapsed time: 0.17815s