88 lines
2.3 KiB
Markdown
88 lines
2.3 KiB
Markdown
|
# Matrix For 3ds
|
||
|
|
||
|
## Roadmap
|
||
|
- [ ] E2EE messaging
|
||
|
- [x] Generating Keys
|
||
|
- [x] Uploading Keys
|
||
|
- [ ] Device Verification
|
||
|
- [ ] QR Code Scan/Display
|
||
|
- [ ] Emoji Display
|
||
|
- [ ] Key Cross-Signing
|
||
|
- [ ] Secure backup
|
||
|
- [ ] Loading
|
||
|
- [ ] Saving (optional)
|
||
|
- [ ] Download device list
|
||
|
- [ ] Olm messages (claimed key, D=>O keysharing)
|
||
|
- [ ] MegOlm Session
|
||
|
- [ ] Basic messaging
|
||
|
- [ ] D<=>D Keysharing
|
||
|
- [ ] Attachment encryption
|
||
|
- [ ] User verification
|
||
|
- [ ] Membership changes
|
||
|
- [ ] Origin Verification
|
||
|
- [ ] Basic UI
|
||
|
- [ ] Room Selection
|
||
|
- [ ] Sending / Receiving basic messages
|
||
|
- [ ] Decoding custom html messages
|
||
|
- [ ] Sending custom html messages (via markdown)
|
||
|
- [ ] Rich Replies (Send/Receive)
|
||
|
- [ ] MXC Attachments (Receive/maybe send)
|
||
|
- [ ] Reaction emotes (Send/Receive)
|
||
|
- [ ] Redact events (& show redacted events)
|
||
|
- [ ] Opening DMs
|
||
|
- [ ] Joining Rooms
|
||
|
- ~~Creating new rooms~~ too complex
|
||
|
- [ ] Presence checks (typing indicator)
|
||
|
- [ ] Read receipts (Send / Receive)
|
||
|
- [ ] Spaces
|
||
|
- [ ] Threading
|
||
|
|
||
|
## How to compile
|
||
|
|
||
|
**Note !! This assumes a base _Arch Linux_ install !**
|
||
|
|
||
|
### Installing Devkitpro dependencies
|
||
|
#### Add the signing keys
|
||
|
```shell
|
||
|
sudo pacman-key --recv BC26F752D25B92CE272E0F44F7FD5492264BB9D0 --keyserver keyserver.ubuntu.com
|
||
|
sudo pacman-key --lsign BC26F752D25B92CE272E0F44F7FD5492264BB9D0
|
||
|
```
|
||
|
#### Download and install the keyring
|
||
|
```shell
|
||
|
wget https://pkg.devkitpro.org/devkitpro-keyring.pkg.tar.xz
|
||
|
sudo pacman -U devkitpro-keyring.pkg.tar.xz
|
||
|
```
|
||
|
#### Add the repo
|
||
|
```shell
|
||
|
echo -e '[dkp-libs]
|
||
|
Server = https://pkg.devkitpro.org/packages' | sudo tee -a /etc/pacman.conf
|
||
|
|
||
|
echo -e '[dkp-linux]
|
||
|
Server = https://pkg.devkitpro.org/packages/linux/$arch/' | sudo tee -a /etc/pacman.conf
|
||
|
```
|
||
|
#### Refresh databases
|
||
|
```shell
|
||
|
sudo pacman -Sy
|
||
|
```
|
||
|
#### Dependencies ! (may add more later...)
|
||
|
```shell
|
||
|
pacman -S 3ds-curl 3ds-jansson 3ds-dev
|
||
|
# Note !! This adds to profile.d, make sure to restart your current terminal
|
||
|
```
|
||
|
|
||
|
|
||
|
### Cloning
|
||
|
```shell
|
||
|
git clone --recurse-submodules https://gitea.ahur.ac/timoreo/matrix-3ds-client.git && cd matrix-3ds-client
|
||
|
```
|
||
|
### Building
|
||
|
```shell
|
||
|
cmake -Bbuild .
|
||
|
cd build
|
||
|
cmake -j$(nproc) --target matrix-3ds-client_3dsx --build .
|
||
|
```
|
||
|
|
||
|
Then grab the created .3dsx file and enjoy ! (.cia files later)
|
||
|
|
||
|
|