<!--#include file="header.html" -->

<div class="container">
<div class="row nh">
<div class="col-lg-10 col-lg-offset-1 col-md-12 col-sm-12 col-xs-12">

  <div class="panel panel-primary">
    <div class="panel-heading">Support</div>
    <div class="panel-body">
      <p>You can get support for Buildroot through three main channels:</p>

      <div class="row">
	<div class="col-sm-12">
	  <div class="panel panel-primary">
	    <div class="panel-heading">IRC</div>
	    <div class="panel-body">
	      <div class="row">
		<div class="col-sm-1">
		  <img class="img-responsive" src="images/irc.png" style="max-width:50px; margin-bottom:10px;">
		</div>
		<div class="col-sm-11">
		  <p>The Buildroot IRC channel is <a href="irc://freenode.net/#buildroot">
		      #buildroot</a>, hosted on Freenode. If you do not have an IRC client, you can
		    use the <a href="http://webchat.freenode.net">Freenode web interface</a>.
		    When asking for help on IRC, share relevant logs or pieces of code using a code
		    sharing website.</p>
		</div>
	      </div>
	    </div>
	  </div>
	</div>

	<div class="col-sm-12">
	  <div class="panel panel-primary">
	    <div class="panel-heading">Mailing List Information</div>
	    <div class="panel-body">
	      <div class="row">
		<div class="col-sm-1">
		  <img class="img-responsive" src="images/email.png" style="max-width:50px; margin-bottom:10px;">
		</div>
		<div class="col-sm-11">
		  <p>The <a href="/lists/buildroot/">mailing list</a> is for discussion and
		    development.  You can subscribe by visiting
		    <a href="http://lists.buildroot.org/mailman/listinfo/buildroot">this page</a>.
		    Only subscribers to the Buildroot mailing list are allowed to post
		    to this list.</p>

		  <h4>Search the List Archives</h4>
		  <p>Please search the mailing list archives before asking questions on the mailing
		    list, since there is a good chance someone else has asked the same question
		    before.</p>

		  <form method="get" action="http://buildroot-busybox.2317881.n4.nabble.com/template/NamlServlet.jtp">
		    <input type="text" name="query">
		    <input type="hidden" name="macro" value="search_page">
		    <input type="hidden" name="node" value="2">
		    <input type="hidden" name="sort" value="date">
		    <button type="submit" class="btn btn-default">Submit</button>
		  </form>
		</div>
	      </div>
	    </div>
	  </div>
	</div>

	<div class="col-sm-12">
	  <div class="panel panel-primary">
	    <div class="panel-heading">Bug Tracker</div>
	    <div class="panel-body">
	      <div class="row">
		<div class="col-sm-1">
		  <img class="img-responsive" src="images/bug-buddy.png" style="max-width:50px; margin-bottom:10px;">
		</div>
		<div class="col-sm-11">
		  <p>If you think you found a bug in Buildroot, you can use the
		    <a href="https://bugs.buildroot.org/">Bug Tracker</a> to post your bugs and/or
		    participate to find solutions to existing problems.</p>

		  <p>Note: patches are only accepted through the mailing list.</p>
		</div>
	      </div>
	    </div>
	  </div>
	</div>
      </div>
    </div>
  </div>

</div><!--/.col-sm-10 -->
</div><!--/.row -->
</div>

<!--#include file="footer.html" -->
