|
2 | 2 |
|
3 | 3 | rewrite of the [old Scripty](https://github.com/tazz4843/scripty) in general |
4 | 4 |
|
5 | | -# selfhosting |
| 5 | +## selfhosting |
6 | 6 |
|
7 | | -should work, officially supported if you're using linux: |
| 7 | +### native binary |
8 | 8 |
|
9 | | -only supports linux, will not support any other OS, especially not windows |
| 9 | +this is what scripty is running on in production and is actively tested |
10 | 10 |
|
11 | | -WSL does not count as linux, use a VM at the very least (although good luck getting GPU passthrough) |
| 11 | +see [the prebuilt binary](./doc/selfhosting-prebuilt.md) |
| 12 | +or [build from source](./doc/selfhosting-from-source.md) guides |
12 | 13 |
|
13 | | -## requirements |
14 | | -* rust: https://rustup.rs/ (nightly) |
15 | | -* postgresql: https://www.postgresql.org/download/ (tested with 15.3) |
16 | | -* redis: https://redis.io/download (tested with 7.0.12) |
17 | | -* mold linker |
18 | | -* clang (for mold) |
19 | | -* pkg-config (libopus dependency) |
20 | | -* stt-service: https://github.com/scripty-bot/stt-service (latest, refer to its README for more info) |
| 14 | +### podman |
21 | 15 |
|
22 | | -### recommended distros |
23 | | -* arch: has the easiest install process for the latest versions of everything, and is what |
24 | | - scripty runs on in production |
25 | | -* debian: has old versions of stuff (that will likely still work) but is still a lot better than the |
26 | | - dumpster fire that is ubuntu |
| 16 | +much less native support given |
27 | 17 |
|
28 | | -#### arch |
29 | | -```shell |
30 | | -sudo pacman -S postgresql redis mold clang base-devel pkgconf |
31 | | -``` |
| 18 | +[see the docs](./doc/selfhosting-podman.md) |
32 | 19 |
|
33 | | -#### all distros |
34 | | -```shell |
35 | | -curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh |
36 | | -``` |
37 | | - |
38 | | -## prepare |
39 | | -### clone repo |
40 | | -```shell |
41 | | -git clone https://github.com/scripty-bot/scripty |
42 | | -cd scripty |
43 | | -``` |
44 | | - |
45 | | -### migrate database |
46 | | -```shell |
47 | | -cargo install sqlx-cli # skip if you already have it |
48 | | -sudo -u postgres createuser scripty -P # will prompt for password |
49 | | -sudo -u postgres createdb -O scripty scripty |
50 | | -cp .env.example .env |
51 | | -nano .env # edit DATABASE_URL to match your URL |
52 | | -cargo sqlx migrate run |
53 | | -``` |
54 | | -#### troubleshooting |
55 | | -double check `pg_hba.conf` and `postgresql.conf` if you get a connection error |
56 | | - |
57 | | -## build |
58 | | -```shell |
59 | | -cargo build --release |
60 | | -# or if you want a more optimized build |
61 | | -# takes about 3.5 minutes on a 13700K vs 45s for the normal build |
62 | | -# probably not worth it for casual users |
63 | | -cargo build --profile release-full |
64 | | -``` |
65 | | - |
66 | | -## configure |
67 | | -```shell |
68 | | -cp config.toml.example config.toml |
69 | | -nano config.toml # edit to your liking |
70 | | -# note stt |
71 | | -``` |
72 | | - |
73 | | -## run |
74 | | -```shell |
75 | | -./target/release/scripty_v2 |
76 | | -``` |
77 | | - |
78 | | -## advanced |
79 | | -### MUSL build |
80 | | -same as above, but build with `--target x86_64-unknown-linux-musl` |
81 | | -and execute `./target/x86_64-unknown-linux-musl/release/scripty_v2` |
82 | | - |
83 | | -on arch also install the `musl` package |
84 | | - |
85 | | -# docker? |
86 | | -https://www.youtube.com/watch?v=PivpCKEiQOQ |
87 | | - |
88 | | -# translations? |
| 20 | +## translations? |
89 | 21 |
|
90 | 22 | <a href="https://hosted.weblate.org/engage/scripty-bot/"> |
91 | 23 | <img src="https://hosted.weblate.org/widgets/scripty-bot/-/open-graph.png" alt="Translation status" /> |
|
0 commit comments