trentdocs_website/site/mastodon_on_arch/index.html

304 lines
11 KiB
HTML

<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<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">
<link rel="shortcut icon" href="../img/favicon.ico">
<title>Mastodon on Arch - Trent Docs</title>
<link href='https://fonts.googleapis.com/css?family=Lato:400,700|Roboto+Slab:400,700|Inconsolata:400,700' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="../css/theme.css" type="text/css" />
<link rel="stylesheet" href="../css/theme_extra.css" type="text/css" />
<link rel="stylesheet" href="../css/highlight.css">
<script>
// Current page data
var mkdocs_page_name = "Mastodon on Arch";
var mkdocs_page_input_path = "mastodon_on_arch.md";
var mkdocs_page_url = "/mastodon_on_arch/";
</script>
<script src="../js/jquery-2.1.1.min.js"></script>
<script src="../js/modernizr-2.8.3.min.js"></script>
<script type="text/javascript" src="../js/highlight.pack.js"></script>
</head>
<body class="wy-body-for-nav" role="document">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side stickynav">
<div class="wy-side-nav-search">
<a href=".." class="icon icon-home"> Trent Docs</a>
<div role="search">
<form id ="rtd-search-form" class="wy-form" action="../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul class="current">
<li class="toctree-l1">
<a class="" href="..">Home</a>
</li>
<li class="toctree-l1">
<a class="" href="../apt_pinning_artful_aardvark_packages_in_xenial_xerus/">Apt Pinning Artful Aardvark Packages in Xenial Xerus</a>
</li>
<li class="toctree-l1">
<a class="" href="../lxd_container_home_server_networking_for_dummies/">LXD Container Home Server Networking For Dummies</a>
</li>
<li class="toctree-l1">
<a class="" href="../lxd_container_foo/">LXD Container Foo</a>
</li>
<li class="toctree-l1">
<a class="" href="../how_to_reassign_a_static_ip_address_with_dnsmasq/">How To Reassign A Static Ip Address with dnsmasq</a>
</li>
<li class="toctree-l1">
<a class="" href="../serve_and_share_apps_from_your_phone_with_fdroid/">Serve And Share Apps From Your Phone With Fdroid</a>
</li>
<li class="toctree-l1">
<a class="" href="../nspawn/">Nspawn</a>
</li>
<li class="toctree-l1">
<a class="" href="../gentoo_lxd_container/">Gentoo LXD Container</a>
</li>
<li class="toctree-l1 current">
<a class="current" href="./">Mastodon on Arch</a>
<ul class="subnav">
<li class="toctree-l2"><a href="#some-observations-about-installing-mastodon-on-arch">Some Observations About Installing Mastodon on Arch.</a></li>
<ul>
<li><a class="toctree-l3" href="#nginx">Nginx</a></li>
<li><a class="toctree-l3" href="#installing-the-dependancies">Installing the Dependancies</a></li>
<li><a class="toctree-l3" href="#other-observations">Other Observations</a></li>
<li><a class="toctree-l3" href="#the-different-documentation-for-updating">The Different Documentation for Updating</a></li>
</ul>
</ul>
</li>
<li class="toctree-l1">
<a class="" href="../debian_nspawn_container_on_arch_for_testing_apache_configurations/">Debian Nspawn Container On Arch For Testing Apache Configurations</a>
</li>
<li class="toctree-l1">
<a class="" href="../dynamic_cacheing_nginx_reverse_proxy_for_pacman/">Dynamic Cacheing Nginx Reverse Proxy For Pacman</a>
</li>
<li class="toctree-l1">
<a class="" href="../freebsd_jails_on_freenas/">FreeBSD Jails on FreeNAS</a>
</li>
<li class="toctree-l1">
<a class="" href="../arch_redis_nspawn/">Quick Dirty Redis Nspawn Container on Arch Linux</a>
</li>
<li class="toctree-l1">
<a class="" href="../arch_postgresql_nspawn/">Quick Dirty Postgresql Nspawn Container on Arch Linux</a>
</li>
<li class="toctree-l1">
<a class="" href="../misc_tips_troubleshooting/">Misc Tips, Trouble Shooting</a>
</li>
<li class="toctree-l1">
<a class="" href="../self_signed_certs/">Self Signed Certs</a>
</li>
<li class="toctree-l1">
<a class="" href="../selfoss_on_centos7/">Selfoss on Centos7</a>
</li>
<li class="toctree-l1">
<a class="" href="../stupid_package_manager_tricks/">Stupid Package Manager Tricks</a>
</li>
<li class="toctree-l1">
<a class="" href="../stupid_kvm_tricks/">Stupid KVM Tricks</a>
</li>
</ul>
</div>
&nbsp;
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" role="navigation" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="..">Trent Docs</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="..">Docs</a> &raquo;</li>
<li>Mastodon on Arch</li>
<li class="wy-breadcrumbs-aside">
</li>
</ul>
<hr/>
</div>
<div role="main">
<div class="section">
<h1 id="some-observations-about-installing-mastodon-on-arch">Some Observations About Installing Mastodon on Arch.</h1>
<h2 id="nginx">Nginx</h2>
<p>From the <a href="https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Production-guide.md">Production Guide</a>
you can copy the example nginx.conf file to <code>/etc/nginx/sites-enabled/some_arbitrary.conf</code>,
and then add the following to <code>/etc/nginx/nginx.conf</code> in the http section,
this with a fresh install of nginx with the default configuration file.</p>
<pre><code class="bash"># /etc/nginx/nginx.conf
http {
include sites-enabled/*;
}
</code></pre>
<h2 id="installing-the-dependancies">Installing the Dependancies</h2>
<pre><code class="bash">pacman -S certbot nginx libxml2 imagemagick ffmpeg git yarn npm python2 oidentd
</code></pre>
<pre><code class="bash"># I'm guessing here
pacman -S libpqxx libxslt protobuf protobuf-c
</code></pre>
<ul>
<li>I'm assuming base-devel is installed</li>
<li>python2 seems to be required to run <code>yarn install</code> command later on</li>
<li>oidentd seems to be a usable replacement for pident</li>
<li>libpqxx pulls in postgresql-libs</li>
<li>file is already installed</li>
<li>curl is already installed</li>
<li>ruby-build and rbenv are installable from aur</li>
<li>also postgresql and redis unless, those are in another container or whatever.</li>
</ul>
<h2 id="other-observations">Other Observations</h2>
<p>I discovered that between <code>gem install bundler</code> and<br />
<code>bundle install --deployment --without development test</code>,
you have to update your environment, with
<code>eval "$(rbenv init -)"</code>, i.e.</p>
<pre><code class="bash">echo 'eval &quot;$(rbenv init -)&quot;' &gt;&gt; .bashrc
# and then
. ~/.bashrc
</code></pre>
<p>You have to update your environment more than once, during the
installation.</p>
<p>Presumably you don't ever want to delete the <code>~/live/Public/</code> directory
if that is where assets are being stored, but it seems ok to delete
<code>~/live/node_modules</code> and then rerun the <code>yarn install</code> command.</p>
<p>In <code>~/live/.env.production</code>, <code>SINGLE_USER_MODE=false</code> has to be set
to <code>false</code> until at least one user is created, or the web service won't
even start. (Also <code>chmod 755 ~/</code>)</p>
<h2 id="the-different-documentation-for-updating">The Different Documentation for Updating</h2>
<p><a href="https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Updating-Mastodon-Guide.md">Updating Guide</a><br />
I really think that when you update, you're going to want to read through the installation guide,
then compare it to the older version, then read through the upgrade guide. And finally, I think
you want to really comb through the <strong><em>Upgrade notes</em></strong> in the
<a href="https://github.com/tootsuite/mastodon/releases">Release Notes</a></p>
<p><a href="https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Production-guide.md">Installation Guide</a>
(bare metal)<br />
You may also find this
<a href="https://github.com/tootsuite/documentation/blob/dd52795d7d1f5cd68b3cfb763321d3083db9b28b/Running-Mastodon/Production-guide.md">Older Installation Guide</a>
useful for reference.</p>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="../debian_nspawn_container_on_arch_for_testing_apache_configurations/" class="btn btn-neutral float-right" title="Debian Nspawn Container On Arch For Testing Apache Configurations">Next <span class="icon icon-circle-arrow-right"></span></a>
<a href="../gentoo_lxd_container/" class="btn btn-neutral" title="Gentoo LXD Container"><span class="icon icon-circle-arrow-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<!-- Copyright etc -->
</div>
Built with <a href="http://www.mkdocs.org">MkDocs</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<div class="rst-versions" role="note" style="cursor: pointer">
<span class="rst-current-version" data-toggle="rst-current-version">
<span><a href="../gentoo_lxd_container/" style="color: #fcfcfc;">&laquo; Previous</a></span>
<span style="margin-left: 15px"><a href="../debian_nspawn_container_on_arch_for_testing_apache_configurations/" style="color: #fcfcfc">Next &raquo;</a></span>
</span>
</div>
<script>var base_url = '..';</script>
<script src="../js/theme.js"></script>
<script src="../search/require.js"></script>
<script src="../search/search.js"></script>
</body>
</html>