From Segfault
Jump to navigation Jump to search


Install the Alpine Email Program from source:

sudo apt-get install libpam-dev libssl-dev libncurses-dev

git clone alpine-git

cd alpine-git
./configure --prefix=/opt/alpine --disable-mouse --disable-keyboard-lock --without-krb5 \
    --without-ldap --without-tcl --with-ssl --with-default-dead-letter-folder=.dead.letter
sudo make install


We can configure alpine via the builtin SETUP or by editing .pinerc.


  • start Alpine
  • press S for SETUP, L for COLLECTION LISTS.
    • That way we can have more than one account, e.g. your local mbox, your imap inbox and so on
  • press A for ADD, type in a Nickname
  • Servername:"alice"
  • Path: while this depends on the namespace of your IMAP server, in many cases that will be INBOX
  • View: again, this depends on your IMAP server. I'll enter *, see the builtin help for details.
  • press !^X to save
  • press $ and then U to move your new collection to the top - we want to use it as our default inbox from now on
  • press E to EXIT the COLLECTION LIST menu.
  • press S, then C for CONFIG
  • personal-name: John Doe
  • smtp-server:"alice"
  • inbox-path: {"alice"}INBOX
  • default-fcc: {"alice"}INBOX.Sent
  • postponed-folder: {"alice"}INBOX.Drafts
  • specify a witty signature-file
  • I prefer enabling single-column-folder-list, enable-full-header-cmd and no-enable-arrow-navigation-relaxed - YMMV


Fire up your editor of choice and modify at least the following values:

 personal-name=Alice P.
 postponed-folder={"alice"}INBOX.Drafts {"alice"}INBOX.[*],"alice"

TLS Notes

  • /novalidate-cert is only needed, when using self-signed certs. While this might be needed in your case (certificates from one of the big CAs are expensive!), be sure to verify the certificate and its fingerprint at least once!
  • If a PEM encoded CA-certifcate is available (ask your ISP!):
 openssl s_client -connect -CAfile CA-cert.pem
 openssl s_client -connect
 openssl x509 -fingerprint -noout -in cert.pem      # to print the fingerprint of cert.pem
  • To verify the server's cert with the CA certificate (ask your ISP!):
 openssl verify -CAfile CA-cert.pem server-cert.pem


Try Setting XOAUTH2 in Outlook and set:


And with a few more tweaks[1]

  • Set "Customized headers" to "From: User <>" (just like in the Outlook interface)
  • Enable "8bit ESMTP Negotiation"
  • Disable "Use Sender Instead of X-X-Sender"


Note: Pine has been discontinued in 2006![2]

$ sudo apt-get install libpam-dev libssl-dev libncurses-dev
$ wget 
$ openssl md5 pine.tar.bz2 | grep 39ca07b3d305b4cd0d6aaf4585123275
MD5(pine.tar.bz2)= 39ca07b3d305b4cd0d6aaf4585123275

Unpack & build:

bzip2 -dc pine.tar.bz2 | tar -xf -
cd pine-*
./build SSLDIR=/usr/lib/ssl SSLCERTS=/etc/ssl/certs SSLINCLUDE=/usr/include/openssl lnp  # Linux,   +PAM,SSL
./build SSLDIR=/usr/lib/ssl SSLCERTS=/etc/ssl/certs SSLINCLUDE=/usr/include/openssl gs5  # Solaris, +SSL
./build CC=/usr/sfw/bin/gcc   SSLDIR=/usr/lib/ssl   SSLINCLUDE=/usr/include/openssl      # Solaris, +SSL,
                                                                                         # gcc instead of SUNWspro
$ ldd bin/pine | grep -E 'pam|ssl|curs' => /lib/ (0xb7f42000) => /lib/ (0xb7f3a000) => /usr/lib/i686/cmov/ (0xb7ef7000)

$ sudo cp bin/pine /usr/local/bin/
$ sudo chown root:root /usr/local/bin/pine
  • Be sure to specify ./build first, then pass the environment variables, then the target - order matters here!
  • SSLDIR is 'openssl version -d'
  • SSLINCLUDE and SSLCERTS may vary from system to system :(
  • SSLCERTS is needed to verify the authenticity of the server's certificates


  • NULL ice in paint_index_line: reg index[3]