VivaHX
[ General News | Software | Archive | Discord ]
GtkHx
[ Clients ] | Linux | 9 releases | Rust | GPL-2.0 | 1 stars on GitHub

A Hotline client with a GTK+ interface.

Screenshots from the project's README.

GtkHx is a client for Hotline, the chat and file-sharing system from 1996. A Hotline server is a small community of its own: a public chat room, private messages, a shared file library, and a news board, all run by whoever hosts it. Trackers list the servers that are up, so you can go looking for one.

GtkHx was first written in 2000 for GTK+ 1.2. It has since been rebuilt for GTK 4 and libadwaita, and much of it rewritten in Rust, while staying fully compatible with the Hotline 1.2, 1.5 and 1.9 servers still running today.

From the project's README.

Website | Source code

( All clients | Edit this page | Edit on GitHub )
What's new: 1.4.0
Released 2026-09-26
  • Video
  • Video chat and screen sharing, on servers that support it
  • A dockable Video panel shows everyone's camera and screen, plus your own preview
  • Choose a camera in Settings → Voice
  • Camera tiles keep the same order, by user, instead of shuffling between calls
  • Voice
  • Fixed occasional audio problems after joining or rejoining voice
  • Themes and Icons
  • Themes now color the whole window, not just the chat
  • Richer chat colors, and each nickname keeps its own color
  • New icons that match the desktop and follow the theme's colors
  • The original pixel-art icons live on in the new Classic theme
  • New Neon Doll theme
  • Settings → General can keep the system's window colors around a themed chat
  • Files
  • The file browser is now its own window, one per connection
  • Clearer layout, with labeled Download and Upload buttons
  • Right-click a file for Open, Preview, Get Info, Rename, Delete and more
  • User Interface
  • Slimmer window chrome, so chat gets much more of the window
  • The server banner and connection status now sit in the header bar
  • The status bar is gone, and the toolbar is optional (off by default)
  • Pane titles and action bars can be hidden
  • Chat tabs stay hidden until there is a second conversation
  • Settings opens with Ctrl+,
  • Hotline Protocol
  • Fixed file transfers with Windows clients and servers
  • macOS
  • GtkHx now asks for camera and microphone access
  • Fixed a crash on macOS versions too old to run GtkHx
  • Code Modernization
  • GtkHx now shares its Hotline protocol code with the hxd-ng server
  • Translations
  • Translated the new strings

Downloads

( Release page )
News about GtkHx
1 post
( All news )
1.3.2
Released 2026-09-05
  • Fixed issue with Linux Flatpak and bundled library paths
  • News Browser
  • Fixed double load issue
  • Fixed a bug that prevented users from creating a new folder

Downloads

( Release page )
1.3.1
Released 2026-08-06
  • Build
  • Bundle fonts and translations for macOS and Windows packages
  • Connections
  • Include some more servers for new users
  • User Interface
  • Fix chat scroll bug

Downloads

