# Discover
Yet another Discord overlay for Linux written in Python using GTK3.
Discover-Overlay is a GTK3 overlay written in Python3. It can be configured to show who is currently talking on discord or it can be set to display text and images from a preconfigured channel. It is fully customisable and can be configured to display anywhere on the screen. We fully support X11 and wlroots based environments. We felt the need to make this project due to the shortcomings in support on Linux by the official discord client.
Considerably lighter on system resources and less hack-and-slash included than discord-overlay.
![Screenshot](https://trigg.github.io/Discover/overlay.png)
## Usage
Easy user instructions can be found on our [User website](https://trigg.github.io/Discover/)
Got a question about development, bug reports or a feature request? [Join our Discord!](https://discord.gg/jRKWMuDy5V) or open an [issue on GitHub](https://github.com/trigg/Discover/issues)
### Terminal usage
On top of graphical options there are multiple ways to use this program from the command line
#### Start the overlay
You can start the overlay by running
`discover-overlay`
This will close out any already running discover overlay for this user
#### Close the overlay
`discover-overlay --close` or `discover-overlay -x`
This closes the process running the overlay, hence any `--rpc` commands sent afterwards will do nothing
#### Open configuration window
`discover-overlay --configure` or `discover-overlay -c`
#### Log debug to file
`discover-overlay --debug` or `discover-overlay -d`
This will redirect all debug to the file `~/.config/discover-overlay/output.txt`
#### Hide the currently shown overlays
`discover-overlay --rpc --hide`
This will not stop the process running the overlay. This means the `--rpc` commands sent afterwards continue working as expected, and the `--show` is much quicker than starting the overlay from the start.
#### Show the overlays
`discover-overlay --rpc --show`
Note that if the process running the overlay has stopped or crashed then this will do nothing
#### Mute yourself in voice chat
`discover-overlay --rpc --mute`
#### Unmute yourself in voice chat
`discover-overlay --rpc --unmute`
#### Deafen yourself in voice chat
`discover-overlay --rpc --deaf`
#### Undeafen yourself in voice chat
`discover-overlay --rpc --undeaf`
#### Attempt to join voice channel by room ID
`discover-overlay --rpc --moveto=X`
Using a Room ID from Discord to replace `X`, this will attempt to join the voice channel.
#### Populate the channel RPC file with a list of guilds
`discover-overlay --rpc --refresh-guilds`
Requests a list of guilds. Once collected, it will write them to
`~/.config/discover-overlay/channels.rpc`
as a JSON object
#### Populate the channel RPC file with a list of channels from a guild
`discover-overlay --rpc --guild-request=X`
Using a Server ID from Discord to replace `X`, this will request a list of channels (text & voice) from the given guild. Once collected, it will write them to
`~/.config/discover-overlay/channels.rpc`
as a JSON object.
#### Force SteamOS compatibility mode
`discover-overlay --steamos`
Forces the overlay to start as if it was started in a Gamescope & SteamOS session. Intended for testing against Gamescope while still nested in a generic desktop environment
Once Gamescope is started, get the DISPLAY variable for it and run as
`env -u WAYLAND_DISPLAY DISPLAY=:X discover-overlay --steamos`
Which will disallow it drawing to the outer desktop and instead connect to Gamescope
## Installing
### Flatpak via Flathub
Visit our [Flathub page](https://flathub.org/apps/details/io.github.trigg.discover_overlay) or install via commandline
```bash
flatpak install io.github.trigg.discover_overlay
```
### Stable
```bash
python3 -m pipx install discover-overlay
```
### Latest Testing
```bash
git clone https://github.com/trigg/Discover.git
cd Discover
python3 -m pipx install .
```
### Externally Packaged
Note that while we list links to other locations to download, the version provided is unknown and often untested by us. Report bugs in these implementations to their respective project, not here.
##### Arch AUR
[Stable](https://aur.archlinux.org/packages/discover-overlay/)
[Latest](https://aur.archlinux.org/packages/discover-overlay-git/)
##### [Fedora](https://copr.fedorainfracloud.org/coprs/mavit/discover-overlay/)
```bash
sudo yum copr enable mavit/discover-overlay
sudo yum install discover-overlay
```
##### [Gentoo](https://gpo.zugaina.org/net-voip/discover-overlay)
```bash
sudo eselect repository enable guru
sudo emaint -r guru sync
sudo emerge net-voip/discover-overlay
```
## Dependencies
Most requirements should be handled by pip.
A compositor is strongly advised but there is compatibility for X11 sessions without a compositor
It is advised to install python-gobject from your system's own package manager.
#### Debian/Ubuntu
`apt install python3-gi python3-gi-cairo libappindicator3-dev`
Libappindicator might conflict with other installed packages, but is optional
with Wayland support
`apt install gtk-layer-shell libgtk-layer-shell-dev`
#### Arch
`pacman -S python-gobject libappindicator-gtk3`
with Wayland support
`pacman -S gtk-layer-shell`
#### Fedora
`dnf install python3-pip python3-gobject gtk3-devel python3-cairo python-devel python-gobject python-gobject-devel`
with Wayland support
`dnf install gtk-layer-shell`
## Usage
Run `discover-overlay` to start the overlay. Note that by default it will show nothing until you join a voice channel.
Comes with sane-enough default but has a configuration screen to tweak to your own use. Configuration can be reached by running `discover-overlay --configure`
Desktop shortcuts for both of these are added at install time.
### Debugging
See [Wiki](https://github.com/trigg/Discover/wiki/Debugging)
### Translations
For [developers](https://github.com/trigg/Discover/wiki/Translations----as-a-developer) and [translators](https://github.com/trigg/Discover/wiki/Translations---as-a-translator-with-git) translation information can be found on our Wiki.
#### Incorrect translations and missing translations
We welcome pull requests and bug reports about missing or wrong translations, but don't have the resources to get it all right. Please be patient with us and alert us if any translations are wildly inaccurate.
## A note on terminology
I often use some terms interchangably:
Guild, Server : the leftmost pane in Discord.
Channel, Room, Chat: The next level in, these are all the same thing internally.
## Why do you keep making Discord Overlays?
I feel like I shouldn't have to at all! Until we get an official one I might just create a new one every few months. Look forward to Rust/Vulkan version coming in a few months. /s
### Are you serious?
Generally, no.
Raw data
{
"_id": null,
"home_page": "https://github.com/trigg/Discover",
"name": "discover-overlay",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "discord overlay voice linux",
"author": "trigg",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/9c/80/311d6956c4121a8f39fe890a1b77d1fb8a797c882d5db8afb3229db4239f/discover_overlay-0.7.8.tar.gz",
"platform": null,
"description": "# Discover\nYet another Discord overlay for Linux written in Python using GTK3.\n\nDiscover-Overlay is a GTK3 overlay written in Python3. It can be configured to show who is currently talking on discord or it can be set to display text and images from a preconfigured channel. It is fully customisable and can be configured to display anywhere on the screen. We fully support X11 and wlroots based environments. We felt the need to make this project due to the shortcomings in support on Linux by the official discord client.\n\nConsiderably lighter on system resources and less hack-and-slash included than discord-overlay.\n\n![Screenshot](https://trigg.github.io/Discover/overlay.png)\n## Usage\n\nEasy user instructions can be found on our [User website](https://trigg.github.io/Discover/)\n\nGot a question about development, bug reports or a feature request? [Join our Discord!](https://discord.gg/jRKWMuDy5V) or open an [issue on GitHub](https://github.com/trigg/Discover/issues)\n\n\n### Terminal usage\n\nOn top of graphical options there are multiple ways to use this program from the command line\n\n#### Start the overlay\n\nYou can start the overlay by running \n`discover-overlay`\n\nThis will close out any already running discover overlay for this user\n\n#### Close the overlay\n`discover-overlay --close` or `discover-overlay -x`\n\nThis closes the process running the overlay, hence any `--rpc` commands sent afterwards will do nothing\n\n#### Open configuration window\n`discover-overlay --configure` or `discover-overlay -c`\n\n#### Log debug to file\n`discover-overlay --debug` or `discover-overlay -d`\n\nThis will redirect all debug to the file `~/.config/discover-overlay/output.txt`\n\n#### Hide the currently shown overlays\n`discover-overlay --rpc --hide`\n\nThis will not stop the process running the overlay. This means the `--rpc` commands sent afterwards continue working as expected, and the `--show` is much quicker than starting the overlay from the start.\n\n#### Show the overlays \n`discover-overlay --rpc --show`\n\nNote that if the process running the overlay has stopped or crashed then this will do nothing\n\n#### Mute yourself in voice chat\n`discover-overlay --rpc --mute`\n\n#### Unmute yourself in voice chat\n`discover-overlay --rpc --unmute`\n\n#### Deafen yourself in voice chat\n`discover-overlay --rpc --deaf`\n\n#### Undeafen yourself in voice chat\n`discover-overlay --rpc --undeaf`\n\n#### Attempt to join voice channel by room ID\n`discover-overlay --rpc --moveto=X` \n\nUsing a Room ID from Discord to replace `X`, this will attempt to join the voice channel.\n\n#### Populate the channel RPC file with a list of guilds\n`discover-overlay --rpc --refresh-guilds`\nRequests a list of guilds. Once collected, it will write them to \n`~/.config/discover-overlay/channels.rpc`\nas a JSON object\n\n#### Populate the channel RPC file with a list of channels from a guild\n`discover-overlay --rpc --guild-request=X`\nUsing a Server ID from Discord to replace `X`, this will request a list of channels (text & voice) from the given guild. Once collected, it will write them to\n`~/.config/discover-overlay/channels.rpc`\nas a JSON object.\n\n#### Force SteamOS compatibility mode\n`discover-overlay --steamos`\nForces the overlay to start as if it was started in a Gamescope & SteamOS session. Intended for testing against Gamescope while still nested in a generic desktop environment\n\nOnce Gamescope is started, get the DISPLAY variable for it and run as\n`env -u WAYLAND_DISPLAY DISPLAY=:X discover-overlay --steamos`\nWhich will disallow it drawing to the outer desktop and instead connect to Gamescope \n\n## Installing\n\n### Flatpak via Flathub\n\nVisit our [Flathub page](https://flathub.org/apps/details/io.github.trigg.discover_overlay) or install via commandline\n\n```bash\nflatpak install io.github.trigg.discover_overlay\n```\n\n### Stable\n```bash\npython3 -m pipx install discover-overlay\n```\n\n### Latest Testing\n```bash\ngit clone https://github.com/trigg/Discover.git\ncd Discover\npython3 -m pipx install .\n```\n\n### Externally Packaged \n\nNote that while we list links to other locations to download, the version provided is unknown and often untested by us. Report bugs in these implementations to their respective project, not here.\n\n##### Arch AUR\n\n[Stable](https://aur.archlinux.org/packages/discover-overlay/)\n[Latest](https://aur.archlinux.org/packages/discover-overlay-git/)\n\n##### [Fedora](https://copr.fedorainfracloud.org/coprs/mavit/discover-overlay/)\n\n```bash\nsudo yum copr enable mavit/discover-overlay\nsudo yum install discover-overlay\n```\n\n##### [Gentoo](https://gpo.zugaina.org/net-voip/discover-overlay)\n\n```bash\nsudo eselect repository enable guru\nsudo emaint -r guru sync\nsudo emerge net-voip/discover-overlay\n```\n\n## Dependencies\n\nMost requirements should be handled by pip.\n\nA compositor is strongly advised but there is compatibility for X11 sessions without a compositor\n\nIt is advised to install python-gobject from your system's own package manager.\n\n#### Debian/Ubuntu\n\n`apt install python3-gi python3-gi-cairo libappindicator3-dev`\n\nLibappindicator might conflict with other installed packages, but is optional\n\nwith Wayland support\n\n`apt install gtk-layer-shell libgtk-layer-shell-dev`\n\n#### Arch\n\n`pacman -S python-gobject libappindicator-gtk3`\n\nwith Wayland support\n\n`pacman -S gtk-layer-shell`\n\n#### Fedora\n\n`dnf install python3-pip python3-gobject gtk3-devel python3-cairo python-devel python-gobject python-gobject-devel`\n\nwith Wayland support\n\n`dnf install gtk-layer-shell`\n\n## Usage\n\nRun `discover-overlay` to start the overlay. Note that by default it will show nothing until you join a voice channel.\n\nComes with sane-enough default but has a configuration screen to tweak to your own use. Configuration can be reached by running `discover-overlay --configure`\n\nDesktop shortcuts for both of these are added at install time.\n\n### Debugging\n\nSee [Wiki](https://github.com/trigg/Discover/wiki/Debugging)\n\n### Translations\n\nFor [developers](https://github.com/trigg/Discover/wiki/Translations----as-a-developer) and [translators](https://github.com/trigg/Discover/wiki/Translations---as-a-translator-with-git) translation information can be found on our Wiki.\n\n#### Incorrect translations and missing translations\n\nWe welcome pull requests and bug reports about missing or wrong translations, but don't have the resources to get it all right. Please be patient with us and alert us if any translations are wildly inaccurate.\n\n## A note on terminology\n\nI often use some terms interchangably:\n\nGuild, Server : the leftmost pane in Discord.\n\nChannel, Room, Chat: The next level in, these are all the same thing internally.\n\n## Why do you keep making Discord Overlays?\n\nI feel like I shouldn't have to at all! Until we get an official one I might just create a new one every few months. Look forward to Rust/Vulkan version coming in a few months. /s\n\n### Are you serious?\n\nGenerally, no.\n\n",
"bugtrack_url": null,
"license": "GPLv3+",
"summary": "Voice chat overlay",
"version": "0.7.8",
"project_urls": {
"Homepage": "https://github.com/trigg/Discover"
},
"split_keywords": [
"discord",
"overlay",
"voice",
"linux"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "a30a00063fe3924ce37f43b18e813c6be507928741a8100706623ef64e5075cb",
"md5": "c3c6ebc5fee3e6d3ca3944894104465d",
"sha256": "61f98ef6dd678f1de5fd18a572eb45e434f43a2606fbfcb1e26524c6360518a0"
},
"downloads": -1,
"filename": "discover_overlay-0.7.8-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c3c6ebc5fee3e6d3ca3944894104465d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 140185,
"upload_time": "2024-08-16T09:48:27",
"upload_time_iso_8601": "2024-08-16T09:48:27.725820Z",
"url": "https://files.pythonhosted.org/packages/a3/0a/00063fe3924ce37f43b18e813c6be507928741a8100706623ef64e5075cb/discover_overlay-0.7.8-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9c80311d6956c4121a8f39fe890a1b77d1fb8a797c882d5db8afb3229db4239f",
"md5": "a4feef15ed9306cdd3c68c30afdcd826",
"sha256": "dce30549fa4ad07d4ecf833db058b809a0e063b01583f7c25519c2c9b395d1a8"
},
"downloads": -1,
"filename": "discover_overlay-0.7.8.tar.gz",
"has_sig": false,
"md5_digest": "a4feef15ed9306cdd3c68c30afdcd826",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 112177,
"upload_time": "2024-08-16T09:48:29",
"upload_time_iso_8601": "2024-08-16T09:48:29.184677Z",
"url": "https://files.pythonhosted.org/packages/9c/80/311d6956c4121a8f39fe890a1b77d1fb8a797c882d5db8afb3229db4239f/discover_overlay-0.7.8.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-16 09:48:29",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "trigg",
"github_project": "Discover",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "discover-overlay"
}