Sfoglia il codice sorgente

Fixing public mailing list

Bob Mottram 10 anni fa
parent
commit
a11b75fbc7
1 ha cambiato i file con 21 aggiunte e 6 eliminazioni
  1. 21
    6
      install-freedombone.sh

+ 21
- 6
install-freedombone.sh Vedi File

1702
       PUBLIC_MAILING_LIST_DOMAIN_NAME=$DOMAIN_NAME
1702
       PUBLIC_MAILING_LIST_DOMAIN_NAME=$DOMAIN_NAME
1703
   fi
1703
   fi
1704
 
1704
 
1705
+  PUBLIC_MAILING_LIST_USER="mlmmj"
1706
+
1705
   apt-get -y --force-yes install mlmmj
1707
   apt-get -y --force-yes install mlmmj
1706
-  adduser --system mlmmj
1708
+  adduser --system $PUBLIC_MAILING_LIST_USER
1709
+  addgroup $PUBLIC_MAILING_LIST_USER
1710
+  adduser $PUBLIC_MAILING_LIST_USER $PUBLIC_MAILING_LIST_USER
1707
 
1711
 
1708
   echo ''
1712
   echo ''
1709
   echo "Creating the $PUBLIC_MAILING_LIST mailing list"
1713
   echo "Creating the $PUBLIC_MAILING_LIST mailing list"
1710
   echo ''
1714
   echo ''
1711
 
1715
 
1712
   # create the list
1716
   # create the list
1713
-  mlmmj-make-ml -a -L "$PUBLIC_MAILING_LIST" -c mlmmj
1717
+  mlmmj-make-ml -a -L "$PUBLIC_MAILING_LIST" -c $PUBLIC_MAILING_LIST_USER
1718
+
1719
+  echo 'SYSTEM_ALIASES_PIPE_TRANSPORT = address_pipe' > /etc/exim4/conf.d/main/000_localmacros
1720
+  echo "SYSTEM_ALIASES_USER = $PUBLIC_MAILING_LIST_USER" >> /etc/exim4/conf.d/main/000_localmacros
1721
+  echo "SYSTEM_ALIASES_GROUP = $PUBLIC_MAILING_LIST_USER" >> /etc/exim4/conf.d/main/000_localmacros
1714
 
1722
 
1723
+  # router
1715
   echo 'mlmmj_router:' > /etc/exim4/conf.d/router/750_exim4-config_mlmmj
1724
   echo 'mlmmj_router:' > /etc/exim4/conf.d/router/750_exim4-config_mlmmj
1725
+  echo '  debug_print = "R: mlmmj_router for $local_part@$domain"' >> /etc/exim4/conf.d/router/750_exim4-config_mlmmj
1716
   echo '  driver = accept' >> /etc/exim4/conf.d/router/750_exim4-config_mlmmj
1726
   echo '  driver = accept' >> /etc/exim4/conf.d/router/750_exim4-config_mlmmj
1717
   echo '  domains = +mlmmj_domains' >> /etc/exim4/conf.d/router/750_exim4-config_mlmmj
1727
   echo '  domains = +mlmmj_domains' >> /etc/exim4/conf.d/router/750_exim4-config_mlmmj
1718
   echo '  #require_files = MLMMJ_HOME/${lc::$local_part}' >> /etc/exim4/conf.d/router/750_exim4-config_mlmmj
1728
   echo '  #require_files = MLMMJ_HOME/${lc::$local_part}' >> /etc/exim4/conf.d/router/750_exim4-config_mlmmj
1725
   echo '  headers_add = Delivered-To: $local_part$local_part_suffix@$domain' >> /etc/exim4/conf.d/router/750_exim4-config_mlmmj
1735
   echo '  headers_add = Delivered-To: $local_part$local_part_suffix@$domain' >> /etc/exim4/conf.d/router/750_exim4-config_mlmmj
1726
   echo '  transport = mlmmj_transport' >> /etc/exim4/conf.d/router/750_exim4-config_mlmmj
