How to draw your own mouse cursor theme!
At 39C3, I gave a workshop about drawing your own mouse cursor theme.
Here’s my “slides”:
Draw your own
_ __ ___ ___ _ _ ___ ___
| '_ ` _ \ / _ \| | | / __|/ _ \
| | | | | | (_) | |_| \__ \ __/
|_| |_| |_|\___/ \__,_|___/\___|
___ _ _ _ __ ___ ___ _ __
/ __| | | | '__/ __|/ _ \| '__|
| (__| |_| | | \__ \ (_) | |
\___|\__,_|_| |___/\___/|_|
_ _ _
| | | | | |
| |_| |__ ___ _ __ ___ ___| |
| __| '_ \ / _ \ '_ ` _ \ / _ \ |
| |_| | | | __/ | | | | | __/_|
\__|_| |_|\___|_| |_| |_|\___(_)
with blinry
# Motivation
Nostalgic memories of the cursors on Windows 98/XP!
https://sweezy-cursors.com/collection/old-windows/
Understanding things is fun!
Confuse people who look over your shoulder?
Customize something you look at *a lot*...
# Getting to know you
Who feels confident using a graphics program?
Like Inkscape, Krita, or GIMP?
Who doesn't?
Who is using Wayland?
Who is using X.Org?
Who doesn't know?
# Please interrupt me/ask questions!
# History of cursors on Linux
~1987: X Font Cursors
https://tronche.com/gui/x/xlib/appendix/b/
~2003: Xcursor library
https://www.gnome-look.org/browse?cat=107&ord=rating
# How does Xcursor work?
Let's look at an example: Adwaita!
# Which icon names are required?
~2023: cursor_shape_v1 for Wayland standardizes available icon names
Names taken from CSS spec
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/cursor
Aliases for "traditional names"
left_ptr -> default
watch -> wait
hand2 -> grab
...
Good table in the GTK source code:
https://github.com/GNOME/gtk/blob/544a23a633ba8f32ca0a1ec06abc9d6f887ca50c/gdk/x11/gdkcursor-x11.c#L107
# Step 1
Make a directory with
default.png
text.png (on text hover)
pointer.png (on link hover)
Transparent background
Around 64x64 px?
"Hot spot" is in the center
# Step 2: Run easy-cursor-generator
https://codeberg.org/blinry/easy-cursor-generator
Dependencies
xcursorgen
ImageMagick (the `identify` command)
If you're not sure how to run this script, call me in the workshop part!
# Step 3: Install the theme
1. Copy or symlink to ~/.local/share/icons/your-theme/cursors/
2. Activate using your desktop environment/compositor
3. In doubt, check https://wiki.archlinux.org/title/Cursor_themes
# Ideas!
- Draw your own arrows (cool-looking? Weird ones?)
- Repurpose your favorite icons/logos (so that everyone immediately knows that you're using Arch btw)
- Blåhajs?!
- High-contrast cursors that are actually more accessible to you
- (your ideas go here!)
# Have a favorite graphics program?
You can stop paying attention here! :)
# How to Inkscape
https://codeberg.org/blinry/cursor-theme-template
- Multi-page feature
- Basic drawing tools
- File -> Export -> Batch Export -> Pages -> "Export"
# Find me on the Internet!
Mastodon
https://chaos.social/@blinry
Projects & contact
https://blinry.org
~~~ Workshop time! ~~~
I'll go around and help you!
Comments?
Send a message to @blinry@chaos.social or drop me a mail at mail@blinry.org. Also, you can support me on Patreon or subscribe to my newsletter!