install_sympa.sh: add support for debian 13 (trixie).

This commit is contained in:
2026-01-05 00:36:33 +01:00
parent d120de31b2
commit de1c146495
2 changed files with 91 additions and 31 deletions

View File

@@ -29,6 +29,33 @@
#SYMPA_MAIN_CONF_DIR="/etc/sympa"
# - SYMPA_SPOOL_DIR
# -
# - Sympas spool directory
# -
# - Defaults to: "/var/spool/sympa"
# -
# - Notice!!
# -
# - Since Debian 13 (Trixie), the default installation of Postfix, specifically
# - the systemd service configuration, prevents the writability of the
# - '/usr/local' folder, including subfolders. There are two options for the Sympa
# - installation:
# -
# - 1.) We move the spool directory to /var/spool/sympa
# -
# -
# - 2.) We allow writing to the directories /usr/local/sympa, including subfolders.
# - To do this, we change/add to the systemd service configuration of postfix:
# -
# - cat <<'EOF' > /etc/systemd/system/postfix.service.d 2>> $_log_file
# - [Service]
# - ReadWritePaths=/usr/local/sympa
# - EOF
# -
#SYMPA_MAIN_CONF_DIR=""/var/spool/sympa
# - SYMPA_LIST_DATA_ROOT_DIR
# -
# - Root Path containing Sympa's list data directories

View File

