CLI tool to automate symlinking files when porting Windows cursors to Linux
Project description
Lncur
A simple python CLI to easily port Windows cursor packs to Linux!
Install
Pypi
pip install lncur
Aur
lncur is also available on the AUR with your AUR helper.
yay -S python-lncur
Usage
Setup
- First you need to set up your cursor theme directory, you can refer to the step 5 of the KDE guide for creating cursor theme. It should look like this :
Root of your super cool ported theme :D
├── cursors
└── index.theme
You can run
lncur -mto quickly set up the directory
- Put all of your Windows cursor theme files (.ico and/or .ani) in the
cursorsdirectory. - Rename all your file like the following (here using default Windows cursor names, depending on what cursor theme you're porting, the files can be named different, it's fine just rename them):
| Cursor | Windows name | Linux/Xcursor name |
|---|---|---|
| Normal select | default |
|
| Text select | text |
|
| Busy | wait |
|
| Precision select | crosshair |
|
| Alternate select | up-arrow |
|
| Diagonal resize 1 | size_fdiag |
|
| Diagonal resize 2 | size_bdiag |
|
| Horizontal resize | size_hor |
|
| Vertical resize | size_ver |
|
| Move | fleur |
|
| Unavailable | not-allowed |
|
| Link select | pointer |
|
| Working in background | progress |
|
| Help select | help |
|
| The pen one idk the name | pencil |
All of the names are taken from the KDE breeze cursor theme
Cursors image from Microsoft
You can remove the pin and person cursors as they're not used.
- Convert the files to X cursor files using win2xcur, you can convert them all by going in the
cursorsdirectory and run
win2xcur *
Now your cursor theme should look like this now:
Root of ur super amazing theme :3
├── cursors
│ ├── crosshair
│ ├── default
│ ├── fleur
│ ├── help
│ ├── not-allowed
│ ├── pencil
│ ├── pointer
│ ├── progress
│ ├── size_bdiag
│ ├── size_fdiag
│ ├── size_hor
│ ├── size_ver
│ ├── text
│ ├── up-arrow
│ └── wait
└── index.theme
Running the program
Now you can use lncur to do all the symlinking by running lncur inside the directory where the cursors dir and running:
lncur -l
All arguments:
usage: lncur [-h] [-v] [-l] [-m MAKE]
options:
-h, --help show this help message and exit
-v, --version Prints version
-l, --link Symlinks cursors files
-m, --make MAKE Make a cursor theme directory
Dev
- Install uv
- Run:
git clone https://github.com/claymorwan/lncur.git
cd lncur
uv venv
source ./.venv/bin/activate
uv sync
- Build package with
uv build
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file lncur-1.1.0.tar.gz.
File metadata
- Download URL: lncur-1.1.0.tar.gz
- Upload date:
- Size: 11.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dd49a5a7500f3c43d4cfdb4fb0b233251ef366e0e1da1426d84632bb0e169be9
|
|
| MD5 |
8e33161e0542659df7922f8735581cc5
|
|
| BLAKE2b-256 |
d34a994f658484ed54c58e6a1ee30e24bb00ee534c2d664ee18a43df4aaba1ba
|
File details
Details for the file lncur-1.1.0-py3-none-any.whl.
File metadata
- Download URL: lncur-1.1.0-py3-none-any.whl
- Upload date:
- Size: 5.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1505526173b9613d90c8ee4de1dc9043901715935fcec7c917089519bc998bde
|
|
| MD5 |
68e0e95e5bbcc710ce97c452e7e45aab
|
|
| BLAKE2b-256 |
f10ac7ef7226eacb7bc052c96b85a0f98e9f751dfac263bb0a8daae5255b6295
|