summaryrefslogtreecommitdiffstats
path: root/README.md
blob: 063e4a50632cc4b9349c3efeebcc2910d2310401 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# discord.c

an alternative client for the discord messaging platform, written in the C programming language.

## requirements

* a POSIX system
* GNU C library
* GNU compiler collection
* GNU Make
* libcurl 7.17.0 or newer with HTTPS support[\*](#user-content-notes)
* ncursesw6
* libcjson-dev

## screenshots

![screenshot in fullscreen](https://cdn.sijanec.eu/img/2021/03/discord.c_prtsc.png)

## instructions

### debian (ubuntu as well)

```
sudo apt update
sudo apt install discord.c
```

you need to add [my apt repository](https://prog.sijanec.eu/).

built packages only exist for `amd64`, `arm64` and `i386`. for other architectures grab the source package:

```
apt source discord.c
# untar and follow install from source
```

### caveman style install

```
make
./discord.c -e email@address.example -p password
```

## automatic building

automatic building is done on two servers, one for `arm64` and the other for `amd64`.

check the build badge before downloading:

[![Build Status](https://jenkins.sijanec.eu/buildStatus/icon?job=discord.c)](https://jenkins.sijanec.eu/job/discord.c/)

* `amd64`: [https://cargova.sijanec.eu/prog/discord.c/](https://cargova.sijanec.eu/prog/discord.c/)
* `arm64`: [https://of.sijanec.eu/prog/discord.c/](https://of.sijanec.eu/prog/discord.c/)
* `i386`: *built on my portable computer*

there are deb packages and binaries.

## missing features

* check for permissions before join

## notes

\*`openssl` is [known](https://curl.se/mail/lib-2013-06/0007.html) to be `write()`ing to closed sockets and generating `SIGPIPE`s that `discord.c` does not catch and is terminated. Use a more sane TLS library instead such as `gnutls`, on which the `debian` package depends.