gur
gurk
cargo install gurk
gur

gurk

Signal Messenger client for terminal

by boxdot

0.1.1 (see all)License:MIT OR Apache-2.0
cargo install gurk
Readme

gurk 🥒

CI

Signal Messenger client for terminal.

screenshot

Usage

You need to download and install signal-cli, such that it is found in your PATH.

  1. Download and install signal-cli

  2. Follow the instructions at https://github.com/AsamK/signal-cli/wiki/Linking-other-devices-(Provisioning) to link signal-cli to your phone/device.

  3. Install gurk with cargo install gurk

  4. Drop a config file with the following context

    [user]
    name = "Your user name"
    phone_number = "Your phone number used in Signal"
    

in one of the following locations:

  1. $XDG_CONFIG_HOME/gurk/gurk.toml
  2. $XDG_CONFIG_HOME/gurk.yml
  3. $HOME/.config/gurk/gurk.toml
  4. $HOME/.gurk.toml

For more config options, see src/config.rs.

  1. Run gurk

At the first run, gurk will sync groups and contacts.

Missing features / known issues

  • Use a simple database (like sqlite, sled, leveldb) for storing messages, contacts, etc... instead of a JSON file.
  • Add optional Gnome notifications over dbus.
  • Add scrolling of messages.
  • Add reply functionality to a single message.
  • Add mouse navigation.
  • Add search of messages/chats. Add quick switch between chats by name.
  • It is not possible to send multiline messages, since the Enter key sends the messages. Add a shortcut or a mode for typing multiline messages.
  • Add sending of attachments.
  • Add support for blocked contacts/groups.

The communication with the Signal backend is implemented via signal-cli. It provides some functionality like lookup of group/contact name only over the dbus interface. Therefore, gurk only works on Linux. We should evaluate if it is possible to switch to the libsignal-service-rs crate.

License

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this document by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

GitHub Stars

208

LAST COMMIT

8mos ago

MAINTAINERS

1

CONTRIBUTORS

11

OPEN ISSUES

13

OPEN PRs

3
VersionTagPublished
0.1.1
2yrs ago
0.1.0
2yrs ago
No alternatives found
No tutorials found
Add a tutorial