An unofficial, optimized Gather Town client for Linux.
This project wraps the Gather web client in Electron with specific tweaks to fix common Linux issues like screen sharing on Wayland, global hotkeys, and auto-away functionality.
- Gather 2.0 & Classic: Support for both the new Beta (default) and Classic versions.
- Wayland Screen Sharing: Native support for PipeWire to fix the infamous "black screen" issue on modern Linux (GNOME/KDE/Hyprland).
- Smart Auto-Away:
- Detects system sleep/suspend and sets "Away" immediately.
- Hotkeys Fixed: Prevents Electron from swallowing critical game keys like
WASDorCtrl+Shift+A.
Download the latest AppImage, .deb, or .rpm from the Releases Page.
- AppImage: Just download, make executable (
chmod +x), and run. - Deb/RPM: Install via your package manager (
sudo apt install ./gather...deb).
Run instantly without installing:
nix run github:simonkoeck/gather-linuxOr install permanently to your user profile:
nix profile install github:simonkoeck/gather-linuxTo install it declaratively on NixOS, add the repo to your flake.nix inputs:
In flake.nix:
{
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
# Add Gather Linux
gather-linux.url = "github:simonkoeck/gather-linux";
};
outputs = { self, nixpkgs, gather-linux, ... }: {
nixosConfigurations.my-machine = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit gather-linux; }; # Pass input to modules
modules = [ ./configuration.nix ];
};
};
}In configuration.nix:
{ config, pkgs, gather-linux, ... }:
{
environment.systemPackages = [
gather-linux.packages.${pkgs.system}.default
];
# Required for Screen Sharing on Wayland
xdg.portal = {
enable = true;
xdgOpenUsePortal = true;
config = {
common.default = ["gtk"];
hyprland.default = ["hyprland" "gtk"];
};
extraPortals = with pkgs; [
xdg-desktop-portal-gtk
xdg-desktop-portal-gnome
xdg-desktop-portal-hyprland
];
};
}GUI
Launch Gather Linux from your application menu.
CLI
You can control the running instance from the terminal.
gather-linux
# or launch the classic (v1) version
gather-linux --classicScreen sharing is black or invisible?
This usually means the app isn't talking to the Wayland Portal.
-
NixOS: Ensure xdg.portal.enable = true is in your config (see above).
-
Other Distros: Try launching with these flags to force Wayland mode:
gather-linux --enable-features=UseOzonePlatform,WebRTCPipeWireCapturer --ozone-platform=wayland
# Install dependencies
npm install
# Run locally (with Wayland flags)
npm start
# Build for release (AppImage/Deb/RPM)
npm run dist