1
=============================
2
ClamAV for Evolution - README
3
=============================
6
Author: Christian Brenner <christian.brenner@ymail.com>
1
--------------------------------------------------------
2
Filters to scan incoming email in Evolution using ClamAV
3
========================================================
7
Copyright (C) 2011 Christian Brenner
9
Copyright (C) 2020 Mark Grant
11
ClamAV for Evolution is a Bash script that enables Evolution to let incoming
12
mails be scanned by ClamAV.
17
- Bash (4.1.9 or above)
18
- ClamAV (0.96.5 or above)
19
- Evolution (2.28.2 or above)
20
- libnotify (0.4.4 or above)
22
This script was tested with above versions. It may function with older
23
versions. It was developed/tested on Novell SUSE Linux Enterprise 11 SP1.
15
1 ... Project Description
17
2 ... AutoTools (configure and make) Installation
19
3 ... Installation of Distro-Native Packages
25
-------------------------
26
1 ... Project Description
27
=========================
29
The project consists of bash scripts which can be used as filters to scan
30
incoming mail with ClamAV in Evolution. There is a script which scans the mail
31
in the foreground and one that utilises the ClamAV daemon.
35
At a source modification / development level, this project expects to reside in
36
a git environment. This manifests itself in 2 places:-
37
1) ... .gitignore files are included in the source.
38
2) ... The make target, 'srctarball', relies on the command 'git am' so it will
39
fail if git is not installed or it is not in a git repository.
42
-------------------------------------------------
43
2 ... AutoTools (configure and make) Installation
44
=================================================
46
a) ... Download either the source or distribution tarball (the .tar.gz file)
49
https://github.com/m-grant-prg/evolution-clamav/releases
51
b) ... Extract the tarball preserving the directory structure.
53
c) ... cd to the directory created.
55
d) ... If you downloaded the source tarball type 'autoreconf -if'
57
e) ... Type './configure'
59
f) ... As root or sudo, type 'make install clean'
61
g) ... Determine where the scripts have been installed. This will almost
62
certainly be /usr/local/bin but can be discovered by typing
63
'which evolution-clamav.sh'
67
i) ... Go to "Edit" > "Message Filters"
71
k) ... Apply following settings:
73
k.1) Rule Name: ClamAV (or anything else)
74
k.2) Click "Add Condition"
75
k.3) Select "Pipe to Program"
76
k.4) Then using the location determined in g), either:
77
Select the evolution-clamav.sh file for foreground
80
Select the evolution-clamavd.sh file to use the daemon
81
k.5) Select "does not return"
83
k.7) Click "Add Action"
88
(Quote marks are for textual clarity only).
91
To uninstall the package:
93
1 ... cd to the directory created in the above install process.
95
2 ... As root or sudo, type 'make uninstall clean'
98
--------------------------------------------
99
3 ... Installation of Distro-Native Packages
100
============================================
101
Installation packages native to different distributions are available, please
102
refer to the relevant installation section on the wiki at:-
104
https://github.com/m-grant-prg/evolution-clamav/wiki
107
---------------------
108
4 ... Utility Scripts
109
=====================
110
In the project root directory there is 1 helper script; bootstrap.sh.
28
1) Copy the script to /home/<foo>/.evolution (or any other folder)
30
3) Go to "Edit" > "Message Filters"
32
5) Apply following settings:
34
5.1) Rule Name: ClamAV (or anything else)
35
5.2) Click "Add Condition"
36
5.3) Select "Pipe to Program"
37
5.4) Select the clamav_evolution.sh file
38
5.5) Select "does not return"
40
5.7) Click "Add Action"
48
Copyright (c) 2011 Christian Brenner. All rights reserved.
49
Copyright (c) Fred Blaise. All rights reserved.
114
This misleadingly named script bootstraps the project build and provides other
115
useful features. The main options below are probably b, c, C, D and T.
117
In AutoTools it is usually advisable to perform parallel builds. This means you
118
build somewhere other than the project root. This is because building creates
119
files and they would confuse the project root downwards. I always create a build
120
directory straight off the project root, cd to there and do all build and git
121
work from there, (.gitignore is already set to ignore such a directory).
123
Assuming you adopt the preceding paragraph then a typical invocation of the
126
../bootstrap.sh --config --build ..
128
The last '..' points the way to project root.
130
For the full list of arguments to bootstrap.sh, please refer to the options
131
section of the acmbuild wiki, the options are identical:-
133
https://github.com/m-grant-prg/acmbuild/wiki