﻿<!DOCTYPE html>
<html lang="en">
<head>
  <title>Download Apache Serf Sources</title>
  <!--#include virtual="/includes/header.html" -->
</head>
<body>
  <!-- navbar -->
  <nav class="navbar navbar-inverse navbar-static-top">
    <div class="container">
      <div class="navbar-header">
        <a class="navbar-brand" href="/">Apache Serf &trade;</a>
      </div>
      <div id="navbar" class="navbar-collapse collapse">
        <ul class="nav navbar-nav">
          <li><a href="/">About</a></li>
          <li class="active"><a href="/download">Download</a></li>
          <li><a href="/contribute">Contribute</a></li>
          <li class="dropdown">
            <a class="dropdown-toggle" data-toggle="dropdown" href="#">
              Apache
              <b class="caret"></b>
            </a>
            <ul class="dropdown-menu">
              <li>
                <a href="//www.apache.org/">Apache Home</a>
              </li>
              <li>
                <a href="//www.apache.org/licenses/">Apache License v2.0</a>
              </li>
              <li>
                <a href="//www.apache.org/foundation/sponsorship.html">Donate</a>
              </li>
              <li>
                <a href="//www.apache.org/foundation/thanks.html">Thanks</a>
              </li>
              <li>
                <a href="//www.apache.org/security/">Security</a>
              </li>
            </ul>
          </li>
        </ul>
      </div>
    </div>
  </nav>

  <div class="container">
    <div class="row">
      <div class="col-lg-12">
        <h3>Source tarballs</h3>
        <p>The latest stable release of Serf is <b>1.3.9</b>.</p>
        <table class="table table-striped">
          <thead>
            <tr>
              <th>File</th>
              <th>SHA-1</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td><a href="https://www.apache.org/dist/serf/serf-1.3.9.tar.bz2">serf-1.3.9.tar.bz2</a></td>
              <td>26015c63e3bbb108c1689bf2090e4c26351db674</td>
            </tr>
            <tr>
              <td><a href="https://www.apache.org/dist/serf/serf-1.3.9.zip">serf-1.3.9.zip</a></td>
              <td>801cc1b5737e3a949ebb66e3a10e2572ac76ce0f</td>
            </tr>
          </tbody>
        </table>

        <h3>Verifying the Integrity of Downloaded Files</h3>
        <p>
          It is essential that you verify the integrity of the downloaded
          files using the PGP signatures and/or file checksums.
          Please read <a href="http://www.apache.org/info/verification.html">
          Verifying Apache Software Foundation Releases</a> for more
          information on why you should verify our releases.
        </p>
        <p>
          The PGP signatures can be verified using PGP or GPG. First download
          the <a href="https://people.apache.org/keys/group/serf.asc">KEYS</a>
          as well as the asc signature file for the particular distribution.
          Make sure you get these files from the main distribution directory,
          rather than from a mirror. Then verify the signatures as follows:
        </p>
          <pre>
% gpg --import serf.asc
% gpg --verify serf-1.3.9.tar.bz2.asc</pre>

        <p>
          Alternatively, you can verify at least the SHA1 checksum on the files.
          A unix program called sha1 or sha1sum is included in many unix
          distributions. It is also available as part of GNU Textutils.
        </p>

        <h3>Subversion Checkout</h3>
        <p>
          For those who would like to participate in Serf development,
          you may checkout Serf from the
          <a href="https://svn.apache.org/repos/asf/serf/trunk/">Apache
          Subversion repository</a>:
        </p>
        <pre>% svn checkout https://svn.apache.org/repos/asf/serf/trunk serf-trunk</pre>
        <h3>Releases archive</h3>
        <p>
          All Serf releases are available for download from the
          <a href="https://archive.apache.org/dist/serf/">Apache distribution
          archive</a>.
        </p>
      </div>
    </div>
  </div>

  <!--#include virtual="/includes/footer.html" -->
</body>
</html>
