README.md
July 20, 2026 ยท View on GitHub
Features
- Convert cursor themes between Windows and Linux formats
- Convert
.curand.anicursors to Linux format - Convert Linux Xcursor themes to Windows format
- Add cursor folders manually or just drag them in
- Configurable output directories for both modes
Installation
Installing win2xcur
Flexa requires the win2xcur Python package to convert cursor files.
win2xcur requires ImageMagick >= 7.0 for full cursor format support. Older versions may fail on some cursors.
pipx:
pipx install win2xcur
pip:
pip install --user win2xcur
Using RPM (Fedora): If you download the RPM package from the releases page, you can install it using:
sudo dnf install ./python3-win2xcur-*.rpm
Using DEB (Ubuntu/Debian): If you download the DEB package from the releases page, you can install it using:
sudo apt install ./python3-win2xcur_*.deb
sudo apt-get install -f -y
From Flathub (coming soon)
flatpak install flathub io.github.eucaue.flexa
From Release Page
Download the assets from the latest release.
Windows:
Download Flexa-Windows-Installer.exe and run it to install the application.
Flatpak:
flatpak install flexa.flatpak
RPM (Fedora):
sudo dnf install ./python3-win2xcur-*.rpm ./flexa-*.rpm
DEB (Ubuntu/Debian):
sudo apt install ./python3-win2xcur_*.deb ./flexa_*.deb
Building with Flatpak
- Install the GNOME SDK and Platform:
flatpak install flathub org.gnome.Sdk//50 org.gnome.Platform//50
- Build and run:
Using just
just build-run
Manual Build
flatpak-builder --install --force-clean _build io.github.eucaue.flexa.json
flatpak run io.github.eucaue.flexa
Requirements
- GTK 4.10+
- LibAdwaita 1.5+
- PyGObject
- Python 3.11+
- win2xcur (see Installing win2xcur)
# Fedora
sudo dnf install gtk4-devel libadwaita-devel gobject-introspection-devel meson ninja-build gettext python3-gobject
# Ubuntu / Debian
sudo apt install libgtk-4-dev libadwaita-1-dev libgirepository1.0-dev meson ninja-build gettext python3-gi libglib2.0-bin
Then build:
Using just
just build-run-native
Manual Build
meson setup build
meson compile -C build
sudo meson install -C build
flexa
Usage
Select the target mode (To Linux / To Windows), add cursor folders via + or drag-and-drop, then hit Convert. Output directories are configurable in Preferences.
Output
Each theme is saved as its own subfolder (named after the source folder) inside your configured output directory. By default, this is ~/.local/share/icons (when converting to Linux) and ~/Documents/Windows Cursors (when converting to Windows). Defaults adjust on Windows.
Contributing
Open an issue or PR at github.com/eucaue/flexa.
Acknowledgements
Built with:
- win2xcur: Cursor conversion backend
- win-cursor-2-linux: Original inspiration
License
GPL-3.0-or-later