about summary refs log tree commit homepage
path: root/examples/unsubscribe-milter@.service
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2016-06-07 12:57:42 +0000
committerEric Wong <e@80x24.org>2016-06-07 12:57:42 +0000
commit3f779258173530ca88f31e1dc5332f951d2c44cd (patch)
treed7e9d0884d1787068627c411577cb5ba99a5c8c9 /examples/unsubscribe-milter@.service
parente2adc947edc895da70a3a86ff6e9e13e5693be13 (diff)
parent852df982d88dcfaa49a1398cd6ef30973bcaaa09 (diff)
downloadpublic-inbox-3f779258173530ca88f31e1dc5332f951d2c44cd.tar.gz
* unsubscribe:
  unsubscribe.milter: use default postfork dispatcher
  unsubscribe: prevent decrypt from showing random crap
  examples/unsubscribe-psgi@.service: disable worker processes
  unsubscribe: bad URL fixup
  unsubscribe: get off mah lawn^H^H^Hist
Diffstat (limited to 'examples/unsubscribe-milter@.service')
-rw-r--r--examples/unsubscribe-milter@.service24
1 files changed, 24 insertions, 0 deletions
diff --git a/examples/unsubscribe-milter@.service b/examples/unsubscribe-milter@.service
new file mode 100644
index 00000000..98e3d478
--- /dev/null
+++ b/examples/unsubscribe-milter@.service
@@ -0,0 +1,24 @@
+# ==> /etc/systemd/system/unsubscribe-milter@.service <==
+# The '@' is to allow multiple simultaneous services to start
+# and share the same socket so new code can be cycled in
+# without downtime
+
+[Unit]
+Description = unsubscribe milter %i
+Wants = unsubscribe-milter.socket
+After = unsubscribe-milter.socket
+
+[Service]
+# First 8 bytes is for the key, next 8 bytes is for the IV
+# using Blowfish.  We want as short URLs as possible to avoid
+# copy+paste errors
+# umask 077 && dd if=/dev/urandom bs=16 count=1 of=.unsubscribe.key
+ExecStart = /usr/local/sbin/unsubscribe.milter /home/mlmmj/.unsubscribe.key
+Sockets = unsubscribe-milter.socket
+
+# the corresponding PSGI app needs permissions to modify the
+# mlmmj spool, so we might as well use the same user since
+User = mlmmj
+
+[Install]
+WantedBy = multi-user.target