From 7f7e30a04a9daede50734c2b0fd11dee63d517a0 Mon Sep 17 00:00:00 2001 From: Max Erenberg Date: Sun, 29 Aug 2021 19:57:27 -0400 Subject: [PATCH] add packaging for Debian --- .gitignore | 9 +++++++++ csc_milter/main.py | 9 +++++++-- debian/changelog | 23 +++++++++++++++++++++++ debian/compat | 1 + debian/control | 15 +++++++++++++++ debian/copyright | 1 + {systemd => debian}/csc-milter.service | 2 +- debian/rules | 6 ++++++ debian/source/format | 1 + 9 files changed, 64 insertions(+), 3 deletions(-) create mode 100644 debian/changelog create mode 100644 debian/compat create mode 100644 debian/control create mode 100644 debian/copyright rename {systemd => debian}/csc-milter.service (81%) create mode 100755 debian/rules create mode 100644 debian/source/format diff --git a/.gitignore b/.gitignore index f615b97..df61f21 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,12 @@ __pycache__/ *.swp *.egg-info/ build/ +/.pybuild/ + +# Ignore Debian auto-generated files. +/debian/debhelper-build-stamp +/debian/files +/debian/csc-milter/** +/debian/*.log +/debian/*.debhelper +/debian/*.substvars diff --git a/csc_milter/main.py b/csc_milter/main.py index 6b350e5..d4b00de 100644 --- a/csc_milter/main.py +++ b/csc_milter/main.py @@ -116,9 +116,14 @@ def main(): if args.mynetworks is not None: networks = args.mynetworks.split() else: - networks = get_postconf('mynetworks').split() + networks_str = get_postconf('mynetworks').replace(',', ' ') + networks = networks_str.split() MYNETWORKS = [ - ipaddress.ip_network(s.replace('[', '').replace(']', '')) + ipaddress.ip_network( + s.replace('[', '') + .replace(']', '') + .strip() + ) for s in networks ] diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..e859470 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,23 @@ +csc-milter (0.1.1-1) buster; urgency=medium + + * Fix bug in mynetworks parsing. + + -- Max Erenberg Sun, 29 Aug 2021 19:45:44 -0400 + +csc-milter (0.1.0-3) buster; urgency=medium + + * Update absolute path in systemd service. + + -- Max Erenberg Sun, 29 Aug 2021 19:15:24 -0400 + +csc-milter (0.1.0-2) buster; urgency=medium + + * Add systemd service to debian folder. + + -- Max Erenberg Sun, 29 Aug 2021 19:07:58 -0400 + +csc-milter (0.1.0-1) buster; urgency=medium + + * Initial release. + + -- Max Erenberg Sun, 29 Aug 2021 22:22:55 +0000 diff --git a/debian/compat b/debian/compat new file mode 100644 index 0000000..f599e28 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +10 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..cea326e --- /dev/null +++ b/debian/control @@ -0,0 +1,15 @@ +Source: csc-milter +Maintainer: Systems Committee +Section: mail +Priority: optional +Standards-Version: 3.9.2 +Build-Depends: debhelper (>=9), + dh-python, + python3-setuptools, + python3-all + +Package: csc-milter +Architecture: any +Depends: ${misc:Depends}, ${python3:Depends}, python3-milter (>=1.0) +Description: Custom mail filter ("milter") for CSC. + This package implements custom filtering logic for the CSC mail server. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..2213f58 --- /dev/null +++ b/debian/copyright @@ -0,0 +1 @@ +License: GPL-3.0 diff --git a/systemd/csc-milter.service b/debian/csc-milter.service similarity index 81% rename from systemd/csc-milter.service rename to debian/csc-milter.service index 88256db..da263ff 100644 --- a/systemd/csc-milter.service +++ b/debian/csc-milter.service @@ -6,7 +6,7 @@ Wants=postfix.service User=postfix Group=postfix RuntimeDirectory=csc-milter -ExecStart=/usr/local/bin/csc-milter +ExecStart=/usr/bin/csc-milter [Install] WantedBy=multi-user.target diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..b2bb059 --- /dev/null +++ b/debian/rules @@ -0,0 +1,6 @@ +#!/usr/bin/make -f + +export PYBUILD_NAME=csc-milter + +%: + dh $@ --with python3 --buildsystem=pybuild diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt)