Watch
1
0
Fork
You've already forked mautrix-signal
0
mirror of https://github.com/mautrix/signal.git synced 2026-08-22 03:58:04 -04:00
mautrix-signal/pkg/libsignalgo
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-07 15:15:39 +03:00
..
libsignal@857c4dca03 libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
resources copy over everything from libsignalgo 2023-03-22 10:32:13 -06:00
accountentropy.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
address.go libsignal: update to v0.97.2 2026-07-13 15:44:31 +03:00
address_test.go Drop their_device_id column in signalmeow_identity_keys table 2024-03-21 16:24:03 +02:00
aes256gcmsiv.go libsignalgo: remove duplicate cflags 2025-01-17 20:05:42 +02:00
aes256gcmsiv_test.go Add copyright headers 2023-12-17 15:54:35 +02:00
authcredential.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
backupkey.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
buffer.go signalmeow,libsignalgo: add support for group send endorsements 2025-11-28 16:59:29 +02:00
cflags.go libsignalgo: add -lstdc++ to cflags 2026-02-27 15:26:42 +02:00
ciphertextmessage.go libsignalgo: remove duplicate cflags 2025-01-17 20:05:42 +02:00
conversions.go libsignalgo/conversions: use unsafe.Pointer for go -> c string too 2026-08-07 15:15:39 +03:00
decryptionerrormessage.go signalmeow: add support for retry receipts 2025-12-09 00:16:45 +02:00
devicetransfer.go libsignal: update to v0.97.2 2026-07-13 15:44:31 +03:00
devicetransfer_test.go Add copyright headers 2023-12-17 15:54:35 +02:00
error.go libsignal: update to v0.94.4 2026-06-05 00:22:40 +03:00
fingerprint.go libsignal: update to v0.94.4 2026-06-05 00:22:40 +03:00
fingerprint_test.go Add copyright headers 2023-12-17 15:54:35 +02:00
fixedarray.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
fixedarray_clang.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
fixedarray_gcc.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
groupcipher.go libsignal: update to v0.86.12 2026-01-16 15:01:48 +02:00
groupcipher_test.go Drop their_device_id column in signalmeow_identity_keys table 2024-03-21 16:24:03 +02:00
groupsecretparams.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
groupsendendorsement.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
hsmenclave.go libsignalgo: remove duplicate cflags 2025-01-17 20:05:42 +02:00
hsmenclave_test.go Add copyright headers 2023-12-17 15:54:35 +02:00
identitykey.go libsignal: update to v0.87.1 2026-02-09 13:54:02 +02:00
identitykey_test.go Add copyright headers 2023-12-17 15:54:35 +02:00
identitykeystore.go libsignal: update to v0.93.2 2026-05-08 16:55:42 +03:00
inmemorystore_test.go Drop their_device_id column in signalmeow_identity_keys table 2024-03-21 16:24:03 +02:00
kdf.go libsignalgo: remove duplicate cflags 2025-01-17 20:05:42 +02:00
kdf_test.go Add copyright headers 2023-12-17 15:54:35 +02:00
kyberprekey.go libsignalgo: remove duplicate cflags 2025-01-17 20:05:42 +02:00
kyberprekeystore.go libsignal: update to v0.93.2 2026-05-08 16:55:42 +03:00
libsignal-ffi.h libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
logging.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
message.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
messagebackupkey.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
nocopy.go Don't allow copying structs with finalizers 2024-01-03 00:16:19 +02:00
plaintextcontent.go libsignalgo: remove duplicate cflags 2025-01-17 20:05:42 +02:00
prekey.go libsignal: update to v0.92.1 2026-04-13 16:49:08 +03:00
prekeybundle.go libsignal: update to v0.93.2 2026-05-08 16:55:42 +03:00
prekeymessage.go libsignalgo: remove duplicate cflags 2025-01-17 20:05:42 +02:00
prekeystore.go libsignal: update to v0.93.2 2026-05-08 16:55:42 +03:00
privatekey.go libsignalgo: remove duplicate cflags 2025-01-17 20:05:42 +02:00
privatekey_test.go Add copyright headers 2023-12-17 15:54:35 +02:00
profilekey.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
publickey.go libsignal: update to v0.87.1 2026-02-09 13:54:02 +02:00
README.md Update readme and other things 2023-12-18 02:05:18 +02:00
sealedsender.go libsignal: update to v0.92.1 2026-04-13 16:49:08 +03:00
sendercertificate.go libsignal: update to v0.97.2 2026-07-13 15:44:31 +03:00
sendercertificate_test.go Small consistency fixes 2023-12-22 14:56:31 +02:00
senderkeydistributionmessage.go libsignal: update to v0.86.12 2026-01-16 15:01:48 +02:00
senderkeyrecord.go libsignalgo: remove duplicate cflags 2025-01-17 20:05:42 +02:00
senderkeystore.go libsignal: update to v0.93.2 2026-05-08 16:55:42 +03:00
serializedeserializeroundtrip_test.go Add copyright headers 2023-12-17 15:54:35 +02:00
servercertificate.go libsignalgo: remove duplicate cflags 2025-01-17 20:05:42 +02:00
serverpublicparams.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
serviceid.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
session_test.go libsignal: update to v0.93.2 2026-05-08 16:55:42 +03:00
sessionrecord.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
sessionstore.go libsignal: update to v0.93.2 2026-05-08 16:55:42 +03:00
setup_test.go libsignal: update to v0.92.1 2026-04-13 16:49:08 +03:00
sgxclient.go libsignalgo: remove duplicate cflags 2025-01-17 20:05:42 +02:00
signedprekey.go libsignalgo: remove duplicate cflags 2025-01-17 20:05:42 +02:00
signedprekeystore.go libsignal: update to v0.93.2 2026-05-08 16:55:42 +03:00
storeutil.go libsignalgo: remove duplicate cflags 2025-01-17 20:05:42 +02:00
update-ffi-docker-inner.sh libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
update-ffi-docker.sh libsignalgo: add docker version of update-ffi.sh 2025-09-26 19:56:50 +03:00
update-ffi.sh libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00
version.go libsignal: update to v0.100.0 2026-08-07 15:04:29 +03:00

libsignalgo

Go bindings for libsignal.

Installation

  1. Install Rust. You may also need to install libclang-dev and cbindgen manually.
  2. Clone libsignal somewhere.
  3. Run ./update-ffi.sh <path to libsignal> (this builds the library, regenerates the header, and copies them both here)
  4. Copy libsignal_ffi.a to /usr/lib/.
    • Alternatively, set LIBRARY_PATH to the directory containing libsignal_ffi.a. Something like this: LIBRARY_PATH="$LIBRARY_PATH:./pkg/libsignalgo" ./build.sh
  5. Use like a normal Go library.

Precompiled

You can find precompiled libsignal_ffi.a's on mau.dev/tulir/gomuks-build-docker. Direct links: