masqmail

annotate INSTALL @ 51:8a92de5e8907

fixed inverted condition for undefined online_file reported by Juergen Daubert via mailing list the bug was introduced by refactoring (seems we need automated testing)
author meillo@marmaro.de
date Fri, 21 May 2010 14:45:56 +0200
parents
children 941413084f56
rev   line source
meillo@0 1 simple installation instructions, see docs/install.html for more.
meillo@0 2
meillo@0 3 To compile MasqMail you need glib 1.2 (http://www.gtk.org).
meillo@0 4
meillo@0 5 You need a user and a group for masqmail to run, I suggest user
meillo@0 6 'mail' and group 'trusted'. Say:
meillo@0 7
meillo@0 8 groupadd -g 42 trusted
meillo@0 9 useradd -u 42 -g 42 -d / -s /bin/sh -c "Mail Transfer Agent" mail
meillo@0 10
meillo@0 11 If you use other names than 'mail' and 'trusted' use the options
meillo@0 12 described below for configure. The 42 is just a suggestion, you can
meillo@0 13 use any number you like, but preferably one < 100. It does not have
meillo@0 14 to be the same for the user 'mail' and the group 'trusted'.
meillo@0 15
meillo@0 16 Then do:
meillo@0 17
meillo@0 18 ./configure
meillo@0 19 make
meillo@0 20 make install
meillo@0 21
meillo@0 22 Debian:
meillo@0 23 If you compile for Debian, do the configure with at least these options,
meillo@0 24 this makes it compatible with the official debian package:
meillo@0 25 ./configure --with-liblockfile --with-group=mail
meillo@0 26 you do not need the group 'trusted', use 'mail' instead.
meillo@0 27
meillo@0 28 You can also build your own Debian package with
meillo@0 29 dpkg-buildpackage -rfakeroot
meillo@0 30 You need to have fakeroot installed to do this. Or, as root, do:
meillo@0 31 dpkg-buildpackage
meillo@0 32
meillo@0 33 SuSE/Redhat:
meillo@0 34 There are spec files for rpm creation in suse/ or redhat/. You may have to adjust these files.
meillo@0 35
meillo@0 36
meillo@0 37 Sorry, but after that you are not yet finished. For instruction on how
meillo@0 38 to deliver mail using a connection to your ISP see
meillo@0 39 docs/install.html. It is probably a good idea to copy the files
meillo@0 40 docs/*.html to a directory where you can access them with a browser.
meillo@0 41
meillo@0 42 additional options for configure:
meillo@0 43 ---------------------------------
meillo@0 44
meillo@0 45 --with-user=USER sets the user as which MasqMail will run. Default is
meillo@0 46 'mail'. USER has to exist before you 'make install'.
meillo@0 47
meillo@0 48 --with-group=GROUP sets the group as which MasqMail will run. Default
meillo@0 49 is 'trusted'. GROUP has to exist before you 'make install'.
meillo@0 50
meillo@0 51 --with-logdir=LOGDIR sets the directory where MasqMail stores its log
meillo@0 52 files. It will be created if it does not exist. Default is /var/masqmail/.
meillo@0 53
meillo@0 54 --with-spooldir=SPOOLDIR sets the directory where MasqMail stores its
meillo@0 55 spool files. It will be created if it does not exist. Default is
meillo@0 56 /var/spool/masqmail/.
meillo@0 57
meillo@0 58 --with-confdir=CONFDIR sets the default configuration directory to
meillo@0 59 CONFDIR, in case you prefer another location than /etc/masqmail/.
meillo@0 60
meillo@0 61 --enable-auth enables ESMTP AUTH support (disabled by default)
meillo@0 62
meillo@0 63 --disable-pop3 disables pop3 support (enabled by default)
meillo@0 64
meillo@0 65 --enable-maildir enables qmail style Maildir support (disabled by default)
meillo@0 66
meillo@0 67 --enable-ident enable RFC 1413 support. If you have the libident
meillo@0 68 dynamic library installed, this will be linked, otherwise it will be
meillo@0 69 statically linked using the sources included in the package.
meillo@0 70
meillo@0 71 --disable-resolver disable resolver support. Without the resolver functions,
meillo@0 72 masqmail uses only gethostbyname() to resolve DNS names, and you cannot send
meillo@0 73 mail without a smart host. Not recommended. You save 3K at most.
meillo@0 74
meillo@0 75 --disable-smtp-server disable SMTP server support. You may want this if you do
meillo@0 76 not need masqmail to listen. In this case, you cannot use masqmail as a smart
meillo@0 77 host for other hosts on your LAN, you cannot use mail clients that send SMTP,
meillo@0 78 you cannot even use pine. In short, use of this option is discouraged unless
meillo@0 79 your resources are extremely limited.
meillo@0 80
meillo@0 81 --enable-mserver enable online detection by connecting to the mserver
meillo@0 82 (masqdialer system).
meillo@0 83
meillo@0 84 --with-libcryto instead of using the md5 and hmac functions within the package,
meillo@0 85 link dynamically with libcrypto. This applies only if you have pop3 or SMTP
meillo@0 86 AUTH enabled. Makes only sense if your resources are limited and you have
meillo@0 87 libcrypto installed. Untested.
meillo@0 88
meillo@0 89 --with-glib-static link with glib statically. This makes the binary larger
meillo@0 90 by around 30K (i386 architecture), but if masqmail is the only binary using
meillo@0 91 glib, you save some space in total, because you do not need the shared glib
meillo@0 92 library installed.
meillo@0 93
meillo@0 94 --disable-debug disable debugging, setting it on by command line or configuration
meillo@0 95 has no effect. Strongly discouraged, since you miss valuable information if something
meillo@0 96 goes wrong. You save 6K.
meillo@0 97
meillo@0 98 BTW, to get 3K of space, call
meillo@0 99 strip --remove-section=.comment --remove-section=.note --strip-unneeded src/masqmail
meillo@0 100
meillo@0 101 after make install:
meillo@0 102 -------------------
meillo@0 103
meillo@0 104 You can also use these instructions to omit 'make install' if you do
meillo@0 105 not want to use it.
meillo@0 106
meillo@0 107 Check that 'make install' worked correctly. The following command:
meillo@0 108
meillo@0 109 ls -ld /usr/sbin/masqmail /var/masqmail/ /var/spool/masqmail /var/spool/masqmail/input
meillo@0 110
meillo@0 111 should give output similar to
meillo@0 112
meillo@0 113 -rwsr-xr-x 1 root root 86955 Oct 14 14:27 /usr/sbin/masqmail
meillo@0 114 drwxr-xr-x 2 mail trusted 1024 Oct 14 14:29 /var/masqmail/
meillo@0 115 drwxr-xr-x 3 mail trusted 1024 Oct 14 14:27 /var/spool/masqmail
meillo@0 116 drwxr-xr-x 2 mail trusted 1024 Oct 14 18:32 /var/spool/masqmail/input
meillo@0 117 drwxr-xr-x 2 mail trusted 1024 Oct 14 18:32 /var/spool/masqmail/lock
meillo@0 118 drwxr-xr-x 2 mail trusted 1024 Oct 14 18:32 /var/spool/masqmail/popuidl
meillo@0 119
meillo@0 120 (important is the set-user-id bit for /usr/sbin/masqmail and the
meillo@0 121 ownership of all items).
meillo@0 122
meillo@0 123 Use the example configuration files in examples/ to edit your own. The
meillo@0 124 main configuration should go to /etc/masqmail.conf. I recommend to
meillo@0 125 make a directory /etc/masqmail for the *.route amd *.get files.
meillo@0 126
meillo@0 127 The default destination for the executable 'masqmail' is
meillo@0 128 /usr/sbin. Check that it has the set user id bit set. (chmod u+s
meillo@0 129 /usr/sbin/masqmail does no harm in any case).
meillo@0 130
meillo@0 131 If you want to replace sendmail, move your old sendmail binary to
meillo@0 132 another name and make a symbolic link /usr/sbin/sendmail ->
meillo@0 133 /usr/sbin/masqmail.
meillo@0 134
meillo@0 135