A Matrix client, for 3ds, with E2EE messaging in progress
matrix-3ds-sdk@4463d9b96b | ||
olm@cb3fe622ae | ||
quirc@71c1eebcb7 | ||
src | ||
.clang-format | ||
.gitignore | ||
.gitmodules | ||
CMakeLists.txt | ||
README.md |
Matrix For 3ds
Roadmap
- E2EE messaging
- Generating Keys
- 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 roomstoo 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
sudo pacman-key --recv BC26F752D25B92CE272E0F44F7FD5492264BB9D0 --keyserver keyserver.ubuntu.com
sudo pacman-key --lsign BC26F752D25B92CE272E0F44F7FD5492264BB9D0
Download and install the keyring
wget https://pkg.devkitpro.org/devkitpro-keyring.pkg.tar.xz
sudo pacman -U devkitpro-keyring.pkg.tar.xz
Add the repo
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
sudo pacman -Sy
Dependencies ! (may add more later...)
pacman -S 3ds-curl 3ds-jansson 3ds-dev
# Note !! This adds to profile.d, make sure to restart your current terminal
Cloning
git clone --recurse-submodules https://gitea.ahur.ac/timoreo/matrix-3ds-client.git && cd matrix-3ds-client
Building
cmake -Bbuild .
cd build
cmake -j$(nproc) --target matrix-3ds-client_3dsx --build .
Then grab the created .3dsx file and enjoy ! (.cia files later)