[129077] trunk/dports/mail/sympa/Portfile
Revision: 129077 https://trac.macports.org/changeset/129077 Author: devans@macports.org Date: 2014-12-04 16:04:11 -0800 (Thu, 04 Dec 2014) Log Message: ----------- sympa: add mode line and reformat, white space only. Modified Paths: -------------- trunk/dports/mail/sympa/Portfile Modified: trunk/dports/mail/sympa/Portfile =================================================================== --- trunk/dports/mail/sympa/Portfile 2014-12-04 23:45:09 UTC (rev 129076) +++ trunk/dports/mail/sympa/Portfile 2014-12-05 00:04:11 UTC (rev 129077) @@ -1,99 +1,100 @@ +# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4 # $Id$ -PortSystem 1.0 +PortSystem 1.0 -name sympa -version 5.4.7 -revision 2 -categories mail -license GPL-2 -maintainers nomaintainer -platforms darwin +name sympa +version 5.4.7 +revision 2 +categories mail +license GPL-2 +maintainers nomaintainer +platforms darwin -description Sympa - Mailing List Manager with LDAP support +description Sympa - Mailing List Manager with LDAP support -long_description An advanced perl-based mail list manager with a web interface \ - that supports LDAP authentication and LDAP extraction of \ - list subscribers and owners. +long_description An advanced perl-based mail list manager with a web interface \ + that supports LDAP authentication and LDAP extraction of \ + list subscribers and owners. -homepage http://www.sympa.org +homepage http://www.sympa.org -master_sites http://www.sympa.org/distribution/ \ - http://www.sympa.org/distribution/old/ +master_sites http://www.sympa.org/distribution/ \ + http://www.sympa.org/distribution/old/ -checksums md5 74fb5b0c972919a2813cd6aca2d9224f -default_variants +server +checksums md5 74fb5b0c972919a2813cd6aca2d9224f +default_variants +server -patchfiles patch-configure.in \ - patch-Makefile.in \ - patch-sympa.generic \ - patch-src_alias_manager.pl +patchfiles patch-configure.in \ + patch-Makefile.in \ + patch-sympa.generic \ + patch-src_alias_manager.pl -depends_lib path:bin/mysql_config5:mysql5 \ - port:apache2 \ - port:mod_fcgid \ - port:openssl \ - port:postfix \ - port:p5.12-libwww-perl \ - port:p5.12-archive-zip \ - port:p5.12-convert-asn1 \ - port:p5.12-pathtools \ - port:p5.12-dbi \ - port:p5.12-dbd-mysql \ - port:p5.12-mailtools \ - port:p5.12-io-stringy \ - port:p5.12-mime-tools \ - port:p5.12-mime-charset \ - port:p5.12-mime-encwords \ - port:p5.12-crypt-openssl-x509 \ - port:p5.12-fcgi \ - port:p5.12-libintl-perl \ - port:p5.12-template-toolkit \ - port:p5.12-crypt-ciphersaber \ - port:p5.12-mhonarc \ - port:p5.12-regexp-common \ - port:p5.12-xml-libxml \ - port:p5.12-io-socket-ssl \ - port:p5.12-soap-lite \ - port:p5.12-perl-ldap \ - port:p5.12-html-format \ - port:p5.12-html-stripscripts-parser +depends_lib path:bin/mysql_config5:mysql5 \ + port:apache2 \ + port:mod_fcgid \ + port:openssl \ + port:postfix \ + port:p5.12-libwww-perl \ + port:p5.12-archive-zip \ + port:p5.12-convert-asn1 \ + port:p5.12-pathtools \ + port:p5.12-dbi \ + port:p5.12-dbd-mysql \ + port:p5.12-mailtools \ + port:p5.12-io-stringy \ + port:p5.12-mime-tools \ + port:p5.12-mime-charset \ + port:p5.12-mime-encwords \ + port:p5.12-crypt-openssl-x509 \ + port:p5.12-fcgi \ + port:p5.12-libintl-perl \ + port:p5.12-template-toolkit \ + port:p5.12-crypt-ciphersaber \ + port:p5.12-mhonarc \ + port:p5.12-regexp-common \ + port:p5.12-xml-libxml \ + port:p5.12-io-socket-ssl \ + port:p5.12-soap-lite \ + port:p5.12-perl-ldap \ + port:p5.12-html-format \ + port:p5.12-html-stripscripts-parser -configure.args --with-bindir=${prefix}/bin/${name} \ - --with-sbindir=${prefix}/bin/${name} \ - --with-libexecdir=${prefix}/libexec/${name} \ - --with-libdir=${prefix}/lib/${name} \ +configure.args --with-bindir=${prefix}/bin/${name} \ + --with-sbindir=${prefix}/bin/${name} \ + --with-libexecdir=${prefix}/libexec/${name} \ + --with-libdir=${prefix}/lib/${name} \ \ - --with-cgidir=${prefix}/share/${name}/cgi-bin \ - --with-localedir=${prefix}/share/locale \ - --with-scriptdir=${prefix}/share/${name}/script \ - --with-sampledir=${prefix}/share/${name}/sample \ - --with-docdir=${prefix}/share/doc/${name} \ - --with-datadir=${prefix}/share/${name} \ + --with-cgidir=${prefix}/share/${name}/cgi-bin \ + --with-localedir=${prefix}/share/locale \ + --with-scriptdir=${prefix}/share/${name}/script \ + --with-sampledir=${prefix}/share/${name}/sample \ + --with-docdir=${prefix}/share/doc/${name} \ + --with-datadir=${prefix}/share/${name} \ \ - --with-confdir=${prefix}/etc/${name} \ - --with-etcdir=${prefix}/etc/${name} \ - --with-initdir=${prefix}/share/${name} \ + --with-confdir=${prefix}/etc/${name} \ + --with-etcdir=${prefix}/etc/${name} \ + --with-initdir=${prefix}/share/${name} \ \ - --with-expldir=${prefix}/var/${name}/expl \ - --with-piddir=${prefix}/var/${name} \ - --with-lockdir=${prefix}/var/${name}/lock \ - --with-spooldir=${prefix}/var/${name}/spool \ + --with-expldir=${prefix}/var/${name}/expl \ + --with-piddir=${prefix}/var/${name} \ + --with-lockdir=${prefix}/var/${name}/lock \ + --with-spooldir=${prefix}/var/${name}/spool \ \ - --with-mandir=${prefix}/man \ - --with-perl=${prefix}/bin/perl5.12 \ - --with-openssl=${prefix}/bin/openssl \ + --with-mandir=${prefix}/man \ + --with-perl=${prefix}/bin/perl5.12 \ + --with-openssl=${prefix}/bin/openssl \ \ - --with-user=www \ - --with-group=www \ - --with-sendmail_aliases=${prefix}/etc/${name}/sympa_aliases \ - --with-virtual_aliases=${prefix}/etc/${name}/sympa_virtual \ - --with-newaliases=${prefix}/bin/newaliases \ - --with-postmap=${prefix}/sbin/postmap + --with-user=www \ + --with-group=www \ + --with-sendmail_aliases=${prefix}/etc/${name}/sympa_aliases \ + --with-virtual_aliases=${prefix}/etc/${name}/sympa_virtual \ + --with-newaliases=${prefix}/bin/newaliases \ + --with-postmap=${prefix}/sbin/postmap variant postgresql { - depends_lib-append port:p5.12-dbd-pg - depends_lib-delete port:p5.12-dbd-mysql + depends_lib-append port:p5.12-dbd-pg + depends_lib-delete port:p5.12-dbd-mysql } variant server { @@ -109,89 +110,89 @@ pre-destroot { # Use sympa.generic startup script and fix paths - reinplace "s|PATH=/usr/bin:/bin:/usr/sbin:/sbin|PATH=${prefix}/bin:${prefix}/sbin:/usr/bin:/bin:/usr/sbin:/sbin|g" \ - "${worksrcpath}/src/etc/script/sympa.generic" + reinplace "s|PATH=/usr/bin:/bin:/usr/sbin:/sbin|PATH=${prefix}/bin:${prefix}/sbin:/usr/bin:/bin:/usr/sbin:/sbin|g" \ + "${worksrcpath}/src/etc/script/sympa.generic" - reinplace "s|/dist/sympa/run|${prefix}/var/${name}|g" \ - "${worksrcpath}/src/etc/script/sympa.generic" + reinplace "s|/dist/sympa/run|${prefix}/var/${name}|g" \ + "${worksrcpath}/src/etc/script/sympa.generic" - system "mv ${worksrcpath}/src/etc/script/sympa.generic ${worksrcpath}/src/etc/script/sympa" + system "mv ${worksrcpath}/src/etc/script/sympa.generic ${worksrcpath}/src/etc/script/sympa" } post-destroot { # Flag wwsympa.fcgi as executable - system "chmod ug+x ${destroot}${prefix}/share/sympa/cgi-bin/wwsympa.fcgi" + system "chmod ug+x ${destroot}${prefix}/share/sympa/cgi-bin/wwsympa.fcgi" # Create empty directories named in sympa.conf & wwsympa.conf not created by Sympa install - xinstall -m 755 -d ${destroot}${prefix}/var/${name}/expl - xinstall -m 755 -d ${destroot}${prefix}/var/log/${name} + xinstall -m 755 -d ${destroot}${prefix}/var/${name}/expl + xinstall -m 755 -d ${destroot}${prefix}/var/log/${name} # Incoming spool directories - xinstall -m 755 -d ${destroot}${prefix}/var/${name}/spool/msg - xinstall -m 755 -d ${destroot}${prefix}/var/${name}/spool/bounce + xinstall -m 755 -d ${destroot}${prefix}/var/${name}/spool/msg + xinstall -m 755 -d ${destroot}${prefix}/var/${name}/spool/bounce # Storage directories - xinstall -m 755 -d ${destroot}${prefix}/var/${name}/arc - xinstall -m 755 -d ${destroot}${prefix}/var/${name}/bounce + xinstall -m 755 -d ${destroot}${prefix}/var/${name}/arc + xinstall -m 755 -d ${destroot}${prefix}/var/${name}/bounce # Create sympa.log and sympa_aliases files - system "touch ${destroot}${prefix}/var/log/${name}/${name}.log" - system "touch ${destroot}${prefix}/etc/${name}/sympa_aliases" - system "chown www:www ${destroot}${prefix}/bin/${name}/*" - system "chown www:www ${destroot}${prefix}/etc/${name}/*" + system "touch ${destroot}${prefix}/var/log/${name}/${name}.log" + system "touch ${destroot}${prefix}/etc/${name}/sympa_aliases" + system "chown www:www ${destroot}${prefix}/bin/${name}/*" + system "chown www:www ${destroot}${prefix}/etc/${name}/*" # Fix alias_manager.pl since the alias_wrapper seems not to work - reinplace "s|${prefix}/bin/${name}/aliaswrapper|${prefix}/bin/newaliases|g" \ - "${destroot}${prefix}/bin/${name}/alias_manager.pl" + reinplace "s|${prefix}/bin/${name}/aliaswrapper|${prefix}/bin/newaliases|g" \ + "${destroot}${prefix}/bin/${name}/alias_manager.pl" # Keep these empty directories - destroot.keepdirs \ - ${destroot}${prefix}/var/${name}/expl \ - ${destroot}${prefix}/var/log/${name} \ - ${destroot}${prefix}/var/${name}/spool/msg \ - ${destroot}${prefix}/var/${name}/spool/bounce \ - ${destroot}${prefix}/var/${name}/arc \ - ${destroot}${prefix}/var/${name}/bounce + destroot.keepdirs \ + ${destroot}${prefix}/var/${name}/expl \ + ${destroot}${prefix}/var/log/${name} \ + ${destroot}${prefix}/var/${name}/spool/msg \ + ${destroot}${prefix}/var/${name}/spool/bounce \ + ${destroot}${prefix}/var/${name}/arc \ + ${destroot}${prefix}/var/${name}/bounce # Fix permissions for arc directory - system "chown www:www ${destroot}${prefix}/var/${name}/arc" + system "chown www:www ${destroot}${prefix}/var/${name}/arc" # Set sympa.conf variables (this file uses tabs as separators) - reinplace "s|#openssl /usr/local/bin/openssl|openssl ${prefix}/bin/openssl|g" \ - "${destroot}${prefix}/etc/sympa/sympa.conf" + reinplace "s|#openssl /usr/local/bin/openssl|openssl ${prefix}/bin/openssl|g" \ + "${destroot}${prefix}/etc/sympa/sympa.conf" - reinplace "s|#db_type mysql|db_type mysql|g" \ - "${destroot}${prefix}/etc/sympa/sympa.conf" + reinplace "s|#db_type mysql|db_type mysql|g" \ + "${destroot}${prefix}/etc/sympa/sympa.conf" - reinplace "s|#db_name sympa|db_name sympa|g" \ - "${destroot}${prefix}/etc/sympa/sympa.conf" + reinplace "s|#db_name sympa|db_name sympa|g" \ + "${destroot}${prefix}/etc/sympa/sympa.conf" - reinplace "s|#db_host localhost|db_host localhost|g" \ - "${destroot}${prefix}/etc/sympa/sympa.conf" + reinplace "s|#db_host localhost|db_host localhost|g" \ + "${destroot}${prefix}/etc/sympa/sympa.conf" - reinplace "s|#db_user sympa|db_user sympa|g" \ - "${destroot}${prefix}/etc/sympa/sympa.conf" + reinplace "s|#db_user sympa|db_user sympa|g" \ + "${destroot}${prefix}/etc/sympa/sympa.conf" - system "echo 'db_options mysql_socket=${prefix}/var/run/mysql5/mysqld.sock' >> ${destroot}${prefix}/etc/sympa/sympa.conf" + system "echo 'db_options mysql_socket=${prefix}/var/run/mysql5/mysqld.sock' >> ${destroot}${prefix}/etc/sympa/sympa.conf" # Set wwsympa.conf variables - reinplace "s|${prefix}/arc|${prefix}/var/${name}/arc|g" \ - "${destroot}${prefix}/etc/${name}/wwsympa.conf" + reinplace "s|${prefix}/arc|${prefix}/var/${name}/arc|g" \ + "${destroot}${prefix}/etc/${name}/wwsympa.conf" - reinplace "s|${prefix}/bounce|${prefix}/var/${name}/bounce|g" \ - "${destroot}${prefix}/etc/${name}/wwsympa.conf" + reinplace "s|${prefix}/bounce|${prefix}/var/${name}/bounce|g" \ + "${destroot}${prefix}/etc/${name}/wwsympa.conf" - reinplace "s|/usr/bin/mhonarc|${prefix}/bin/mhonarc|g" \ - "${destroot}${prefix}/etc/${name}/wwsympa.conf" + reinplace "s|/usr/bin/mhonarc|${prefix}/bin/mhonarc|g" \ + "${destroot}${prefix}/etc/${name}/wwsympa.conf" - reinplace "s|#openssl /usr/local/bin/openssl|openssl ${prefix}/bin/openssl|g" \ - "${destroot}${prefix}/etc/${name}/wwsympa.conf" + reinplace "s|#openssl /usr/local/bin/openssl|openssl ${prefix}/bin/openssl|g" \ + "${destroot}${prefix}/etc/${name}/wwsympa.conf" } post-activate { # get rid of .turd files created by destroot.keepdirs because they cause problems in Sympa queues - system "rm ${prefix}/var/${name}/spool/msg/.turd_sympa" - system "rm ${prefix}/var/${name}/spool/bounce/.turd_sympa" - system "rm ${prefix}/var/${name}/bounce/.turd_sympa" - system "rm ${prefix}/var/${name}/arc/.turd_sympa" + system "rm ${prefix}/var/${name}/spool/msg/.turd_sympa" + system "rm ${prefix}/var/${name}/spool/bounce/.turd_sympa" + system "rm ${prefix}/var/${name}/bounce/.turd_sympa" + system "rm ${prefix}/var/${name}/arc/.turd_sympa" ui_msg "\n **** To complete Sympa installation **** @@ -201,104 +202,104 @@ 1) Setup MySQL and prepare it for Sympa (for PostgreSQL, see documentation) Configure MySQL (new MySQL installs) - sudo -u mysql ${prefix}/lib/mysql5/bin/mysql_install_db + sudo -u mysql ${prefix}/lib/mysql5/bin/mysql_install_db Start MySQL: - sudo ${prefix}/share/mysql5/mysql/mysql.server start + sudo ${prefix}/share/mysql5/mysql/mysql.server start Set MySQL to start at system boot (optional) - sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist + sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist Set a MySQL root password: - Follow the instructions that were given after you executed 'mysql_install_db' above. + Follow the instructions that were given after you executed 'mysql_install_db' above. Create a Sympa MySQL user ... - mysql5 -u root -p (login with new root password when prompted) - mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on sympa.* to sympa@localhost; - mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on sympa.* to sympa; - mysql> quit; + mysql5 -u root -p (login with new root password when prompted) + mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on sympa.* to sympa@localhost; + mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on sympa.* to sympa; + mysql> quit; Create the Sympa database: - cat ${prefix}/share/sympa/script/create_db.mysql | mysql5 -u root -p sympa + cat ${prefix}/share/sympa/script/create_db.mysql | mysql5 -u root -p sympa Verify Sympa DB: - mysql5 -u root -p - mysql> use sympa; - mysql> show tables; - mysql> exit; + mysql5 -u root -p + mysql> use sympa; + mysql> show tables; + mysql> exit; NOTE: MySQL must start before Apache because of wwsympa.fcgi 2) Setup Apache 2 & FastCGI - cd ${prefix}/apache2/conf - sudo cp httpd.conf.sample httpd.conf + cd ${prefix}/apache2/conf + sudo cp httpd.conf.sample httpd.conf Modify the ${prefix}/apache2/conf/httpd.conf file Add directives and ScriptAlias: - IPCCommTimeout 120 - MaxProcessCount 2 + IPCCommTimeout 120 + MaxProcessCount 2 - <Location /sympa> - SetHandler fcgid-script - </Location> + <Location /sympa> + SetHandler fcgid-script + </Location> - ScriptAlias /sympa ${prefix}/share/sympa/cgi-bin/wwsympa.fcgi + ScriptAlias /sympa ${prefix}/share/sympa/cgi-bin/wwsympa.fcgi Start Apache 2: (Turn off personal web sharing first!) - sudo launchctl load -w /Library/LaunchDaemons/org.macports.apache2.plist + sudo launchctl load -w /Library/LaunchDaemons/org.macports.apache2.plist NOTE: The Apache user and group must be the same as the file wwsympa.fcgi. - Sympa files are owned by user/group 'www' so the apache user and group - must be www unless you chown Sympa files to something else. + Sympa files are owned by user/group 'www' so the apache user and group + must be www unless you chown Sympa files to something else. 3) Enable Postfix (not covered), setup Sympa robot aliases, & list alias config Robot aliases: - sympa: \"| ${prefix}/bin/sympa/queue sympa@mydomain.org\" - listmaster: \"| ${prefix}/bin/sympa/queue listmaster@mydomain.org\" - bounce+*: \"| ${prefix}/bin/sympa/bouncequeue sympa@mydomain.org\" - sympa-request: <sympa administrator's address> - sympa-owner: <sympa administrator's address> + sympa: \"| ${prefix}/bin/sympa/queue sympa@mydomain.org\" + listmaster: \"| ${prefix}/bin/sympa/queue listmaster@mydomain.org\" + bounce+*: \"| ${prefix}/bin/sympa/bouncequeue sympa@mydomain.org\" + sympa-request: <sympa administrator's address> + sympa-owner: <sympa administrator's address> Activate the robot aliases with the command \"sudo newaliases\" List alias config: (automatic list aliases) Add these statements to /etc/postfix/main.cf - alias_maps = hash:/etc/aliases,hash:${prefix}/etc/${name}/sympa_aliases - alias_database = hash:/etc/aliases,hash:${prefix}/etc/${name}/sympa_aliases + alias_maps = hash:/etc/aliases,hash:${prefix}/etc/${name}/sympa_aliases + alias_database = hash:/etc/aliases,hash:${prefix}/etc/${name}/sympa_aliases Activate the new configuration with the command \"sudo postfix reload\" 4) Edit ${prefix}/etc/sympa/sympa.conf variables - domain - listmaster - email - db_password - wwsympa_url + domain + listmaster + email + db_password + wwsympa_url 5) Edit ${prefix}/etc/sympa/wwsympa.conf variables - title - default_home + title + default_home 6) Add a statement to OS X's syslog.conf file to support Sympa log files - local1.* ${prefix}/var/log/sympa/sympa.log + local1.* ${prefix}/var/log/sympa/sympa.log 7) Start the Sympa daemon - sudo launchctl load -w /Library/LaunchDaemons/org.macports.sympa.plist + sudo launchctl load -w /Library/LaunchDaemons/org.macports.sympa.plist 8) Have Sympa generate a listmaster password - Go to http://localhost/sympa. Click the \"First login ?\" link, then - enter the listmaster address you set in the sympa.conf file, and - click \"Send me my password\" and retrieve the password in your inbox. + Go to http://localhost/sympa. Click the \"First login ?\" link, then + enter the listmaster address you set in the sympa.conf file, and + click \"Send me my password\" and retrieve the password in your inbox. 9) Login to WWSympa at http://localhost/sympa with the listmaster address
participants (1)
-
devans@macports.org