README.md
1# purple-discord
2A libpurple/Pidgin plugin for Discord
3
4( For free/libre software that allows you to create/manage your account with Discord, check out [Harmony](https://github.com/taylordotfish/harmony) )
5
6Windows
7-------
8Windows nightly builds from [here](https://eion.robbmob.com/libdiscord.dll)
9
10The plugin requires libjson-glib which can be downloaded [from github](https://github.com/EionRobb/skype4pidgin/raw/master/skypeweb/libjson-glib-1.0.dll) and copied to the Program Files\Pidgin folder (not the plugins subfolder).
11
12Fedora/CentOS/RHEL
13---------
14On Fedora you can install [package](https://apps.fedoraproject.org/packages/purple-discord) from Fedora's main repository:
15
16```bash
17 sudo dnf install purple-discord pidgin-discord
18```
19
20On CentOS/RHEL you can install [package](https://apps.fedoraproject.org/packages/purple-discord) from Fedora's [EPEL7](https://fedoraproject.org/wiki/EPEL) repository:
21
22```bash
23 sudo yum install purple-discord pidgin-discord
24```
25
26Thank you to Vitaly Zaitsev for this package.
27
28Gentoo
29--------
30
31Extract [purple-discord-9999.ebuild](https://github.com/EionRobb/purple-discord/files/994369/ebuild.zip) and copy it to `/usr/local/portage/x11-plugins/purple-discord` with folders created as necessary.
32
33```bash
34 mkdir -p /usr/local/portage/x11-plugins/purple-discord
35 cp purple-discord-9999.ebuild /usr/local/portage/x11-plugins/purple-discord
36 cd /usr/local/portage/x11-plugins/purple-discord
37 ebuild purple-discord-9999.ebuild manifest
38 eix-update; eix-diff # only if eix is installed
39 emerge purple-discord
40```
41
42Thank you to Penaz for this package.
43
44Compiling
45---------
46Requires devel headers/libs for libpurple and libjson-glib [libglib2.0-dev, libjson-glib-dev and libpurple-dev], as well as ImageMagick [imagemagick] and [gettext].
47```bash
48 git clone git://github.com/EionRobb/purple-discord.git
49 cd purple-discord
50 make
51 sudo make install
52```
53
54Advanced Options
55----------------
56**Use status message as in-game info**: If enabled, the status message set via
57Pidgin (the text under Available, Away, etc in the buddy list) will be
58used as the game info for Discord "Playing ...".
59
60**Auto-create rooms on buddy list**: If enabled, the plugin will add the
61channels (rooms) from the servers you're on as chats on your buddy list.
62This is preferred if you're using Pidgin, so you don't need to access
63the room list manually (from the buddy list, Tools->Room List). If
64you're not using Pidgin (or finch), you probably don't want this, since
65they have different buddy list APIs.
66Note: If the room list changes, it won't recreate the list unless you
67delete the entire group.
68
69**Number of users in a large channel**: Mention behaviour is "smart" in
70here. If you're in a small channel, every time a message is sent, you'll
71be notified and the channel will pop up. If you're in a large channel,
72you'll only be notified if you're explicitly mentioned in the message.
73This value is the threshold to define a large channel. By default, if
74there are more than 80 (online) users in the channel, it will be
75considered large.
76
77**Display custom emoji as inline images**: Automatically downloads custom
78emoji from the server and displays it in Pidgin as an inline image instead
79of as a URL link
80
81Mentions
82--------
83To mention a user in a chat room, you can either use tab-completion at the
84start of the message, or prefix their username with an @ eg,
85`SeriousEion: i am mentioning @SeriousEion`
86
87Bitlbee and spectrum2 users
88---------------------------
89Discord doesn't like you trying to connect from remote IP addresses so
90you'll need to grab an auth token from your browsers local storage:
91
92* Chrome: Developer Tools -> Application -> Local Storage -> https://discordapp.com -> token
93* Firefox: Web Developer -> Storage Inspector -> Local Storage -> https://discordapp.com -> token
94
95Bitlbee users can then set the token with `acc eionrobb-discord set token ......`.
96
97spectrum2 users will need to edit the accounts.xml file to add the token. `<setting name='token' type='string'>...</setting>`
98
99Show your appreciation
100----------------------
101Did this plugin make your life happier? [Send me $1](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=PZMBF2QVF69GA) to say thanks!
102