HexChat is an IRC client for Windows and UNIX-like operating systems. See IRCHelp.org for information about IRC in general. For more information on HexChat please read our documentation:
- Multi-platform: Works on Windows, Linux, macOS, and other UNIX-like systems
- GTK2 Interface: Clean, customizable graphical user interface
- Plugin Support: Extensible with Lua, Perl, and Python scripting
- SSL/TLS Support: Secure connections with OpenSSL
- DCC Support: Direct file transfers and chat
- Multiple Networks: Connect to multiple IRC networks simultaneously
- Themes and Customization: 18+ built-in themes with automatic installation
- IRC User Mode Display: Proper display of user roles (@op, %halfop, +voice, ~owner) in chat
- 18+ Built-in Themes: Professional themes including Dracula, Monokai, Solarized, Cyberpunk, and more
- Automatic Installation: Themes are automatically copied to user directories on first run
- Cross-platform Support: Works seamlessly on Linux, Windows, and macOS
- Theme Manager: Easy theme switching via View → Theme menu
- Color Palette Fixes: IRC user mode colors preserved for proper visibility
- Smart Detection: Automatically detects image URLs (.jpg, .png, .gif, .bmp, .webp)
- Context Menu: Right-click on image URLs to see "Open Image" option
- External Viewer: Opens images in your system's default image viewer
- Seamless Integration: Works with existing URL handling system
- User Mode Prefixes: IRC user roles (@op, %halfop, +voice, ~owner) now display correctly in chat messages
- Theme Compatibility: Fixed theme colors that were breaking IRC user mode visibility
- Enhanced Build System: Meson/Ninja build system with improved cross-platform support
- Lua Support: LuaJIT integration for high-performance scripting
- Perl Support: Full Perl API for advanced scripting
- Python Support: Python scripting capabilities (configurable)
- Built-in Plugins:
- Checksum: DCC file verification
- FiSH: Encrypted messaging
- Sysinfo: System information display
# Install build tools and dependencies
sudo apt update
sudo apt install build-essential meson ninja-build pkg-config
# Install required libraries
sudo apt install libgtk2.0-dev libglib2.0-dev libssl-dev liblua5.1-dev libperl-dev python3-dev
# Install Python dependencies for plugins
sudo apt install python3-cffi- Fedora/RHEL/CentOS:
sudo dnf install gtk2-devel glib2-devel openssl-devel lua-devel perl-devel python3-devel meson ninja-build - Arch Linux:
sudo pacman -S gtk2 glib2 openssl lua perl python meson ninja - openSUSE:
sudo zypper install gtk2-devel glib2-devel libopenssl-devel lua-devel perl-devel python3-devel meson ninja
# Install Homebrew if not already installed
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Install dependencies
brew install gtk+ glib openssl lua perl python meson ninja pkg-config
pip3 install cffi- Use MSYS2 or similar environment
- Install GTK2, GLib, OpenSSL, and other dependencies via pacman
- Follow the Windows build guide
- GTK+ 2.24 or later
- GLib 2.36 or later
- OpenSSL 1.0.1 or later
- Meson 0.53.0 or later
- Ninja build system
- GCC or compatible C compiler
# Configure the build
meson setup build
# Build the project (use -j$(nproc) for parallel compilation)
ninja -C build
# Install system-wide (optional, requires root)
sudo ninja -C build install# Run from build directory
./build/src/fe-gtk/hexchat
# Check version
./build/src/fe-gtk/hexchat --versionHexChat stores configuration files in:
- Linux/macOS:
~/.config/hexchat/ - Windows:
%APPDATA%\HexChat\
HexChat includes a comprehensive theme system with automatic theme installation for all users.
- System-wide Themes: 18+ professionally designed themes are included in the build
- First-run Setup: Themes are automatically copied to each user's config directory on first launch
- No Manual Setup: Users get immediate access to a full theme collection without downloading or configuring
The build includes these themes:
- Dark Themes: Dracula, Monokai, Solarized Dark, Cyberpunk Neon, Midnight Purple, Ocean Blue, Retro Terminal, Forest Green, High Contrast
- Light Themes: Solarized Light, GitHub Light, Minimal Light, Sunset Warm, Pastel Dreams, Rainbow Pride
- Default Themes: Default Dark and Default Light for basic usage
- Theme Menu: Access themes via View → "_Theme" menu
- Theme Manager: Browse and switch themes easily
- Custom Themes: Users can add their own
.themefiles to~/.config/hexchat/themes/
The repository includes customize_theme_colors.py, a helper script that ensures theme palettes and UI colors are properly configured for optimal readability.
Run it to refresh existing themes:
python3 customize_theme_colors.pyThis script updates palette colors to prevent issues like black text on dark backgrounds.
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
HexChat is released under the GPL v2 with the additional exemption that compiling, linking, and/or using OpenSSL is allowed. You may provide binary packages linked to the OpenSSL libraries, provided that all other requirements of the GPL are met.
See file COPYING for details.
X-Chat ("xchat") Copyright (c) 1998-2010 By Peter Zelezny. HexChat ("hexchat") Copyright (c) 2009-2024 By Berke Viktor. HexChat 2.20 Copyright (c) 2025-2026 By Kristopher Craig.