Loading nixos/doc/manual/release-notes/rl-2411.section.md +2 −0 Original line number Diff line number Diff line Loading @@ -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. Loading pkgs/applications/networking/msmtp/default.nix +7 −4 Original line number Diff line number Diff line Loading @@ -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; { Loading Loading @@ -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 \ Loading pkgs/applications/networking/msmtp/msmtpq-remove-binary-check.patch 0 → 100644 +13 −0 Original line number Diff line number Diff line 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) pkgs/applications/networking/msmtp/paths.patch→pkgs/applications/networking/msmtp/msmtpq-systemd-logging.patch +41 −0 Original line number Diff line number Diff line diff --git a/scripts/msmtpq/msmtpq b/scripts/msmtpq/msmtpq index d8b4039..1f2a7b5 100755 index bcb384e..dbaf1b5 100755 --- a/scripts/msmtpq/msmtpq +++ b/scripts/msmtpq/msmtpq @@ -60,8 +60,8 @@ err() { dsp '' "$@" '' ; exit 1 ; } ## e.g. ( export MSMTP=/path/to/msmtp ) if [ "$MSMTP" = "" ] ; then # If MSMTP is unset or empty... MSMTP=msmtp -elif [ ! -x "$MSMTP" ] ; then - log -e 1 "msmtpq : can't find the msmtp executable [ $MSMTP ]" # if not found - complain ; quit +# elif [ ! -x "$MSMTP" ] ; then +# log -e 1 "msmtpq : can't find the msmtp executable [ $MSMTP ]" # if not found - complain ; quit @@ -92,6 +92,8 @@ if [ ! -v MSMTPQ_LOG ] ; then fi ## ## set the queue var to the location of the msmtp queue directory @@ -71,7 +71,7 @@ fi ## ( chmod 0700 msmtp.queue ) ## ## the queue dir - export this variable to reflect where you'd like it to be (no quotes !!) -Q=${Q:-~/.msmtp.queue} +Q=${MSMTP_QUEUE:-~/.msmtp.queue} [ -d "$Q" ] || mkdir -m 0700 -p "$Q" || \ err '' "msmtpq : can't find or create msmtp queue directory [ $Q ]" '' # if not present - complain ; quit ## @@ -85,8 +85,10 @@ Q=${Q:-~/.msmtp.queue} ## ## the queue log file - export this variable to change where logs are stored (but no quotes !!) ## Set it to "" (empty string) to disable logging. -[ -v LOG ] || LOG=~/log/msmtp.queue.log +LOG=${MSMTP_LOG:-~/log/msmtp.queue.log} [ -d "$(dirname "$LOG")" ] || mkdir -p "$(dirname "$LOG")" fi [ -d "$(dirname "$MSMTPQ_LOG")" ] || mkdir -p "$(dirname "$MSMTPQ_LOG")" + +JOURNAL=@journal@ ## ====================================================================================== ## msmtpq can use the following environment variables : @@ -139,6 +141,7 @@ on_exit() { # unlock the queue on exit if the lock was @@ -144,6 +146,7 @@ on_exit() { # unlock the queue on exit if the lock was ## display msg to user, as well ## log() { Loading @@ -42,7 +19,7 @@ index d8b4039..1f2a7b5 100755 local ARG RC PFX PFX="$('date' +'%Y %d %b %H:%M:%S')" # time stamp prefix - "2008 13 Mar 03:59:45 " @@ -156,10 +159,19 @@ log() { @@ -161,10 +164,19 @@ log() { done fi Loading @@ -55,8 +32,8 @@ index d8b4039..1f2a7b5 100755 + if [ -n "$RC" ] ; then # an error ; leave w/error return [ -n "$LKD" ] && lock_queue -u # unlock here (if locked) [ -n "$LOG" ] && \ echo " exit code = $RC" >> "$LOG" # logging ok ; send exit code to log [ -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 Loading Loading
nixos/doc/manual/release-notes/rl-2411.section.md +2 −0 Original line number Diff line number Diff line Loading @@ -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. Loading
pkgs/applications/networking/msmtp/default.nix +7 −4 Original line number Diff line number Diff line Loading @@ -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; { Loading Loading @@ -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 \ Loading
pkgs/applications/networking/msmtp/msmtpq-remove-binary-check.patch 0 → 100644 +13 −0 Original line number Diff line number Diff line 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)
pkgs/applications/networking/msmtp/paths.patch→pkgs/applications/networking/msmtp/msmtpq-systemd-logging.patch +41 −0 Original line number Diff line number Diff line diff --git a/scripts/msmtpq/msmtpq b/scripts/msmtpq/msmtpq index d8b4039..1f2a7b5 100755 index bcb384e..dbaf1b5 100755 --- a/scripts/msmtpq/msmtpq +++ b/scripts/msmtpq/msmtpq @@ -60,8 +60,8 @@ err() { dsp '' "$@" '' ; exit 1 ; } ## e.g. ( export MSMTP=/path/to/msmtp ) if [ "$MSMTP" = "" ] ; then # If MSMTP is unset or empty... MSMTP=msmtp -elif [ ! -x "$MSMTP" ] ; then - log -e 1 "msmtpq : can't find the msmtp executable [ $MSMTP ]" # if not found - complain ; quit +# elif [ ! -x "$MSMTP" ] ; then +# log -e 1 "msmtpq : can't find the msmtp executable [ $MSMTP ]" # if not found - complain ; quit @@ -92,6 +92,8 @@ if [ ! -v MSMTPQ_LOG ] ; then fi ## ## set the queue var to the location of the msmtp queue directory @@ -71,7 +71,7 @@ fi ## ( chmod 0700 msmtp.queue ) ## ## the queue dir - export this variable to reflect where you'd like it to be (no quotes !!) -Q=${Q:-~/.msmtp.queue} +Q=${MSMTP_QUEUE:-~/.msmtp.queue} [ -d "$Q" ] || mkdir -m 0700 -p "$Q" || \ err '' "msmtpq : can't find or create msmtp queue directory [ $Q ]" '' # if not present - complain ; quit ## @@ -85,8 +85,10 @@ Q=${Q:-~/.msmtp.queue} ## ## the queue log file - export this variable to change where logs are stored (but no quotes !!) ## Set it to "" (empty string) to disable logging. -[ -v LOG ] || LOG=~/log/msmtp.queue.log +LOG=${MSMTP_LOG:-~/log/msmtp.queue.log} [ -d "$(dirname "$LOG")" ] || mkdir -p "$(dirname "$LOG")" fi [ -d "$(dirname "$MSMTPQ_LOG")" ] || mkdir -p "$(dirname "$MSMTPQ_LOG")" + +JOURNAL=@journal@ ## ====================================================================================== ## msmtpq can use the following environment variables : @@ -139,6 +141,7 @@ on_exit() { # unlock the queue on exit if the lock was @@ -144,6 +146,7 @@ on_exit() { # unlock the queue on exit if the lock was ## display msg to user, as well ## log() { Loading @@ -42,7 +19,7 @@ index d8b4039..1f2a7b5 100755 local ARG RC PFX PFX="$('date' +'%Y %d %b %H:%M:%S')" # time stamp prefix - "2008 13 Mar 03:59:45 " @@ -156,10 +159,19 @@ log() { @@ -161,10 +164,19 @@ log() { done fi Loading @@ -55,8 +32,8 @@ index d8b4039..1f2a7b5 100755 + if [ -n "$RC" ] ; then # an error ; leave w/error return [ -n "$LKD" ] && lock_queue -u # unlock here (if locked) [ -n "$LOG" ] && \ echo " exit code = $RC" >> "$LOG" # logging ok ; send exit code to log [ -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 Loading