SlackwareThis Forum is for the discussion of Slackware Linux.
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.
I thought I would post this here as I have spent quite a while getting this to sit nicely with Slackware.
Background: I have the Cyborg RAT7 mouse. I had it working a treat with Ubuntu. I turned my back on Ubuntu and installed Slackware 13.37. I forgot every step I took getting the mouse working, so I researched it from scratch.
Fresh install of Slackware 13.37. XFCE Desktop is running.
I chased this one all over last night. But this morning I sorted my last issue and I have been using it all day error free.
Open a terminal! 1- Run: 'xinput -list' (minus the ' ') to id the mouse.
2- run: 'xinput test [number]' [number] is the id number from xinput -list. On my system I would type: 'xinput test 16'.
When you do this you get an output scrolling up the terminal window. Press buttons, note down the numbers.
Why? The RAT7 is a fiend with the button registered as 13, 14, 15. Avoid pushing it. It's the 'mode' button near the left button (usually number 1)
3- open your /etc/X11/xorg.conf in your favourite editor.
That long list for Option 'buttonmapping' with the zeros in it tells your system to ignore 13,14,15. Looking at mine, I seem to be ignoring 6 and 7 too. Mind you, they didn't register as anything so I'm leaving mine like that.
5- Save the file.
Now, most other places I have seen tell you to restart X and do a lap of honour. But I still had problems.
It seems that GPM does not play well with this little mousey. So, if you did your mouseconfig on the install and said yes to GPM, turn it off.
6- Turn off GPM (either type: '/etc/rc.d/rc.gpm stop' in a terminal (as root), or chmod the script and reboot, or something.) Just stop it running.
7- So, you've edited xorg.conf, turned off GPM. Plug in the mouse. Restart X (or reboot).
8- My god it might just work! if it is flying across the screen as it is too fast, type this:
'3' can be changed to suit your speed tastes. Other solutions tell you to put this in a script and run it on user log in. Me? I have it lurking in my bash history because I am lazy.
After all that you might want to use the buttons for something. On Ubuntu I used 'Btnx' and 'Btnx-config'. But it looks like a simpler solution is to use 'xbindkeys'. There's a Slackpack for that, apparently!
If anything I hope this brainfart of an explanation helps. I tried using edev modules, different settings, all kinds of things.
The above is what I ended up doing.
Oh, and 'xinput test 16'? All those button numbers you wrote down can be fed into btnx, or xbindkeys. Handy because you have them written down already (in theory!).
I also appreciate this. The mouse generally worked fine for me if I killed X after first starting it and restarting X, but that wasn't anywhere near ideal.
Awesome guide...thanks. BTW, you may want to consider posting this (or having it moved) under General->Success Stories. Either way, I'm glad someone else documents things!
Slight issue still to resolve though. Like many other users, I am having to log out and back in to get the mouse to behave. On the second go, everything is fine. But it is Friday and my debug head is not on (kids coming round, man the battle stations!).
I am tempted to write up how I got SLack 13.37 rolled out on my Macbook. Soon perhaps.
[EDIT]
Can someone with superpowers move this thread?
Last edited by transitive; 05-04-2012 at 02:30 AM.
Reason: ask the admin a nice request
Still no solution for the need to restart X, but BTNX is up and running.
How to get BTNX to map buttons and events to your RAT7
1 go and get the slackpack of BTNX, BTNX-config and Libdaemon.
I am using 'btnx-0.4.11-i486-3ng' for Slackware 13.0. It works on 13.37.
2 Install said Slackpacks. I will not try and teach old dogs news tricks here, you all have your methods.
3 Log out of user.
4 Log into an X session as Root.
5 Open terminal and run btnx-config.
6 Follow instructions for assigning buttons in btnx (remember those buttons you noted from xinput test? Yep, use those again!). DON'T PRESS OR USE THAT DAMN MODE BUTTON THOUGH!
7 After using btnx-config, run btnx.
8 Test your new button config on a few windows and webpages (you may encounter a Google-Chrome bug that assigns the two buttons by your thumb to 'page forward' and 'page back' in browser history. I am looking into solving this damn issue.
9 Open /etc/rc.d/rc.local in your favourite editor.Add:
#btnx for mouse buttons
/usr/local/bin/btnx &
to the file.I didn't put it at the bottom. You might.
10 Reboot or run /etc/rc.d/rc.local again.
11 Jump up and down like a happy idiot when the mouse works as expected (after restarting X11 obviously).
It is not 100% sorted (restart X issue), but it is manageable. Are there specific logs I can have a look through when X starts and then terminates? Perhaps there is something there that jumps out?
EDIT: off to look at /var/log/Xorg.0.log and others.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.