A dependency-free Windows installer for the Numix cursor theme.
This project is a Windows-native port of the original numix-cursor-theme by the Numix Project.
The original repository provides Linux-first tooling and requires additional dependencies to install the theme on Windows. This project eliminates that friction by packaging all cursor files alongside a native C# application — no extra software required.
- 13 static cursor files (
.cur) covering the full Numix Dark cursor set for Windows - 2 animated cursor files (
.ani) for busy and working states NumixCursorsManager.exe— a native Windows application with GUI that handles installation, uninstallation, and cursor managementlogo.ico— custom app icon (stored inassets/)- Source code — C# source files (
Program.cs,MainForm.cs) for transparency and customization
The release ZIP already includes the precompiled
NumixCursorsManager.exe— no build step required.
- Download the latest release ZIP from the Releases page
- Extract the ZIP file (ensure
NumixCursorsManager.exeis in the same folder as thecursors/directory) - Right-click
NumixCursorsManager.exe→ Run as administrator - Select "Install Numix Dark"
- (Optional) Check "Set as active cursor immediately" to apply the theme right away
- Click Apply
- Clone or download this repository
- Open the
src/folder - Compile using the .NET Framework C# compiler (preinstalled on Windows):
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe ` /out:NumixCursorsManager.exe ` /target:winexe ` /reference:System.Windows.Forms.dll ` /reference:System.Drawing.dll ` /win32manifest:"app.manifest" ` "/win32icon:..\assets\logo.ico" ` Program.cs MainForm.cs
- The compiled
NumixCursorsManager.exewill appear in thesrc/folder
The Numix Cursors Manager provides a simple interface with four options:
- Install Numix Dark — Copies static and animated cursor files to the system directory and registers the theme.
- Set Numix Dark (Activate Theme) — Activates the theme if already installed, without reinstalling.
- Uninstall Numix Dark — Removes the theme and all cursor files. Automatically restores the Windows default cursor if Numix is currently active.
- Restore Windows Default — Resets the cursor theme to Windows default. Skips the operation if the default is already active.
Options:
- Set as active cursor immediately (checkbox) — Available during installation only. When checked, applies the theme instantly after copying files. Uncheck to install without changing the active cursor.
| Windows Version | Status |
|---|---|
| Windows 11 | Supported |
| Windows 10 | Supported |
| Windows 7 / 8 | Untested |
Windows 11 Note: The Location Select and Person Select cursor slots introduced in Windows 11 cannot be themed through the standard cursor scheme mechanism and will remain as Windows defaults. All other cursor slots are fully supported.
NumixCursorTheme-WindowsInstaller/
├── src/
│ ├── cursors/
│ │ ├── static/ # Static cursor files (.cur)
│ │ └── animated/ # Animated cursor files (.ani)
│ ├── Program.cs # Application entry point
│ ├── MainForm.cs # Main application logic and GUI
│ └── app.manifest # UAC manifest (requires administrator)
├── assets/
│ ├── logo.png # Project logo
│ ├── logo.ico # App icon — exe, taskbar, and form title bar
│ ├── preview.png # Preview image for the README
│ ├── preview2.png # App interface screenshot
│ └── social_preview.png # Social preview image
├── LICENSE
└── README.md
- Fixed hotspot alignment on 5 cursor files (
default,help,pencil,pointer,up-arrow) — hotspot coordinates were misaligned with the actual tip of each cursor image (fix by SorenINT2000) - Fixed
INSTALL_DIRhardcoded toC:\Windows— now resolves dynamically, fixing installation on systems where Windows is installed on a drive other than C: - Fixed null reference on
CreateSubKey— added explicit null check with a descriptive error message when the registry key cannot be created - Fixed redundant
ResetUI()calls in early-return paths — the method was being called twice on every early exit due to thefinallyblock also calling it - Fixed missing success confirmation when installing via the "Set Numix Dark" prompt — the dialog would complete silently without showing "Operation completed successfully"
- Fixed cursor hotspots shifted on all 13 static cursor files — hotspot values were being scaled proportionally during HiDPI upscaling instead of being set to their correct positions (arrow tip, center, hand tip, etc.). All 78 hotspot entries across 6 sizes per file have been corrected
- Fixed
ResetUI()not resetting the status label — in some early-return paths (e.g. clicking "No" on a confirmation dialog) the label would remain stuck on "Processing..." - Fixed
SystemParametersInforeturn value never being checked — if the call failed silently, the app would show "Operation completed successfully" while the cursor remained unchanged. It now throws with a descriptive message - Removed 88 unused static cursor files (Linux/X11 aliases not referenced by the installer) and 6 duplicate animated cursor files — reduced cursor count from 101 static + 8 animated to 13 static + 2 animated
- Renamed
SPIF_UPDATEconstant to the correctSPIF_UPDATEINIFILE | SPIF_SENDCHANGEfor clarity
- Removed 15 Linux-only cursor files unused on Windows (X11/Wayland aliases) — reduced static cursor count from 101 to 86
- Fixed icon handle leak in
LoadAppIcon()— now usesusing+Clone()to release the file stream immediately after load
- Replaced
.inf+uninstall.batwith a native C# Windows Forms application (NumixCursorsManager.exe) - Added GUI with four operations: Install, Uninstall, Set Active, Restore Default
- Added automatic UAC elevation via
app.manifest— no manual "Run as administrator" required - Added instant cursor application via
SystemParametersInfo— no reboot or logout required - Added detection of already-installed or already-active state before each operation
- Upscaled all cursor files to 256×256 with HiDPI sizes (32, 48, 64, 96, 128, 256 px) for crisp rendering on high-resolution displays
- Initial release —
.inf-based installer withuninstall.bat - Bundled 101 static and 8 animated Numix Dark cursor files
All cursor artwork is part of the Numix cursor theme, originally created by the Numix Project and distributed under the GPL-3.0 license.
This installer wrapper is a convenience repackaging for Windows users. Cursor files have been repackaged for Windows compatibility and upscaled to include HiDPI sizes (up to 256×256 px); the visual artwork has not been altered.
- Original project: https://github.com/numixproject/numix-cursor-theme
- Numix Project: https://github.com/numixproject
The installer wrapper (C# source code, manifest, project structure, and documentation) is licensed under the Installer Wrapper License.
The cursor assets (.cur, .ani) retain their original GPL-3.0 license from the Numix Project.

