Skip to content

KamalAraf/NumixCursorTheme-WindowsInstaller

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NumixCursorTheme-WindowsInstaller (v1.1.3)

License: Wrapper License: Cursors Platform Version

Preview

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.


What's included

  • 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 management
  • logo.ico — custom app icon (stored in assets/)
  • Source code — C# source files (Program.cs, MainForm.cs) for transparency and customization

Screenshots

Application Interface

App Preview


Installation

Quick Start (Recommended)

The release ZIP already includes the precompiled NumixCursorsManager.exe — no build step required.

  1. Download the latest release ZIP from the Releases page
  2. Extract the ZIP file (ensure NumixCursorsManager.exe is in the same folder as the cursors/ directory)
  3. Right-click NumixCursorsManager.exeRun as administrator
  4. Select "Install Numix Dark"
  5. (Optional) Check "Set as active cursor immediately" to apply the theme right away
  6. Click Apply

Build from Source

  1. Clone or download this repository
  2. Open the src/ folder
  3. 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
  4. The compiled NumixCursorsManager.exe will appear in the src/ folder

Usage

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.

Compatibility

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.


Project structure

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

Changelog

v1.1.3

  • 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_DIR hardcoded to C:\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 the finally block 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"

v1.1.2

  • 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 SystemParametersInfo return 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_UPDATE constant to the correct SPIF_UPDATEINIFILE | SPIF_SENDCHANGE for clarity

v1.1.1

  • 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 uses using + Clone() to release the file stream immediately after load

v1.1

  • Replaced .inf + uninstall.bat with 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

v1.0

  • Initial release — .inf-based installer with uninstall.bat
  • Bundled 101 static and 8 animated Numix Dark cursor files

Credits

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.


License

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.

About

Windows-native installer for the Numix Dark cursor theme. Features a native C# GUI application to install, uninstall, and manage the cursor theme — no dependencies, no extra software required.

Topics

Resources

License

Stars

7 stars

Watchers

1 watching

Forks

Packages

 
 
 

Contributors

Languages