( Release page )
1.3.0
Released 2026-08-04
  • Connections (formerly Bookmarks)
  • Bookmarks are now Settings → Connections; the separate Bookmarks window is gone
  • Each connection can override your nickname and icon for that server, or inherit the defaults from Settings → Identity

  • Bookmarks are now kept in a single TOML file

  • Legacy bookmark files are imported if the TOML file does not exist
  • Connections can be exported to legacy Hotline bookmark files
  • Built-in bookmarks can now be deleted
  • Build
  • GtkHx is now available for macOS and Windows
  • Code Modernization
  • GtkHx is now mostly Rust code
  • Config
  • The settings file (gtkhxrc) is now gtkhx.toml
  • GtkHx will migrate the old gtkhxrc if one is present and no gtkhx.toml exists
  • Fixed bugs in preferences along the way
  • Hotline Protocol
  • Fixed old bug with resumable file transfers
  • Ensure that multi-byte names > 32 bytes get truncated at a character boundary
  • Multiple Connections
  • Users may now be connected to more than one server at a time, and switch between connections with tabs
  • Sound
  • Replaced libcanberra with rodio for notification sound playback
  • Translations
  • Updated existing translations
  • Added Japanese translations
  • User Interface
  • Button icons now default to their original size, rather than upscaled
  • Brand new hxchat widget for Chat (replaces forked version of HexChat's xtext)
    • Significantly better performance
    • Markdown support (toggleable)
    • Icon display next to speaker (toggleable)
    • Speaker grouping, so doesn't have to keep appearing on every consecutive line
    • Right clicking on a speaker's name or icon will now pop up a "user" popup menu
    • Chat history can be searched via Ctrl-F
  • Ctrl-U now works to clear any input in the app
  • [Enter] in the Connect dialog now connects
  • Handle character conversion on user list and user info
  • Closed panels/windows will not reopen on startup
  • Docking a window will now highlight the pane that is being targeted
  • Panel foreground state is now persisted

Downloads

( Release page )
1.2.2
Released 2026-07-07
  • Voice
  • Voice activity detection for self
  • Volume control slider for each individual
  • Sounds for join / leave events
  • Update to follow latest version of the voice chat spec
  • Code Modernization
  • Parts of GtkHx's UI are now written in Rust

Downloads

( Release page )
1.2.1
Released 2026-07-01

Small follow-up release following the big 1.2.0 release to address some bugs

  • User Interface
  • Move Join Voice/Mute buttons to the User list
  • Bug Fixes
  • Make sure Files browser resets to root directory between sessions
  • Fix emoji picker related crash when closing private chat/message tabs
  • Fix issue with GtkHx reporting task errors for ICON_GETLIST when unavailable
  • Don't auto fetch 1.5+ News if server version is <150
  • Fix Hotline protocol regression with large frames introduced in Rust hxnet migration

Downloads

( Release page )
1.2.0
Released 2026-07-01
  • User Interface
  • GtkHx theme support
  • Emoji shortcode support with typeahead completion
  • Agreement text is now rendered in a monospace font
  • Cleaner Settings dialog
  • Code Modernization
  • GtkHx's networking code is now in Rust
  • Address GTK+ 4 deprecations
  • Hotline Protocol
  • GIF icon support
  • Bug Fixes
  • Various voice chat fixes
  • Compatibility Fixes
  • Support for glycin 1+ and 2+ loaders
  • rustc dependency dropped to 1.8.5
  • Voice chat and its dependencies are now optional

Downloads

( Release page )
1.1.0
Released 2026-06-19
  • Voice chat
  • Inline media
  • User Interface
  • New multi-panel interface with support for custom layouts and undocking panels into their own windows so that users can still have the nostalgic multi-window experience if they prefer
  • Dropped custom GtkHList in favor of GtkColumnView
  • Results from different trackers are nested in their own result sets
  • Added support for hotline:// links
  • Made the News 1.5 browser handle links in the posts
  • Code Modernization
  • Parts of GtkHx are being rewritten in Rust
  • Bug Fixes
  • Handle Chat subjects with Mac Roman characters
  • Fixed icons in Private Chat user list
  • Fixed an issue where creating new user accounts was not working
  • Hotline Protocol
  • Tracker v3 support
  • Support for fetching tracker listings via TLS
  • Dropped RC4 cipher support. RC4 is weak/insecure and should not be used.
  • Handle servers that echo request opcode in TASK replies
  • Settings
  • Dropped *(X|Y)POS config keys as GTK+ 4 does not support getting the window position

Downloads

( Release page )
1.0.0
Released 2026-05-29
  • General
  • Tons of fixes, especially for modern systems / 64-bit architectures
  • XDG-compliant config (~/.hx/ -> ~/.config/gtkhx/ and ~/.gtkhxrc -> ~/.config/gtkhx/gtkhxrc)
  • Created GtkHx icon and .desktop file
  • Admins can now send server broadcasts
  • Updated icons.rsrc to include icons from HLC 1.9
  • New machine-generated translations for French, German, Spanish, and Portuguese
  • Debug logging support with HL protocol tracing
  • SOCKS support is now available via the system's NetworkManager
  • Flatpak package support
  • Scrapped Plugin support for now
  • Better file preview support (support common image types, PDF, source code, markdown)
    • Optional libpoppler dep for PDF file previews
    • Optional libgtksourceview dep for markdown / source code file previews
    • Optional ImageMagick dep for QuickDraw PICT previews
  • Code Quality
  • Unit tests
  • Integration tests that run against mhxd and Janus instances
  • Fixed all compilation warnings
  • Code Modernization
  • GTK+ 1.2 -> GTK+ 4.x + libadwaita
  • Rewrote threading/event model
  • Use libgsound / libcanberra instead of executing binary to play sounds
  • Networking code rewritten to use GSocketClient/GIOStream
  • GtkHx now uses an event driven architecture
  • Leveraged GLib data types
  • Switch to meson for build system
  • User Interface
  • Totally revamped Settings window
  • Brand new News browser
  • Brand new orthogonal file manager type Files browser
  • Wide format icon support
  • Pre-1.5 News now has a text search feature
  • Tracker search case sensitivity can now be toggled in the Tracker window
  • New Bookmark manager dialog allows for in-app management of Hotline bookmarks
  • URLs in Chat / Message / Private Chat / News can now be right clicked
  • Emoji picker next to Chat and Message input fields
  • System notification support
  • Systray support via libayatana-appindicator
  • Prevent/block user actions that the server does not allow
  • Server banner support (both URL, which pulls in libsoup, and native HTXF)
  • Cleaner Task row design
  • Light/Dark theme support
  • Hotline Protocol
  • Better protocol support for all protocol versions
  • Do not attempt to fetch News/Agreement if the user does not have permission
  • PING support
  • Fixed issue with file protocol list handling that prevented showing all contents of a directory
  • Addressed issue with GtkHx not identifying client type with HOPE negotiation
  • Support for ZSTD and LZ4 HOPE compression algorithms
  • Support for CHACHA20-POLY1305 HOPE stream cipher
  • Support for native UTF-8 extension
  • Support for large file transfers (>4GB) extension
  • Support for chat history extension
  • Support for colored names extension
  • Support for TLS encrypted connections

Downloads

( Release page )
 Links
- Home
- Hotline HQ Discord
- Software
- News Archive
- Server Tracker
- Hotline Wiki
 Clients
- Heidrun 1.5.1
- GtkHx v1.4.0
- Invigoration v2.3.2
- Hotline Navigator v0.3.0
- Mobius Client v0.3.1
 Servers
- Heidrun Server 1.5.1
- Mobius v0.23.1
- Lemoniscate v0.1.7
- Hotline Server 1.9.1
- Hotline Docker images
 Trackers
- Magnetron v0.4.0
- Argus
- hltracker (Visual Basic)
 Bots
- Heidrun Spirit 1.0.0
- Hotline Discord Bridge 1.0.0a
- Hotline2IRCRouter
 Misc
- Heidrun protocol and CLI 1.0.0
- Hotline Modern v0.9.1
- Caps
- CreateList
- hotline (Ruby gem)

 

Brought to you by BigRedH.com | HLWiki.com | stickytack.com