diff --git a/spamassassin/defaults/main.yml b/spamassassin/defaults/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..b994f66ac0dc881d5271498dcfa4b4ad494c8c4b
--- /dev/null
+++ b/spamassassin/defaults/main.yml
@@ -0,0 +1,4 @@
+---
+
+spamassassin_rewrite_subject: no
+spamassassin_required_score: '3.0'
diff --git a/spamassassin/files/sa-learn-ham.sh b/spamassassin/files/sa-learn-ham.sh
deleted file mode 100644
index eacc8a85185520b48ba8e2678a2ec8c3551ae640..0000000000000000000000000000000000000000
--- a/spamassassin/files/sa-learn-ham.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/sh
-# you can also use tcp/ip here, consult spamc(1)
-exec /usr/bin/spamc -u ${1} -L ham -C report
-
-
diff --git a/spamassassin/files/sa-learn-spam.sh b/spamassassin/files/sa-learn-spam.sh
deleted file mode 100644
index 5a8147f362c953bf3442a797867dde242de14d05..0000000000000000000000000000000000000000
--- a/spamassassin/files/sa-learn-spam.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-# you can also use tcp/ip here, consult spamc(1)
-exec /usr/bin/spamc -u ${1} -L spam -C report
-
diff --git a/spamassassin/tasks/main.yml b/spamassassin/tasks/main.yml
index 091028c1c012bfb8b6ce4beb435444c0315ec619..7ed4bf9bb7150694a7eac5a6140f84fab21f50c6 100644
--- a/spamassassin/tasks/main.yml
+++ b/spamassassin/tasks/main.yml
@@ -1,7 +1,9 @@
 ---
 
 - name: ensure spamassassin is installed
-  apt: name={{ item }} state=present
+  apt:
+    name: "{{ item }}"
+    state: present
   with_items:
     - spamassassin
     - spamc
@@ -10,34 +12,32 @@
     - spamassassin
 
 - name: ensure spamassassin is configured
-  copy: src=files/local.cf dest=/etc/spamassassin/local.cf mode=0644 owner=root group=root
-
+  template:
+    src: local.cf.j2
+    dest: /etc/spamassassin/local.cf
+    owner: root
+    group: root
+    mode: 0644
   tags:
     - mail
     - spamassassin
 
-- name: ensure spamassassin is enabled -- the nasty debian way 
-  copy: src=files/defaults dest=/etc/default/spamassassin mode=0644 owner=root group=root
+- name: ensure spamassassin is enabled -- the nasty debian way
+  copy:
+    src: defaults
+    dest: /etc/default/spamassassin
+    owner: root
+    group: root
+    mode: 0644
   tags:
     - mail
     - spamassassin
 
 - name: ensure spamassasin is started and enanbled -- the usual way
-  service: name=spamassassin state=started enabled=yes
-  tags:
-    - mail
-    - spamassassin
-
-#- name: ensure there is sync cronjob for the learned filters
-
-- name: ensure scripts for learning spam are present.
-  copy: src="files/{{ item }}" dest=/var/lib/dovecot/sieve.d/{{ item }} mode=0750 owner=dovecot group=vmail
-  with_items:
-    - sa-learn-ham.sh
-    - sa-learn-spam.sh
+  service:
+    name: spamassassin
+    state: started
+    enabled: yes
   tags:
     - mail
     - spamassassin
-
-
-
diff --git a/spamassassin/files/local.cf b/spamassassin/templates/local.cf.j2
similarity index 94%
rename from spamassassin/files/local.cf
rename to spamassassin/templates/local.cf.j2
index 9089e22c617efef4ed96d38715323a100e9c2520..17499af0050b5b5fe5600a90d89b0b8fcb3eceb0 100644
--- a/spamassassin/files/local.cf
+++ b/spamassassin/templates/local.cf.j2
@@ -9,7 +9,7 @@
 
 #   Add *****SPAM***** to the Subject header of spam e-mails
 #
-rewrite_header Subject *****SPAM*****
+{{ '' if spamassassin_rewrite_subject else '#' }}rewrite_header Subject *****SPAM*****
 
 
 #   Save spam messages as a message/rfc822 MIME attachment instead of
@@ -31,7 +31,7 @@ report_safe 0
 
 #   Set the threshold at which a message is considered spam (default: 5.0)
 #
-required_score 3.0
+required_score {{ spamassassin_required_score }}
 
 
 #   Use Bayesian classifier (default: 1)
@@ -58,7 +58,7 @@ required_score 3.0
 # normalize_charset 1
 
 #   Some shortcircuiting, if the plugin is enabled
-# 
+#
 ifplugin Mail::SpamAssassin::Plugin::Shortcircuit
 #
 #   default: strongly-whitelisted mails are *really* whitelisted now, if the