Can I run X without a mouse / or without a mouse cursor?
Linux - GeneralThis Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Can I run X without a mouse / or without a mouse cursor?
Hello. I am currently building a powerwall with a linux cluster. Each node is driving a projector. The problem I am attempting to correct is to get rid of the mouse cursor on the wall nodes.
So when I start up the X server with xinit, I am seeing a mouse cursor. I would like there to be no cursor at all. I have attempted to disable the mouse completely but I always get the "no core pointer" error when I try to start up the X servers.
If anyone can help me with this problem I would appreciate it greatly. Thanks.
So can I either kill the mouse completely or change the mouse cursor to something that is completely black? It seems like I have tried all the options in man XF86Config and man xterm and man xinit.
I tried removing all InputDevice sections from the XF86Config file, to no avail. I also tried to use the Keyboard0 as the "Core Pointer Device"... still crashes on startup with the "No Core Pointer" error.
I also tried to use the Option "AllowMouseOpenFail" "boolean" flag in the server section of the file... this doesn't appear to do anything at all (see man XF86Config).
This is a question for the true Linux guru, and I am going to be impressed is someone figures this one out. This seemingly simple problem has found me stumped.
It seems like the crux of this problem reside sin the fact that the X server "requires" a core pointer device.
X will not start unless it sees something for a mouse. YOu could try to change your
Option "Device" "/dev/mouse"
to
Option "Device" "/dev/null"
but with that I think that you will still have a mouse pointer on the screen. Yup you will I just tested it. Are you runnign jsut Xfree86 by it's self? Or do you have a desktop enviroment running as well? Lemmie do some research into the mouse pointers under just plain XFree86. I will post later.
I think its possible to use a custom mouse cursor (I'm not sure, I could be wrong).... maybe you could edit the mouse cursor to be a single pixel? It wouldn't be completely gone, but it would at least be hard to spot...
Yes, I am just running the raw X server with one xterm window open with the background set to black. I still see the 'I' cursor on the screen, however.
Yes, I have tried setting the mouse to dev/null...
If I could edit the mouse cursor, the problem would be solved, because I could just use a black cursor that would be invisible against the black background.
When I blast openGL streams across the network, each node behaves properly and the cursor will disappear. But when the openGL app closes, the cursor returns (unless of course I have pushed it across the screen). This works for now, but I will eventually have 27 nodes, so I must find a solution to this. I can't realistically "push" the mouse cursor off the screen for 27 different nodes that make up the powerwall.
A am still searching... I can't find the pixmap that makes up the raw X server cursor yet. I will still be amazed if someone figures this one out., and more than that I will be very thankful.
Thanks for trying to figure out this puzzle. If I find a solution I will definately post it here.
This might help lead you to a possible solution. It is a small HOWTO describing how to edit the X cursor to be transparent.... its a little old, so I don't know if this is still accurate, but hey, its a start.
Thanks for that link. That looks to contain infomation that I didn't have. I will post here after I give it a shot and let you know how it turns out. Thanks again.
Well, I have still been unable to fix this problem. I feel like I am getting closer, however. I still unsure exactly where the mouse cursor is coming from and man X, xterm, xinit, xsetroot, xset, xmodmap, xrdb, xev, xlib.... none of these man pages explains this.
Has anyone had any success editting mouse cursors?
Another possibly helpful link. I played around with this program last night and was able to change my cursors (Slack 9 install). Keep at it, I'm sure you'll be able to find a solution.
Ok, I discovered a way to get rid of the mouse cursor completely without having to blowaway any font files, reconfigure hardware settings, etc... quick and easy:
First, you need to create two bitmaps, which is very painless. Just use the 'bitmap' program and use its defaults. For one, choose 'envert' to make all pixels black. For the second, leave them all untouched. Save each file.
Now use the xsetroot command as follows
xsetroot -cursor <bitmap1> <bitmap2>
Now your mouse cursor is completely transparent when moved over the main window.
Instead of messing with XF86Config-4 just set the cursor color in the xterm.
From man xterm:
-cr color
This option specifies the color to use for text cursor. The
default is to use the same foreground color that is used for
text.
However, I am actually running applications across these "blank" X servers. So as soon as something appears on the screen that is not that color, the cursor becomes visible.
By creating a an black and "white" cursor, using the bitmap and xsetroot commands (the cursor and the mask), you can make the cursor completely transparent. So it will take on the exact color of whatever is placed underneath it.
I have created a very large "virtual desktop" using a linux cluster, and I do not need 27 mouse cursors all over the 'screen'. Imagine how annoying it would be if you started your desktop and there were 27 "unmovable" mouse cursors all over your screen.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.