

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    

    
    <title>Installing Previous Releases of Newt &mdash; Apache Mynewt latest documentation</title>
    

    
    
      <link rel="shortcut icon" href="../../_static/mynewt-logo-only-newt32x32.png"/>
    

    

    <link rel="stylesheet" href="../../_static/css/theme.css" type="text/css" />

    
      <link rel="stylesheet" href="../../_static/css/sphinx_theme.css" type="text/css" />
    
      <link rel="stylesheet" href="../../_static/css/bootstrap-3.0.3.min.css" type="text/css" />
    
      <link rel="stylesheet" href="../../_static/css/v2.css" type="text/css" />
    
      <link rel="stylesheet" href="../../_static/css/custom.css" type="text/css" />
    
      <link rel="stylesheet" href="../../_static/css/restructuredtext.css" type="text/css" />
    

    

    <link rel="stylesheet" href="../../_static/css/overrides.css" type="text/css" />
          <link rel="index" title="Index"
                href="../../genindex.html"/>
          <link rel="search" title="Search" href="../../search.html"/>
      <link rel="top" title="Apache Mynewt latest documentation" href="../../index.html"/>
          <link rel="up" title="Install" href="index.html"/>
          <link rel="next" title="Newt Manager Guide" href="../../newtmgr/index.html"/>
          <link rel="prev" title="Install" href="index.html"/> 

    
    <script src="../../_static/js/modernizr.min.js"></script>

    
    <script>
    (function(i, s, o, g, r, a, m) {
	i["GoogleAnalyticsObject"] = r;
	(i[r] =
		i[r] ||
		function() {
			(i[r].q = i[r].q || []).push(arguments);
		}),
		(i[r].l = 1 * new Date());
	(a = s.createElement(o)), (m = s.getElementsByTagName(o)[0]);
	a.async = 1;
	a.src = g;
	m.parentNode.insertBefore(a, m);
})(window, document, "script", "//www.google-analytics.com/analytics.js", "ga");

ga("create", "UA-72162311-1", "auto");
ga("send", "pageview");
</script>
    

  </head>

  <body class="not-front page-documentation" role="document" >
    <div id="wrapper">
      <div class="container">
    <div id="banner" class="row v2-main-banner">
        <a class="logo-cell" href="/">
            <img class="logo" src="../../_static/img/logo.png">
        </a>
        <div class="tagline-cell">
            <h4 class="tagline">An OS to build, deploy and securely manage billions of devices</h4>
        </div>
        <div class="news-cell">
            <div class="well">
                <h4>Latest News:</h4> <a href="/download">Apache Mynewt 1.11.0, Apache NimBLE 1.6.0 </a> released September 7, 2023)
            </div>
        </div>
    </div>
</div>
      
<header>
    <nav id="navbar" class="navbar navbar-inverse" role="navigation">
        <div class="container">
            <!-- Collapsed navigation -->
            <div class="navbar-header">
                <!-- Expander button -->
                <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
                    <span class="sr-only">Toggle navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>

            </div>

            <!-- Expanded navigation -->
            <div class="navbar-collapse collapse">
                <!-- Main navigation -->
                <ul class="nav navbar-nav navbar-right">
                    <li>
                        <a href="/"><i class="fa fa-home" style="font-size: larger;"></i></a>
                    </li>
                    <li class="important">
                        <a href="/quick-start/">Quick Start</a>
                    </li>
                    <li>
                        <a href="/about/">About</a>
                    </li>
                    <li>
                        <a href="/talks/">Talks</a>
                    </li>
                    <li class="active">
                        <a href="/documentation/">Documentation</a>
                    </li>
                    <li>
                        <a href="/download/">Download</a>
                    </li>
                    <li>
                        <a href="/community/">Community</a>
                    </li>
                    <li>
                        <a href="/events/">Events</a>
                    </li>
                </ul>

                <!-- Search, Navigation and Repo links -->
                <ul class="nav navbar-nav navbar-right">
                    
                </ul>
            </div>
        </div>
    </nav>
</header>
      <!-- STARTS MAIN CONTENT -->
      <div id="main-content">
        





<div id="breadcrumb">
  <div class="container">
    <a href="/documentation/">Docs</a> /
    
      <a href="../index.html">Newt Tool Guide</a> /
    
      <a href="index.html">Install</a> /
    
    Installing Previous Releases of Newt
    
  <div class="sourcelink">
    <a href="https://github.com/apache/mynewt-newt/edit/master/docs/install/prev_releases.rst" class="icon icon-github"
           rel="nofollow"> Edit on GitHub</a>
