Skip to main content

A free/libre program for performing various tasks with Discord.

Project description

Version 0.7.2

Harmony is a free/libre program that allows you to perform various actions with the messaging service Discord. Currently, it allows you to:

  • Create an account

  • Verify your email address

  • View your account tag

  • Change your username, email address, password, and avatar

  • Change safety and privacy settings

  • List servers you’re in and members in those servers

  • Transfer and delete servers you own

  • Accept server invites

  • Delete your account

Actions that require you to complete a CAPTCHA (often required when logging in from a new location, for example) are supported by using librecaptcha.

For free/libre software that allows you to send and receive messages with Discord, check out purple-discord.

Installation

From PyPI

Install with pip:

sudo pip3 install harmony-discord

To install locally, run without sudo and add the --user option.

From the Git repository

Clone the repository with the following commands (you’ll need to have Git installed):

git clone https://github.com/taylordotfish/harmony
cd harmony

Then install with pip:

sudo pip3 install .

To install locally, run without sudo and add the --user option.

Run without installing

Run the first set of commands in the previous section to clone the repository. Then, install the required dependencies by running:

sudo ./deps/install-dependencies.py

To install the dependencies locally, run without sudo and add --user.

Usage

If you installed Harmony, simply run harmony, or see harmony -h for more options. If you didn’t install it, use ./harmony.py instead of harmony.

If an action requires you to solve a CAPTCHA, Harmony will use librecaptcha’s GTK 3 GUI, if available, unless the environment variable LIBRECAPTCHA_NO_GUI is set to a non-empty string.

What’s new

Version 0.7.1:

  • Harmony now works with newer versions of librecaptcha.

  • Harmony now won’t use the librecaptcha GUI if the environment variable LIBRECAPTCHA_NO_GUI is non-empty.

  • Updated the user-agent list.

Version 0.7.0:

  • Harmony can now save passwords in the system keyring.

Version 0.6.x:

  • Harmony now uses Readline for input.

  • Harmony should now work again (as of 2021-02-04).

  • Fixed registration.

  • The librecaptcha GUI is now used when available.

Version 0.5.x:

  • Harmony can now be installed from PyPI, or from the Git repository with pip or setup.py.

  • Fixed possible encoding issue in setup.py.

Version 0.4.x:

  • librecaptcha is now loaded from Python’s default path if available; otherwise, the corresponding submodule is cloned.

  • You can now list servers you’re in with the servers command.

  • You can now list members in a server with the members command.

  • You can now display and accept invites with the show-invite command.

  • You can now transfer servers with the transfer command.

  • You can now delete servers with the rm-server command.

  • You can now delete your account with the delete command.

  • You can now undelete an account scheduled for deletion with the undelete command.

  • The get-details and get-settings commands now provide more information.

  • Updated the user-agent list.

  • Fixed some miscellaneous bugs.

  • Improved separation between the frontend and backend.

Version 0.3.x:

  • Fixed automatic librecaptcha downloading in harmony.py.

  • Login attempts that require CAPTCHA tokens are now supported.

  • The verification process when logging in from a new location is now supported.

  • Fixed some miscellaneous bugs.

Dependencies

The installation instructions above handle installing the Python packages. Alternatively, running pip3 install -r deps/requirements.lock will install specific versions of the dependencies that have been tested (but may be outdated or have problems).

License

Harmony is licensed under the GNU General Public License, version 3 or any later version. See LICENSE.

This README file has been released to the public domain using CC0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

harmony-discord-0.7.2.tar.gz (31.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

harmony_discord-0.7.2-py3-none-any.whl (33.0 kB view details)

Uploaded Python 3

File details

Details for the file harmony-discord-0.7.2.tar.gz.

File metadata

  • Download URL: harmony-discord-0.7.2.tar.gz
  • Upload date:
  • Size: 31.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.7

File hashes

Hashes for harmony-discord-0.7.2.tar.gz
Algorithm Hash digest
SHA256 c1746c0b3a43bdd4012fd9c5050d39e39d6b8783ef9f2b90e73a1cc26aa7cb18
MD5 71e4f5fb4b31895f29f15e74eb47202e
BLAKE2b-256 03d3d8283313ba140380a8d06021a40bd9365c268d6b17e939eeb520c46e5d5a

See more details on using hashes here.

File details

Details for the file harmony_discord-0.7.2-py3-none-any.whl.

File metadata

  • Download URL: harmony_discord-0.7.2-py3-none-any.whl
  • Upload date:
  • Size: 33.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.7

File hashes

Hashes for harmony_discord-0.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e1ef72977e565e68c4c4c0a5f247dc892f98f8eadca775aaf16bae2ce18cf80d
MD5 4048f4d755b475ca281e3575e49cf5c5
BLAKE2b-256 073bfc638b6dfa4daa9c64be51a1bb79f50fd1769f7e10114c0a6016da2db09f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page