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.25
- Source Code
- For Windows 10 or any 64 bit version of WIndows: alpine-2.25.zip
- For an old version of Windows, such as XP, which is 32 bit: alpine-2.25_32bits.zip
This version is released under the Apache License Version 2.0.
Version 2.25 includes several new features and bug fixes.
- Unix Alpine: New configuration variable ssl-ciphers that allows
users to list the ciphers to use when connecting to a SSL server.
Based on a collaboration with Professor Martin Trusler.
- New hidden feature enable-delete-before-writing
to add support for terminals that need lines to be deleted
before being written. Based on a collaboration with Professor
- Experimental: The instruction to remove the double quotes from the processing of
customized headers existed in pine, but it was removed in alpine. Restoring
old Alpine behavior. See
- Add the capability to record http debug. This is necessary to debug XOAUTH2
authentication, and records sensitive login information. Do not share your
debug file if you use this form of debug.
- Remove the ability to choose between the device and authorize methods
to login to outlook, since the original client-id can only be used
for the device method. One needs a special client-id and client-secret
to use the authorize method in Outlook.
- PC-Alpine only: Some service providers produce access tokens that are
too long to save in the Windows Credentials, so the access tokens will
be split and saved as several pieces. This means that old versions of
Alpine will NOT be able to use saved passwords once this new version of
Alpine is used.
- PC-Alpine: Debug files used to be created with extension .txt1, .txt2, etc.
Rename those files so that they have extension .txt.
- Always follow ‘suppress-asterisks-in-password-prompt’ setting in the
various password prompts. Submitted by Étienne Deparis.
- Use 'alpine -F' instead of 'pine -F' as the browser default pager.
Submitted by Étienne Deparis.
- Introduction of OTHER CMDS menu for the browser/pilot to let
people discover the two new commands: "1" is a toggle that
switches between 1 column and multicolumn mode. The "." command
toggles between hiding or showing hidden files, and the "G"
command to travel between directories. Contributed by Étienne
- Add option -xoauth2-flow to the command line, so that users can specify the
parameters to set up an xoauth2 connection through the command line.
- Alpine deletes, from its internal memory and external cache, passwords
that do not work, even if they were saved by the user.
- New format for saving passwords in the windows credential manager
for PC-Alpine. Upon starting this new version of Alpine the passwords
saved in the credential manager are converted to the new format and
they will not be recognized by old versions of Alpine, but only by
this and newer versions of Alpine.
- Enabled encryption protocols in PC-Alpine are based on those enabled
in the system, unless one is specified directly.
Bugs that have been addressed include:
- The c-client library parses information from an IMAP server during
non-authenticated state which could lead to denial of service.
Reported by Damian Poddebniak from Münster University of Applied
- Memory corruption when alpine searches for a string that is
an incomplete utf8 string in a local folder. This could happen by
chopping a string to make it fit a buffer without regard to its content.
We fix the string so that chopping it does not damage it. Reported
- Crash in the ntlm authenticator when the user name does not include
a domain. Reported and fixed by Anders Skargren.
- When forwarding a message, replacing an attachment might make Alpine
re-attach the original attachment. Reported by Michael Traxler.
- When an attachment is deleted, the saved message with the deleted
attachment contains extra null characters after the end of the
- Tcp and http debug information is not printed unless the default
debug level is set to 1. Print this if requested, regardless of what
the default debug level is.
- When trying to select a folder for saving a message, one can only enter
a subfolder by pressing the ">" command, rather than the normal
navigation by pressing "Return". Reported by Ulf-Dietrich Braunmann.
- Crash when attempting to remove a configuration for a XOAUTH2 server
that has no usernames configured.
- Crash caused by saving (and resaving) XOAUTH2 refresh and access tokens
in PC-Alpine. Reported by Karl Lindauer.
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.25.tar.xz
This page Copyright 2021 © Eduardo Chappa