forked from continuwuation/continuwuity
73 lines
3 KiB
Markdown
73 lines
3 KiB
Markdown
## Setup
|
|
### Server
|
|
- Use this fork
|
|
- Make sure email works ([config](conduwuit-example.toml#L1958))
|
|
- Or [don't use email](src/api/client/beeper.rs#L63) if testing
|
|
Login still needs an email address, so `!admin users change-email user user@mail.invalid`
|
|
- Set `well_known.client` if using delegation ([config](conduwuit-example.toml#L1860))
|
|
- Route `api.server.name` to c10y if registration is enabled
|
|
|
|
### Android
|
|
1. Get an APK from somewhere
|
|
2. `apktool d com.beeper.android.apk`
|
|
3. Edit `com.beeper.android/smali_classes3/com/beeper/datastore/Environment.smali`
|
|
- Replace these strings with the server url and name (around line 200)
|
|
```smali
|
|
.line 50
|
|
.line 51
|
|
const-string v7, "https://matrix.beeper.com"
|
|
|
|
.line 52
|
|
.line 53
|
|
const-string v8, "https://api.beeper.com"
|
|
|
|
.line 54
|
|
.line 55
|
|
const-string v4, "PROD"
|
|
|
|
.line 56
|
|
.line 57
|
|
const/4 v5, 0x3
|
|
|
|
.line 58
|
|
const-string v6, "beeper.com"
|
|
```
|
|
4. `apktool b com.beeper.android`
|
|
5. `uber-apk-signer -a com.beeper.android/dist/com.beeper.android.apk`
|
|
6. Install `com.beeper.android/dist/com.beeper.android-aligned-debugSigned.apk`
|
|
#### Registration
|
|
Seems to work fine
|
|
#### Login
|
|
7. Open Beeper and log in
|
|
8. When it gets to `Syncing inbox...` wait a few minutes to make sure it's done and then close the app
|
|
9. `adb root`
|
|
10. `adb pull /data/data/com.beeper.android/matrix/account.db{,-shm,-wal} .`
|
|
11. `sqlite3 account.db "INSERT INTO store VALUES ('first_sync_done', 1);"`
|
|
12. `adb push account.db /data/data/com.beeper.android/matrix/account.db`
|
|
13. `adb shell`
|
|
- `ls -l /data/data/com.beeper.android/matrix` and check the file owners
|
|
- `chown u0_a??? /data/data/com.beeper.android/matrix/account.db` change `u0_a???` to match
|
|
- `rm /data/data/com.beeper.android/matrix/account.db-*`
|
|
14. Open Beeper again
|
|
|
|
### Linux
|
|
1. `curl -OL https://api.beeper.com/desktop/download/linux/x64/stable/com.automattic.beeper.desktop`
|
|
2. `chmod +x com.automattic.beeper.desktop`
|
|
3. `./com.automattic.beeper.desktop --appimage-extract`
|
|
4. `find ./squashfs-root/resources/app/build -type f -print0 | xargs -0 sed -i '' -e 's|https://api.beeper.com|https://matrix.server.name|g'`
|
|
5. `squashfs-root/beepertexts`
|
|
6. Log in / register
|
|
7. When it gets to `Syncing inbox...` wait a few minutes to make sure it's done and then close Beeper
|
|
8. `sqlite3 ~/.config/BeeperTexts/account.db "INSERT INTO store VALUES ('first_sync_done', 1);"`
|
|
9. Open it again
|
|
|
|
---
|
|
## Issues
|
|
- The displayname and profile picture is sometimes not shown in the settings (but is fine everywhere else)
|
|
- They usually appear after changing either
|
|
- Changing the email doesn't work yet
|
|
- The app occasionally crashes
|
|
- UIAA is not implemented yet
|
|
- Messages can't be sent if `m.room.power_levels` has `events_default` > powerlevel, even if `m.room.message` would allow it
|
|
- Beeper Desktop is weird with the room timeline
|
|
- Push/background notifications don't work
|