The purpose of this page is to distribute releases of Alpine, as well as
to provide users with documentation on Alpine. All documentation needed to
configure Alpine can be found in the binary, and this page may provide
extra documentation. In any case, you are not required, nor encouraged to
access this site to run Alpine. You can run Alpine in your computer
without the need to ever visit this site. All documentation needed to
configure Alpine can be found in the binary, and can be read by either
pressing the "?" command or by pressing "^G" in Alpine.
Your privacy is important to me. When you access this site a log is kept
on the pages you visited. I have access to daily logs which are normally
erased, and if I do not see them, I miss them. I must login to this site
about twice a month, and I take a look at the site logs at that time. The
logs record your IP address, the date and time when you made a request to
the server, the exact request you made, the http status code received by
your server, and the browser you used. When I read the logs, I only look
at which pages people have accessed, and make a mental note about them,
and I do not make any concerted effort to associate an IP address with a
pattern of visits. This information is just for purposes of me knowing
what pages users visited, and nothing more. I have had access to this
information since March 2020, and no information previous to that time is
available to me.
I also find it amusing to read the 404 errors. It shows people looking for
newer versions of Alpine, and other plugins that do not exist. I try not
to link to missing pages, but if I do, please report it to me so that I
can fix it.
While I do not do anything to link you with your visit to this site, I do
not know what my free web site provider does with this information.
Continuing that idea, I do not know what your ISP does with this data
either, and if you contact me, I do not know what my email service
provider or your email service does with that information either. However,
if you contact me, I will use that information to contact you back in case
I need to, and I will only contact you in reference to
the topic of your message. I will never ask you for passwords, or
sensitive information that is not needed to debug an issue you might have
found. I normally keep records of all messages that are sent to me and
those that I send. I sometimes need to access those records to remind me
of past issues and their solutions. If you would like me to delete records
of my conversation with you, I will do so, but you must initiate that
Finally, rest assured that I will never sell or share information about
your visit to this site, or the fact you contacted me, with anyone.
Latest Release Version 2.26
- Source Code
GPG Signature: alpine-2.26.tar.xz.sig.
- MD5: 0943b31c476276e924b02afbfaf98392
- SHA256: c0779c2be6c47d30554854a3e14ef5e36539502b331068851329275898a9baba
- For Windows 10 or any 64 bit version of WIndows:
- MD5: c9dc33c27f05770b9604ce50b220946b
- SHA256: d754c781f84e4034ddbc6e33188deef5b3566bdcd296945cad7ee955a070ae3b
- For an old version of Windows, such as XP, which is 32 bit: alpine-2.26_32bits.zip
- MD5: 499b144858fbba9ceaf1efb4ca6327fc
- SHA256: 507aa9e54d02f4b588a5889e47632c71e796eb2bbb6023915de386f9ee6d0693
In order to check the integrity of your download, you might need my
GPG public key.
This version is released under the Apache License Version 2.0.
Version 2.26 includes several new features and bug fixes.
- Unix version of Alpine (not including OSX). Alpine is built with password
file support by default. If Alpine is built with SMIME support and the
password file does not exist, then Alpine will create it by default and
- In the past Alpine did not recognize images embedded
in an HTML file, so now it does and a link to open them is
given. Additionally, Alpine did not pass these images to an
external browser for display using the external command, and
now it will.
- Support for code_verifier and code_challenge when generating a
refresh token and access token in Gmail and Outlook using the
S256 method and plain method.
- Change the redirect_uri scheme for Gmail, as Google is deprecating the use
of oob. Changed to http://localhost. Users are supposed to enter the URL
they see in their browser in place of the code.
- Some servers do not allow the Drafts folder to be removed, even when
it is empty. Alpine, however, assumes that if the folder exists, it
must contain a draft message. This joint collaboration with Thomas
Uhle modifies alpine to not to attempt to continue a draft message if
the draft folder is empty.
- Contributions by Thomas Uhle:
- Add support to the LDAP attribute "userCertificate";
- Move voiceMailTelephoneNumber from the TCL side to ldap_translate;
- XOAUTH2 state generator changes format specifier from %x to %02x;
- Web Alpine will not attempt to continue a postponed message if the
postponed-msgs folder is empty.
- Improvements to the screen that allows a user to select the client-id when
a user attempts to login to a server and more than one client-id
is available for that server. In this case additional information is
given: The method to use (device or authorize), a user id that uses the
suggested client-id or a report that the client-id has not been used.
- To protect the privacy of a user, the message-id of a message will be
generated using the domain in the From field of the message.
- When saving to a folder in the unix format, Alpine parses the
destination folder to assign uids to all messages in the folder. When
the destination folder is large this could significantly slow down
alpine. Fix based on a patch submitted to the alpine-info list by
- Add the LOGOUT command to the list of commands that can be
automatically interrupted in case the connection becomes unstable
during that command and Alpine times out its connection to the server.
- If new mail has arrived when a user is closing a mailbox, Alpine will
also announce how many new messages have arrived. Suggested by Chime Hart.
- When an invitation does not have a timezone in the date of the event,
but the date is in GMT, adjust the date to local time.
Bugs that have been addressed include:
- Crash when invoking Alpine from the command line and an attempt to authorize
alpine to use XOAUTH2 is done. Alpine crashes because of a missing optional
parameter -xoauth2-flow and because no screen has been configured yet. Reported
by Baron Fujimoto.
failure connecting to the external server.
- Alpine might delete all passwords from the password file if the
password file is not unlocked by cancellation, or the authentication
for an XOAUTH2 server is cancelled, or the password of an account
- When the personal name of an address is encoded, and the personal name
is surrounded by quotes, these are not removed by Alpine at the time
to offer to take an address from a message to the addressbook. Reported
by David Prager Branner.
- If a user configures the sendmail-path variable, and does not use a
global smtp-server, then Alpine will use the sendmail-path even when
the user configured a smtp-server for a role. Reported by Gregory
- Crash in PC-Alpine when creating a mail collection and no username is
indicated in the server path. Reported by Sandy Schuman.
- Crash in Alpine when running a filter that moves deleted messages the
INBOX in a Gmail account. Reported by Jyrki Voutilainen.
In order to compile this source code you need OpenSSL version 1.0.0c or
later. In addition, Alpine can be compiled with recent versions of LibreSSL.
In order to decompress use the command
tar -Jxf alpine-2.26.tar.xz
This page Copyright 2022 © Eduardo Chappa