summaryrefslogtreecommitdiffstats
path: root/lass
diff options
context:
space:
mode:
Diffstat (limited to 'lass')
-rw-r--r--lass/2configs/exim-smarthost.nix2
-rw-r--r--lass/5pkgs/review-mail-queue/default.nix39
2 files changed, 41 insertions, 0 deletions
diff --git a/lass/2configs/exim-smarthost.nix b/lass/2configs/exim-smarthost.nix
index 08a226e6d..82839beba 100644
--- a/lass/2configs/exim-smarthost.nix
+++ b/lass/2configs/exim-smarthost.nix
@@ -113,6 +113,8 @@
];
in {
+ environment.systemPackages = [ pkgs.review-mail-queue ];
+
krebs.exim-smarthost = {
enable = true;
dkim = [
diff --git a/lass/5pkgs/review-mail-queue/default.nix b/lass/5pkgs/review-mail-queue/default.nix
new file mode 100644
index 000000000..c8c66706c
--- /dev/null
+++ b/lass/5pkgs/review-mail-queue/default.nix
@@ -0,0 +1,39 @@
+{ pkgs }: let
+
+ review = pkgs.writers.writeBash "review-mail" ''
+ mail="$1"
+ ${pkgs.exim}/bin/exim -Mvc "$mail" | grep -E 'Subject:|To:'
+ ${pkgs.exim}/bin/exim -Mvl "$mail"
+ while :; do
+ read -p 'delete?' key
+ case "$key" in
+ v*)
+ ${pkgs.exim}/bin/exim -Mvc "$mail"
+ ;;
+ d*)
+ ${pkgs.exim}/bin/exim -Mrm "$mail"
+ break
+ ;;
+ r*)
+ ${pkgs.exim}/bin/exim -Mt "$mail"
+ break
+ ;;
+ n*)
+ break
+ ;;
+ esac
+ done
+ echo '-------------------'
+ echo '-------------------'
+ echo '-------------------'
+ echo '-------------------'
+ echo '-------------------'
+ '';
+
+in pkgs.writers.writeBashBin "review-mail" ''
+ for mail in $(${pkgs.exim}/bin/exim -bp \
+ | ${pkgs.gnugrep}/bin/grep frozen \
+ | ${pkgs.gawk}/bin/awk '{print $3}'); do
+ ${review} "$mail"
+ done
+''