</div>
  </div>
</div>
        <!-- STARTS CONTAINER -->
        <div class="container">
          <!-- STARTS .content -->
          <div id="content" class="row">
            
            <!-- STARTS .container-sidebar -->
<div class="container-sidebar col-xs-12 col-sm-3">
  <div id="docSidebar" class="sticky-container">
    <div role="search" class="sphinx-search">
  <form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
    <input type="text" name="q" placeholder="Search documentation" class="search-documentation" />
    <input type="hidden" name="check_keywords" value="yes" />
    <input type="hidden" name="area" value="default" />
  </form>
</div>
    <!-- Note: only works when deployed -->
<select class="form-control" onchange="if (this.value) window.location.href=this.value">
  <option value="/latest" selected>
    Version: latest
  </option>
  <option value="/v1_11_0" >
    Version: 1.11.0
  </option>
  <option value="/v1_10_0" >
    Version: 1.10.0
  </option>
  <option value="/v1_9_0" >
    Version: 1.9.0
  </option>
  <option value="/v1_8_0" >
    Version: 1.8.0
  </option>
  <option value="/v1_7_0" selected="selected" >
    Version: 1.7.0
  </option>
  <option value="/v1_6_0" >
    Version: 1.6.0
  </option>
  <option value="/v1_5_0" >
    Version: 1.5.0
  </option>
  <option value="/v1_4_0" >
    Version: 1.4.0
  </option>
  <option value="/v1_3_0/os/introduction" >
    Version: 1.3.0
  </option>
  <option value="/v1_2_0/os/introduction" >
    Version: 1.2.0
  </option>
  <option value="/v1_1_0/os/introduction" >
    Version: 1.1.0
  </option>
  <option value="/v1_0_0/os/introduction" >
    Version: 1.0.0
  </option>
  <option value="/v0_9_0/os/introduction" >
    Version: 0.9.0
  </option>
</select>
    <div class="region region-sidebar">
      <div class="docs-menu">
      
        
        
            <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../../index.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../get_started/index.html">Setup &amp; Get Started</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../concepts.html">Concepts</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../tutorials/tutorials.html">Tutorials</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../external_links.html">Third-party Resources</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../os/os_user_guide.html">OS User Guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../network/index.html">BLE User Guide</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="../index.html">Newt Tool Guide</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../newt_operation.html">Theory of Operations</a></li>
<li class="toctree-l2"><a class="reference internal" href="../newt_ops.html">Command Structure</a></li>
<li class="toctree-l2 current"><a class="reference internal" href="index.html">Install</a><ul class="current">
<li class="toctree-l3"><a class="reference internal" href="newt_mac.html">Installing Newt on macOS</a></li>
<li class="toctree-l3"><a class="reference internal" href="newt_linux.html">Installing Newt on Linux</a></li>
<li class="toctree-l3"><a class="reference internal" href="newt_windows.html">Installing Newt on Windows</a></li>
<li class="toctree-l3 current"><a class="current reference internal" href="#">Installing Previous Releases of Newt</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../newtmgr/index.html">Newt Manager Guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../mynewt_faq/index.html">Mynewt FAQ</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../misc/index.html">Appendix</a></li>
</ul>

        
      
      </div>
    </div>
  </div>
  <!-- ENDS STICKY CONTAINER -->
</div>
<!-- ENDS .container-sidebar -->

            <div class="col-xs-12 col-sm-9">
              
                <div class="alert alert-warning">
                  <p>
                    Version 1.7.0 is not the most recent version of the
                    Apache Mynewt documentation. Click <a href="/latest">here</a> to
                    read the latest version.
                  </p>
                </div>
              

              
              <div class="">
                <div class="rst-content">
                  <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
                   <div itemprop="articleBody">
                    
  <div class="section" id="installing-previous-releases-of-newt">
