mirror of
https://github.com/TrentSPalmer/trentdocs_website.git
synced 2025-07-30 21:01:37 -07:00
add new file docs/mastodon_on_arch.md
This commit is contained in:
@ -4,6 +4,7 @@ Obviously, the commit history will reflect the time when these documents are wri
|
||||
|
||||
* [Serve And Share Apps From Your Phone With Fdroid](serve_and_share_apps_from_your_phone_with_fdroid.md)
|
||||
* [Nspawn Containers](nspawn.md)
|
||||
* [Mastodon on Arch](mastodon_on_arch.md)
|
||||
* [Debian Nspawn Container On Arch For Testing Apache Configurations](debian_nspawn_container_on_arch_for_testing_apache_configurations.md)
|
||||
* [Dynamic Cacheing Nginx Reverse Proxy For Pacman](dynamic_cacheing_nginx_reverse_proxy_for_pacman.md)
|
||||
* [Quick Dirty Redis Nspawn Container on Arch Linux](arch_redis_nspawn.md)
|
||||
|
59
docs/mastodon_on_arch.md
Normal file
59
docs/mastodon_on_arch.md
Normal file
@ -0,0 +1,59 @@
|
||||
# Some Observations About Installing Mastodon on Arch.
|
||||
|
||||
## Nginx
|
||||
|
||||
From the [Production Guide](https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Production-guide.md)
|
||||
you can copy the example nginx.conf file to `/etc/nginx/sites-enabled/some_arbitrary.conf`,
|
||||
and then add the following to `/etc/nginx/nginx.conf` in the http section,
|
||||
this with a fresh install of nginx with the default configuration file.
|
||||
|
||||
```bash
|
||||
# /etc/nginx/nginx.conf
|
||||
http {
|
||||
include sites-enabled/*;
|
||||
}
|
||||
```
|
||||
|
||||
## Installing the Dependancies
|
||||
|
||||
```bash
|
||||
pacman -S certbot nginx libxml2 imagemagick ffmpeg git yarn npm python2 oidentd
|
||||
```
|
||||
|
||||
```bash
|
||||
# I'm guessing here
|
||||
pacman -S libpqxx libxslt protobuf protobuf-c
|
||||
```
|
||||
|
||||
* I'm assuming base-devel is installed
|
||||
* python2 seems to be required to run `yarn install` command later on
|
||||
* oidentd seems to be a usable replacement for pident
|
||||
* libpqxx pulls in postgresql-libs
|
||||
* file is already installed
|
||||
* curl is already installed
|
||||
* ruby-build and rbenv are installable from aur
|
||||
* also postgresql and redis unless, those are in another container or whatever.
|
||||
|
||||
## Other Observations
|
||||
|
||||
I discovered that between `gem install bundler` and
|
||||
`bundle install --deployment --without development test`,
|
||||
you have to update your environment, with
|
||||
`eval "$(rbenv init -)"`, i.e.
|
||||
|
||||
```bash
|
||||
echo 'eval "$(rbenv init -)"' >> .bashrc
|
||||
# and then
|
||||
. ~/.bashrc
|
||||
```
|
||||
|
||||
You have to update your environment more than once, during the
|
||||
installation.
|
||||
|
||||
Presumably you don't ever want to delete the `~/live/Public/` directory
|
||||
if that is where assets are being stored, but it seems ok to delete
|
||||
`~/live/node_modules` and then rerun the `yarn install` command.
|
||||
|
||||
In `~/live/.env.production`, `SINGLE_USER_MODE=false` has to be set
|
||||
to `false` until at least one user is created, or the web service won't
|
||||
even start. (Also `chmod 755 ~/`)
|
Reference in New Issue
Block a user