1736
   echo '  transport = mlmmj_transport' >> /etc/exim4/conf.d/router/750_exim4-config_mlmmj
1727
 
1737
 
1738
+  # transport
1728
   echo 'mlmmj_transport:' > /etc/exim4/conf.d/transport/40_exim4-config_mlmmj
1739
   echo 'mlmmj_transport:' > /etc/exim4/conf.d/transport/40_exim4-config_mlmmj
1740
+  echo '  debug_print = "T: mlmmj_transport for $local_part@$domain"' >> /etc/exim4/conf.d/transport/40_exim4-config_mlmmj
1729
   echo '  driver = pipe' >> /etc/exim4/conf.d/transport/40_exim4-config_mlmmj
1741
   echo '  driver = pipe' >> /etc/exim4/conf.d/transport/40_exim4-config_mlmmj
1730
   echo '  return_path_add' >> /etc/exim4/conf.d/transport/40_exim4-config_mlmmj
1742
   echo '  return_path_add' >> /etc/exim4/conf.d/transport/40_exim4-config_mlmmj
1731
   echo '  user = mlmmj' >> /etc/exim4/conf.d/transport/40_exim4-config_mlmmj
1743
   echo '  user = mlmmj' >> /etc/exim4/conf.d/transport/40_exim4-config_mlmmj
1741
       sed -i "/MLMMJ_HOME/a\domainlist mlmmj_domains = $PUBLIC_MAILING_LIST_DOMAIN_NAME" /etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs
1753
       sed -i "/MLMMJ_HOME/a\domainlist mlmmj_domains = $PUBLIC_MAILING_LIST_DOMAIN_NAME" /etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs
1742
   fi
1754
   fi
1743
 
1755
 
1756
+
1757
+  if ! grep -q "delay_warning_condition =" /etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs; then
1758
+      sed -i '/domainlist mlmmj_domains =/a\delay_warning_condition = ${if match_domain{$domain}{+mlmmj_domains}{no}{yes}}' /etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs
1759
+  fi
1744
   if ! grep -q ": +mlmmj_domains" /etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs; then
1760
   if ! grep -q ": +mlmmj_domains" /etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs; then
1745
       sed -i 's/domainlist relay_to_domains = MAIN_RELAY_TO_DOMAINS/domainlist relay_to_domains = MAIN_RELAY_TO_DOMAINS : +mlmmj_domains/g' /etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs
1761
       sed -i 's/domainlist relay_to_domains = MAIN_RELAY_TO_DOMAINS/domainlist relay_to_domains = MAIN_RELAY_TO_DOMAINS : +mlmmj_domains/g' /etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs
1746
   fi
1762
   fi
1748
   if ! grep -q "! +mlmmj_domains" /etc/exim4/conf.d/router/200_exim4-config_primary; then
1764
   if ! grep -q "! +mlmmj_domains" /etc/exim4/conf.d/router/200_exim4-config_primary; then
1749
       sed -i 's/domains = ! +local_domains/domains = ! +mlmmj_domains : ! +local_domains/g' /etc/exim4/conf.d/router/200_exim4-config_primary
1765
       sed -i 's/domains = ! +local_domains/domains = ! +mlmmj_domains : ! +local_domains/g' /etc/exim4/conf.d/router/200_exim4-config_primary
1750
   fi
1766
   fi
1751
-  service exim4 restart
1752
   newaliases
1767
   newaliases
1753
-
1754
-  # subscribe the user to the list
1755
-  mlmmj-sub -f -c -L /var/spool/mlmmj/$PUBLIC_MAILING_LIST -a $MY_USERNAME@$DOMAIN_NAME
1768
+  update-exim4.conf.template -r
1769
+  update-exim4.conf
1770
+  service exim4 restart
1756
 
1771
 
1757
   mailinglistrule $MY_USERNAME "$PUBLIC_MAILING_LIST" "$PUBLIC_MAILING_LIST"
1772
   mailinglistrule $MY_USERNAME "$PUBLIC_MAILING_LIST" "$PUBLIC_MAILING_LIST"
1758
 
1773