<h1>Installing Previous Releases of Newt<a class="headerlink" href="#installing-previous-releases-of-newt" title="Permalink to this headline">¶</a></h1>
<p>This page shows you how to install previous releases of newt for macOS, Linux, and Windows.</p>
<div class="section" id="macos">
<h2>macOS<a class="headerlink" href="#macos" title="Permalink to this headline">¶</a></h2>
<p>You can install previous releases of newt using <code class="docutils literal notranslate"><span class="pre">mynewt-newt&#64;X.Y</span></code> Homebrew formulas, where X.Y is a version number.</p>
<p>For example, if you want to install newt 1.0, run the following commands:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$ </span>brew<span class="w"> </span>update
<span class="gp">$ </span>brew<span class="w"> </span>install<span class="w"> </span>mynewt-newt@1.0
</pre></div>
</div>
<p><strong>Note:</strong> This is a keg-only installation. newt 1.0 is installed in <a class="reference external" href="mailto:/usr/local/Cellar/mynewt-newt&#37;&#52;&#48;1&#46;0/1&#46;0&#46;0/bin">/usr/local/Cellar/mynewt-newt<span>&#64;</span>1<span>&#46;</span>0/1<span>&#46;</span>0<span>&#46;</span>0/bin</a> but not symlinked
into /usr/local/bin.</p>
<p>If you need this version of newt first in your PATH, run the following commands:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$ </span><span class="nb">echo</span><span class="w"> </span><span class="s1">&#39;export PATH=/usr/local/Cellar/mynewt-newt@1.0/1.0.0/bin:$PATH&#39;</span><span class="w"> </span>&gt;&gt;<span class="w"> </span>~/.bash_profile
<span class="gp">$ </span><span class="nb">source</span><span class="w"> </span>~/.bash_profile
</pre></div>
</div>
<p>You can also manually symlink into /usr/local/bin as follows:</p>
<ol class="arabic">
<li><p>Unlink newt if you have the latest version of newt installed:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$ </span>brew<span class="w"> </span>unlink<span class="w"> </span>mynewt-newt
</pre></div>
</div>
</li>
<li><p>Link <a class="reference external" href="mailto:mynewt-newt&#37;&#52;&#48;1&#46;0">mynewt-newt<span>&#64;</span>1<span>&#46;</span>0</a> into /usr/local/bin:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$ </span>brew<span class="w"> </span>link<span class="w"> </span>-f<span class="w"> </span>mynewt-newt@1.0
</pre></div>
</div>
</li>
</ol>
</div>
<div class="section" id="linux">
<h2>Linux<a class="headerlink" href="#linux" title="Permalink to this headline">¶</a></h2>
<ol class="arabic">
<li><p>Download the binary:</p>
<table class="docutils align-default">
<colgroup>
<col style="width: 7%" />
<col style="width: 93%" />
</colgroup>
<thead>
<tr class="row-odd"><th class="head"><p>Version</p></th>
<th class="head"><p>Download</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>1.0.0</p></td>
<td><p><a class="reference external" href="https://raw.githubusercontent.com/JuulLabs-OSS/binary-releases/master/mynewt-newt-tools_1.0.0/newt_1.0.0-1_amd64.deb">newt_1.0.0-1_amd64.deb</a></p></td>
</tr>
<tr class="row-odd"><td><p>1.1.0</p></td>
<td><p><a class="reference external" href="https://raw.githubusercontent.com/JuulLabs-OSS/binary-releases/master/mynewt-newt-tools_1.1.0/newt_1.1.0-1_amd64.deb">newt_1.1.0-1_amd64.deb</a></p></td>
</tr>
<tr class="row-even"><td><p>1.3.0</p></td>
<td><p><a class="reference external" href="https://raw.githubusercontent.com/JuulLabs-OSS/binary-releases/master/mynewt-newt-tools_1.3.0/newt_1.3.0-1_amd64.deb">newt_1.3.0-1_amd64.deb</a></p></td>
</tr>
<tr class="row-odd"><td><p>1.4.0</p></td>
<td><p><a class="reference external" href="https://raw.githubusercontent.com/JuulLabs-OSS/binary-releases/master/mynewt-newt-tools_1.4.0/newt_1.4.0-1_amd64.deb">newt_1.4.0-1_amd64.deb</a></p></td>
</tr>
<tr class="row-even"><td><p>1.4.1</p></td>
<td><p><a class="reference external" href="https://raw.githubusercontent.com/JuulLabs-OSS/binary-releases/master/mynewt-newt-tools_1.4.1/newt_1.4.1-1_amd64.deb">newt_1.4.1-1_amd64.deb</a></p></td>
</tr>
</tbody>
</table>
</li>
<li><p>Run the <code class="docutils literal notranslate"><span class="pre">sudo</span> <span class="pre">apt-get</span> <span class="pre">remove</span> <span class="pre">newt</span></code> command to remove the the current installation.</p></li>
<li><p>Install the package. For example, run <code class="docutils literal notranslate"><span class="pre">sudo</span> <span class="pre">dpkg</span> <span class="pre">-i</span> <span class="pre">newt_1.0.0-1_amd64.deb</span></code> to install newt 1.0.0</p></li>
</ol>
</div>
<div class="section" id="windows">
<h2>Windows<a class="headerlink" href="#windows" title="Permalink to this headline">¶</a></h2>
<ol class="arabic">
<li><p>Download the binary:</p>
<table class="docutils align-default">
<colgroup>
<col style="width: 6%" />
<col style="width: 94%" />
</colgroup>
<thead>
<tr class="row-odd"><th class="head"><p>Version</p></th>
<th class="head"><p>Download</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>1.1.0</p></td>
<td><p><a class="reference external" href="https://raw.githubusercontent.com/runtimeco/binary-releases/master/mynewt-newt-tools_1.1.0/newt_1_1_0_windows_amd64.tar.gz">newt_1_1_0_windows_amd64.tar.gz</a></p></td>
</tr>
<tr class="row-odd"><td><p>1.3.0</p></td>
<td><p><a class="reference external" href="https://raw.githubusercontent.com/runtimeco/binary-releases/master/mynewt-newt-tools_1.3.0/newt_1_3_0_windows_amd64.tar.gz">newt_3_1_0_windows_amd64.tar.gz</a></p></td>
</tr>
</tbody>
</table>
</li>
<li><p>Extract the file:</p>
<ul>
<li><p>If you previously built newt from the master branch, you can extract the file into your $GOPATH/bin directory. Note: This
overwrites the current newt.exe in the directory and assumes that you are using $GOPATH/bin for your Go applications.</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">tar -xzf newt_1_1_0_windows_amd64.tar.gz -C $GOPATH/bin</span>
</pre></div>
</div>
</li>
<li><p>If you are installing newt for the first time and do not have a Go workspace setup, you can extract into /usr/bin directory:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">tar -xzf newt_1_1_0_windows_amd64.tar.gz -C /usr/bin</span>
</pre></div>
</div>
</li>
</ul>
</li>
</ol>
</div>
</div>


                   </div>
                  </div>
                  
    <div class="rst-footer-buttons row" role="navigation" aria-label="footer navigation">
      
        <a href="../../newtmgr/index.html" class="btn btn-neutral float-right" title="Newt Manager Guide" accesskey="n">Next: Newt Manager Guide <span class="fa fa-arrow-circle-right"></span></a>
      
      
        <a href="index.html" class="btn btn-neutral" title="Install" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous: Install</a>
      
    </div>

                </div>
              </div>
            </div>
            <!-- ENDS CONTENT SECTION -->
          </div>
          <!-- ENDS .content -->
        </div>
      </div>
      <footer>
  <div class="container">
    <div class="row">
      <div class="col-xs-12">
          
              <p class="copyright">Apache Mynewt is available under Apache License, version 2.0.</p>
          
      </div>
      <div class="col-xs-12">
          <div class="logos">
              <img src="../../_static/img/asf_logo_wide_small.png" alt="Apache" title="Apache">
              <small class="footnote">
                Apache Mynewt, Mynewt, Apache, the Apache feather logo, and the Apache Mynewt project logo are either
                registered trademarks or trademarks of the Apache Software Foundation in the United States and other countries.
              </small>
              <a href="">
                <img src="../../_static/img/add_to_slack.png" alt="Slack Icon" title="Join our Slack Community" />
              </a>
          </div>
      </div>
    </div>
  </div>
</footer>
    </div>
    <!-- ENDS #wrapper -->

  

    <script type="text/javascript">
        var DOCUMENTATION_OPTIONS = {
            URL_ROOT:'../../',
            VERSION:'latest',
            COLLAPSE_INDEX:false,
            FILE_SUFFIX:'.html',
            HAS_SOURCE:  true,
            SOURCELINK_SUFFIX: '.txt',
            LINK_SUFFIX: '.html'
        };
    </script>
      <script type="text/javascript" src="../../_static/jquery.js"></script>
      <script type="text/javascript" src="../../_static/underscore.js"></script>
      <script type="text/javascript" src="../../_static/doctools.js"></script>
      <script type="text/javascript" src="../../_static/js/bootstrap-3.0.3.min.js"></script>
      <script type="text/javascript" src="../../_static/js/affix.js"></script>
      <script type="text/javascript" src="../../_static/js/main.js"></script>

   

  </body>
</html>