Script to automate symlinking files when porting Windows cursors to Linux
Project description
Lncur
A simple python script to easily port Windows cursor packs to Linux!
Install
Manually
- Get the executable by building it or downloaded from the releases.
- Run:
mv lncur ~/.local/bin/
Don't forget to add
~/.local/binto your $PATH !
Aur
ln is also available on the AUR with your AUR helper (in my case paru).
$ paru -S lncur
Running from file
You can also just download/copy the lncur.py file and put it directly in your working directory.
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
- 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/X 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:
$ lncur -h
usage: lncur.py [-h] [-v] [-l]
options:
-h, --help show this help message and exit
-v, --version Prints version
-l, --link Symlinks cursors files
Build
- Install pyinstaller
- Run:
git clone https://github.com/claymorwan/lncur.git
cd lncur
pyinstaller --onefile lncur.py
- The path to the executable will be
./dist/lncur
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.0.3.tar.gz.
File metadata
- Download URL: lncur-1.0.3.tar.gz
- Upload date:
- Size: 11.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
713a70309f8fb6cc87b675cde0969bbbb02a02c99583121b05045fa33bc30aa3
|
|
| MD5 |
1666952ab58da2fdcc973661e185a3f9
|
|
| BLAKE2b-256 |
182acd23bf87ce54918f6475922dd7203c053f79d2719862c221d76d6bc17c25
|
File details
Details for the file lncur-1.0.3-py3-none-any.whl.
File metadata
- Download URL: lncur-1.0.3-py3-none-any.whl
- Upload date:
- Size: 5.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b2eb96c1ad170ebc57ad0b9de4fdda7f39f61425e7e60ca8f9d10892f6d1beb0
|
|
| MD5 |
4bf18befdf38f9c332cfc7d59eb029fe
|
|
| BLAKE2b-256 |
5ed9be60bceb323bedc2de235ccec4fa32f79a113e5f4559d4af0b8e4f38349e
|