re-add gopher to URLs, fix markdown
[akkoma] / docs / installation / migrating_to_akkoma.md
1 # Migrating to Akkoma
2
3 **Akkoma does not currently have a stable release, until 3.0, all builds should be considered "develop"**
4
5 ## Why should you migrate?
6
7 aside from actually responsive maintainer(s)? let's lookie here, we've got:
8
9 - custom emoji reactions
10 - misskey markdown (MFM) rendering and posting support
11 - elasticsearch support (because pleroma search is GARBAGE)
12 - latest develop pleroma-fe additions
13 - local-only posting
14 - probably more, this is like 3.5 years of IHBA additions finally compiled
15
16 ## Actually migrating
17
18 Let's say you're very cool and have decided to move to the cooler
19 fork of Pleroma - luckily this isn't very hard.
20
21 You'll need to update the backend, then possibly the frontend, depending
22 on your setup.
23
24 ## From Source
25
26 If you're running the source Pleroma install, you'll need to set the
27 upstream git URL then just rebuild - that'll be:
28
29 ```bash
30 git remote set-url origin https://akkoma.dev/AkkomaGang/akkoma.git/
31 git fetch origin
32 git pull -r
33 ```
34
35 Then compile, migrate and restart as usual.
36
37 ## From OTP
38
39 This will just be setting the update URL -
40
41 ```bash
42 export FLAVOUR=$(arch="$(uname -m)";if [ "$arch" = "x86_64" ];then arch="amd64";elif [ "$arch" = "armv7l" ];then arch="arm";elif [ "$arch" = "aarch64" ];then arch="arm64";else echo "Unsupported arch: $arch">&2;fi;if getconf GNU_LIBC_VERSION>/dev/null;then libc_postfix="";elif [ "$(ldd 2>&1|head -c 9)" = "musl libc" ];then libc_postfix="-musl";elif [ "$(find /lib/libc.musl*|wc -l)" ];then libc_postfix="-musl";else echo "Unsupported libc">&2;fi;echo "$arch$libc_postfix")
43
44 ./bin/pleroma_ctl update --zip-url https://akkoma-updates.s3-website.fr-par.scw.cloud/develop/akkoma-$FLAVOUR.zip
45 ./bin/pleroma_ctl migrate
46 ```
47
48 Then restart. When updating in the future, you canjust use
49
50 ```bash
51 ./bin/pleroma_ctl update --branch develop
52 ```
53
54 ## Frontend changes
55
56 Akkoma comes with a few frontend changes as well as backend ones,
57 your upgrade path here depends on your setup
58
59 ### I just run with the built-in frontend
60
61 You'll need to run a single command,
62
63 ```bash
64 # From source
65 mix pleroma.frontend install pleroma-fe
66 # OTP
67 ./bin/pleroma_ctl frontend install pleroma-fe
68 ```
69
70 ### I've run the mix task to install a frontend
71
72 Hooray, just run it again to update the frontend to the latest build.
73 See above for that command.
74
75 ### I compile the JS from source
76
77 Your situation will likely be unique - you'll need the changes in the
78 [forked pleroma-fe repository](https://akkoma.dev/AkkomaGang/pleroma-fe),
79 and either merge or cherry-pick from there depending on how you've got
80 things.