1. Open the document that contains your artwork and prepare it for conversion. Save a copy in the same folder; using a copy will let you start over if something goes wrong. If necessary, clear any background color. You may have to use “Add Alpha Channel.” If you plan on making an arrow-type cursor, move or rotate the artwork so the “tip” of the cursor is in the upper-left corner of the image. Make the “canvas” perfectly square, so that height=width, being careful to not distort your artwork. The artwork should cover at least one-third of the canvas, regardless of actual size.
2. Scale the image to 32 pixels in size, keeping it square and save it as a PNG image.
Name the image after your artwork but also to remind you of what kind of cursor it is. The example is a default arrow-like cursor called “arrow.png”.
3. Launch a text-editor to open a new text file; use “Save As…” immediately, giving it the same name as your cursor image, but ending with “.cursor” instead of “.png”—the example shows a configuration file named “arrow.cursor”. This file stores settings to make the cursor from an image.
4. Type the cursor settings in the text editor, like this example:32 0 0 arrow.png
 The first number is the size of the cursor in pixels; in this case, 32 pixels square.
 The second number is the x-position of the hotspot. (from left to right, in pixels)
 The third number is the y-position of the hotspot. (from top to bottom, in pixels)
[arrow.png] is the name of the image file, change this to the name of the image you saved.
In this example, the cursor would be 32-pixel size with a hotspot in the upper-left corner at position “zero-zero” (the first pixel from the top and the first pixel from the left).
All “arrow” style cursors should use (0,0) for the hotspot—at the “tip” of the arrow in the upper-left corner of the image.
For other types of cursors, use the “ruler” in your graphics program to determine where the hotspot should be, then change the hotspot coordinates.
When you’ve typed the whole line, close the text editor and click “Save.”
5. Launch the “Terminal” program and a command-line window appears. Navigate to the same directory where your PNG image and the “.cursor” file are stored using the “cd” command.
6. Enter this command:$ xcursorgen arrow.cursor default
[xcursorgen] runs the program that converts the PNG image into a cursor.
[arrow.cursor] would be the name of the text-file, ending in “.cursor”, that you made in Step 4.
[default] is the name given to the new cursor file. Ubuntu will recognize cursors by name, so it is important to name the cursor appropriately.
For a list of common cursor names in Ubuntu and Linux in general, look under “Additional Resources,” specifically, “Cursor Naming Convention” and “Table of X11 Cursor Names.”
The command prompt should return almost immediately.
7. Open a file-browser and go to your working directory; you should see a preview of the cursor you’ve made and the file-type should read, “X11 cursor.”
For more information on cursors and cursor-themes in Ubuntu, go to the Ubuntu Community Forums.