@@ -133,6 +133,7 @@ _required_debian_packages="
libdbd-sybase-perl
libdbi-perl
libdbi-test-perl
libdigest-sha-perl
libfcgi-perl
libfile-copy-recursive-perl
libfile-nfslock-perl
@@ -142,6 +143,8 @@ _required_debian_packages="
libintl-perl
libio-socket-ssl-perl
libio-stringy-perl
liblz-dev
liblzo2-dev
libmail-dkim-perl
libmail-sendmail-perl
libmailtools-perl
@@ -274,6 +277,7 @@ DEFAULT_SYMPA_USER="sympa"
DEFAULT_SYMPA_MAIN_CONF_DIR="/etc/sympa"
DEFAULT_SYMPA_LIST_DATA_ROOT_DIR="/data"
DEFAULT_SYMPA_SPOOL_DIR="/var/spool/sympa"
DEFAULT_START_AT_BOOTTIME="yes"
@@ -313,6 +317,7 @@ DEFAULT_SYMPA_WEB_URL="https://$SYMPA_DOMAIN/wws"
[[ -n "$SYMPA_USER" ]] && DEFAULT_SYMPA_USER="$SYMPA_USER"
[[ -n "$SYMPA_MAIN_CONF_DIR" ]] && DEFAULT_SYMPA_MAIN_CONF_DIR="$SYMPA_MAIN_CONF_DIR"
[[ -n "$SYMPA_SPOOL_DIR" ]] && DEFAULT_SYMPA_SPOOL_DIR="$SYMPA_SPOOL_DIR"
[[ -n "$SYMPA_LISTMASTER" ]] && DEFAULT_SYMPA_LISTMASTER="$SYMPA_LISTMASTER"
[[ -n "$SYMPA_LIST_DATA_ROOT_DIR" ]] && DEFAULT_SYMPA_LIST_DATA_ROOT_DIR="$SYMPA_LIST_DATA_ROOT_DIR"
[[ -n "$START_AT_BOOTTIME" ]] && DEFAULT_START_AT_BOOTTIME="$START_AT_BOOTTIME"
@@ -506,43 +511,57 @@ echo
echo
echo
echo
echononl "\tDetermin OS related parameters (distribution, version, codename) .."
detect_os_1
echo_ok
DISTRIBUTION=
echo ""
echo -e "\033[32m--\033[m"
echo ""
echo "Which (linux) distribution is installed?"
echo ""
echo "[1] Debian"
echo "[2] andere"
echo ""
echononl "Eingabe: "
while [ "$DISTRIBUTION" != "Debian" -a "$DISTRIBUTION" != "other" ];do
read OPTION
case $OPTION in
1) DISTRIBUTION="Debian"
;;
2) DISTRIBUTION="other"
;;
*) echo ""
echo -e "\tFalsche Eingabe ! [ 1 = Debian ; 2 = andere ]"
echo ""
echononl "Eingabe:"
;;
esac
done
if [ "$DISTRIBUTION" == "other" ]; then
if [[ "${os_dist,,}" == "debian" ]] ; then
DISTRIBUTION="Debian"
SYMPA_INIT_DIR=/etc/init.d
else
info "Distributions other than Debian are not supported by that script."
echo -e "\n\t \033[31m\033[1mInstallation is canceled\033[m\033[m .."
echo ""
clean_up 2
elif [ "$DISTRIBUTION" == "Debian" ]; then
SYMPA_INIT_DIR=/etc/init.d
else
SYMPA_INIT_DIR=/etc/rc.d/init.d
fi
#DISTRIBUTION=
#echo ""
#echo -e "\033[32m--\033[m"
#echo ""
#echo "Which (linux) distribution is installed?"
#echo ""
#echo "[1] Debian"
#echo "[2] andere"
#echo ""
#echononl "Eingabe: "
#
#while [ "$DISTRIBUTION" != "Debian" -a "$DISTRIBUTION" != "other" ];do
# read OPTION
# case $OPTION in
# 1) DISTRIBUTION="Debian"
# ;;
# 2) DISTRIBUTION="other"
# ;;
# *) echo ""
# echo -e "\tFalsche Eingabe ! [ 1 = Debian ; 2 = andere ]"
# echo ""
# echononl "Eingabe:"
# ;;
# esac
#done
#if [ "$DISTRIBUTION" == "other" ]; then
# info "Distributions other than Debian are not supported by that script."
# echo -e "\n\t \033[31m\033[1mInstallation is canceled\033[m\033[m .."
# echo ""
# clean_up 2
#elif [ "$DISTRIBUTION" == "Debian" ]; then
# SYMPA_INIT_DIR=/etc/init.d
#else
# SYMPA_INIT_DIR=/etc/rc.d/init.d
#fi
_UPDATE_SYMPA=""
echo ""
echo -e "\033[32m--\033[m"
@@ -764,6 +783,18 @@ if [ "X$SYMPA_MAIN_CONF_DIR" = "X" ]; then
SYMPA_MAIN_CONF_DIR=$DEFAULT_SYMPA_MAIN_CONF_DIR
fi
echo ""
echo "--"
echo ""
echo "Specify Sympa's spool directory."
echo ""
SYMPA_SPOOL_DIR=
echononl "Sympa main configuration directory [${DEFAULT_SYMPA_SPOOL_DIR}]: "
read SYMPA_SPOOL_DIR
if [ "X$SYMPA_SPOOL_DIR" = "X" ]; then
SYMPA_SPOOL_DIR=$DEFAULT_SYMPA_SPOOL_DIR
fi
if $UPDATE_SYMPA ; then
if [ ! -f "${SYMPA_MAIN_CONF_DIR}/sympa.conf" ]; then
fatal "You are in update mode, but i can't find existing main configuration at $SYMPA_MAIN_CONF_DIR"
@@ -1379,6 +1410,7 @@ echo "Sympa's libexec directory...........: $SYMPA_LIBEXEC_DIR"
echo "Sympa's static directory............: $SYMPA_STATIC_DIR"
echo "Sympa's manpages directory..........: $SYMPA_MANPATH"
echo "Sympa's main conf directory.........: $SYMPA_MAIN_CONF_DIR"
echo "Sympa's spool directory.............: $SYMPA_SPOOL_DIR"
echo ""
echo "Sympa's Data directory..............: $SYMPA_LIST_DATA_DIR"
echo "Sympa's Data base path..............: $SYMPA_LIST_DATA_BASE_PATH"
@@ -2751,7 +2783,8 @@ echononl "\tConfiguring sympa-${SYMPA_VERSION} .."
config_params="
--enable-fhs=$ENABLE_FHS
--prefix=$SYMPA_INSTALL_DIR"
--prefix=$SYMPA_INSTALL_DIR
--with-spooldir=${SYMPA_SPOOL_DIR}"
if $SYSTEMD_SUPPORTED ; then
config_params="$config_params