Skip to content

Commit

Permalink
Merge pull request #296720 from DanNixon/msmtp-update
Browse files Browse the repository at this point in the history
msmtp: 1.8.22 -> 1.8.25
  • Loading branch information
SuperSandro2000 authored Aug 4, 2024
2 parents c20c714 + 2f2010f commit cb9a96f
Show file tree
Hide file tree
Showing 5 changed files with 63 additions and 68 deletions.
2 changes: 2 additions & 0 deletions nixos/doc/manual/release-notes/rl-2411.section.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,8 @@
it is set, instead of the previous hardcoded default of
`${networking.hostName}.${security.ipa.domain}`.

- The `MSMTP_QUEUE` and `MSMTP_LOG` environment variables accepted by `msmtpq` have now been renamed to `MSMTPQ_Q` and `MSMTPQ_LOG` respectively.

- The fcgiwrap module now allows multiple instances running as distinct users.
The option `services.fgciwrap` now takes an attribute set of the
configuration of each individual instance.
Expand Down
11 changes: 7 additions & 4 deletions pkgs/applications/networking/msmtp/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,13 @@
let
inherit (lib) getBin getExe optionals;

version = "1.8.22";
version = "1.8.25";

src = fetchFromGitHub {
owner = "marlam";
repo = "msmtp-mirror";
repo = "msmtp";
rev = "msmtp-${version}";
hash = "sha256-Jt/uvGBrYYr6ua6LVPiP0nuRiIkxBJASdgHBNHivzxQ=";
hash = "sha256-UZKUpF/ZwYPM2rPDudL1O8e8LguKJh9sTcJRT3vgsf4=";
};

meta = with lib; {
Expand Down Expand Up @@ -68,7 +68,10 @@ let
pname = "msmtp-scripts";
inherit version src meta;

patches = [ ./paths.patch ];
patches = [
./msmtpq-remove-binary-check.patch
./msmtpq-systemd-logging.patch
];

postPatch = ''
substituteInPlace scripts/msmtpq/msmtpq \
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/scripts/msmtpq/msmtpq b/scripts/msmtpq/msmtpq
index bcb384e..9622e47 100755
--- a/scripts/msmtpq/msmtpq
+++ b/scripts/msmtpq/msmtpq
@@ -60,8 +60,6 @@ err() { dsp '' "$@" '' ; exit 1 ; }
## export the location of the msmtp executable before running this script (no quotes !!)
## e.g. ( export MSMTP=/path/to/msmtp )
MSMTP="${MSMTP:-msmtp}"
-"$MSMTP" --version >/dev/null 2>&1 || \
- log_later -e 1 "msmtpq : can't run the msmtp executable [ $MSMTP ]" # if not found - complain ; quit
##
## set the queue var to the location of the msmtp queue directory
## if the queue dir doesn't yet exist, create it (0700)
41 changes: 41 additions & 0 deletions pkgs/applications/networking/msmtp/msmtpq-systemd-logging.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
diff --git a/scripts/msmtpq/msmtpq b/scripts/msmtpq/msmtpq
index bcb384e..dbaf1b5 100755
--- a/scripts/msmtpq/msmtpq
+++ b/scripts/msmtpq/msmtpq
@@ -92,6 +92,8 @@ if [ ! -v MSMTPQ_LOG ] ; then
fi
fi
[ -d "$(dirname "$MSMTPQ_LOG")" ] || mkdir -p "$(dirname "$MSMTPQ_LOG")"
+
+JOURNAL=@journal@
## ======================================================================================

## msmtpq can use the following environment variables :
@@ -144,6 +146,7 @@ on_exit() { # unlock the queue on exit if the lock was
## display msg to user, as well
##
log() {
+ local NAME=msmtpq
local ARG RC PFX
PFX="$('date' +'%Y %d %b %H:%M:%S')"
# time stamp prefix - "2008 13 Mar 03:59:45 "
@@ -161,10 +164,19 @@ log() {
done
fi

+ if [ "$JOURNAL" = "Y" ]; then
+ for ARG; do
+ [ -n "$ARG" ] &&
+ echo "$ARG" | systemd-cat -t "$NAME" -p info
+ done
+ fi
+
if [ -n "$RC" ] ; then # an error ; leave w/error return
[ -n "$LKD" ] && lock_queue -u # unlock here (if locked)
[ -n "$MSMTPQ_LOG" ] && \
echo " exit code = $RC" >> "$MSMTPQ_LOG" # logging ok ; send exit code to log
+ [ "$JOURNAL" = "Y" ] && \
+ echo "exit code= $RC" | systemd-cat -t "$NAME" -p emerg
exit "$RC" # exit w/return code
fi
}
64 changes: 0 additions & 64 deletions pkgs/applications/networking/msmtp/paths.patch

This file was deleted.

0 comments on commit cb9a96f

Please sign in to comment.