🇺🇸 English | 🇰🇷 한국어
Nimf is a lightweight, fast and extensible input method framework that supports Korean, Japanese, Chinese, and many other languages through multilingual input engines.
Nimf is maintained by the HamoniKR Team as a continuation of the original nimf project. This fork ensures the sustainability of this essential input method framework for Korean and multilingual text input on Linux systems.
- Full GTK4 support with backwards compatibility (GTK2/3/4)
- Modular packaging: Core package + optional multilingual extension (
nimf-i18n
) - Enhanced platform support across major Linux distributions
- Improved Wayland compatibility and environment integration
- Korean: Advanced Hangul input with libhangul (Dubeolsik, Sebeolsik, etc.)
- Japanese: Comprehensive hiragana/katakana/kanji input via Anthy
- Chinese: Traditional and simplified Chinese with librime engine
- 100+ Languages: Extended multilingual support through m17n library
- Toolkit Support: GTK2, GTK3, GTK4, Qt5, Qt6
- Display Protocols: X11 and Wayland native support
- Desktop Environments: GNOME, KDE, XFCE, and others
- Lightweight: Minimal resource usage and fast startup
- System Integration: Native desktop indicator and configuration tools
- Customizable: Flexible keyboard layouts and input preferences
Architecture | Distributions |
---|---|
x86_64 | Ubuntu 24.04+, Debian 12+, Fedora 33+, openSUSE 15.6+, Arch Linux |
arm64 | Ubuntu 24.04+, Debian 12+, Arch Linux |
Install the latest version with a single command on all supported distributions:
# Using curl
curl -fsSL https://raw.githubusercontent.com/hamonikr/nimf/master/install | sudo bash
# Or using wget
wget -qO- https://raw.githubusercontent.com/hamonikr/nimf/master/install | sudo -E bash -
This script automatically:
- ✅ Detects your distribution and installs the appropriate package
- ✅ Handles ibus conflicts (disables ibus-daemon if present)
- ✅ Configures environment variables for all desktop environments
- ✅ Sets Nimf as the default input method
For advanced users who prefer manual installation, download the appropriate package from Releases and install using your distribution's package manager.
Examples:
# Ubuntu/Debian
sudo dpkg -i nimf_*.deb && sudo apt-get install -f
# Fedora/RHEL
sudo dnf install nimf-*.rpm
# Arch Linux
sudo pacman -U nimf-*.pkg.tar.zst
# openSUSE
sudo zypper install nimf-*.rpm
Note: Manual installation requires additional configuration steps. The automatic installation script above is recommended for most users.
git clone --recurse-submodules https://github.com/hamonikr/nimf
cd nimf
./autogen.sh
./configure --prefix=/usr/local
make -j "$(nproc)"
sudo make install
For cross-platform package building:
# Build for specific distributions
./scripts/build-docker.sh ubuntu.2404
./scripts/build-docker.sh debian.bookworm
./scripts/build-docker.sh fedora.latest
./scripts/build-docker.sh arch
# Generated packages will be in dist/ folder
find dist/ -name "*.deb" -o -name "*.rpm" -o -name "*.pkg.tar.*"
📚 Detailed Documentation:
- Docker builds: DOCKER-BUILD.md
- Source builds: BUILD.md
- Platform guides: Wiki
- 🐛 Report Issues: GitHub Issues
- 💬 Community: HamoniKR Community
- 🔗 Additional Resources: Project Wiki
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the GNU Lesser General Public License v3.0.
See the LICENSE file for details.
Maintained by HamoniKR Team 💙
Ensuring sustainable multilingual input for the Linux ecosystem