1{ lib, buildPythonPackage, fetchPypi, fetchpatch, mock
2, future, six, setuptools_scm }:
3
4buildPythonPackage rec {
5 pname = "sievelib";
6 version = "1.1.1";
7
8 src = fetchPypi {
9 inherit pname version;
10 sha256 = "1sl1fnwr5jdacrrnq2rvzh4vv1dyxd3x31vnqga36gj8h546h7mz";
11 };
12
13 patches = [
14 (fetchpatch {
15 url = "https://github.com/tonioo/sievelib/commit/1deef0e2bf039a0e817ea6f19aaf1947dc9fafbc.patch";
16 sha256 = "0vaj73mcij9dism8vfaai82irh8j1b2n8gf9jl1a19d2l26jrflk";
17 })
18 ];
19
20 buildInputs = [ setuptools_scm ];
21 propagatedBuildInputs = [ future six ];
22 checkInputs = [ mock ];
23
24 meta = {
25 description = "Client-side Sieve and Managesieve library written in Python";
26 homepage = https://github.com/tonioo/sievelib;
27 license = lib.licenses.mit;
28 maintainers = with lib.maintainers; [ leenaars ];
29 longDescription = ''
30 A library written in Python that implements RFC 5228 (Sieve: An Email
31 Filtering Language) and RFC 5804 (ManageSieve: A Protocol for
32 Remotely Managing Sieve Scripts), as well as the following extensions:
33
34 * Copying Without Side Effects (RFC 3894)
35 * Body (RFC 5173)
36 * Date and Index (RFC 5260)
37 * Vacation (RFC 5230)
38 * Imap4flags (RFC 5232)
39 '';
40 };
41}