Ex Sgi user, also with published titles to my name
Linux isn't *that* different to irix really - nothing's really changed in 20 years! Totally obvious programming points: use g++ instead of cc; the 'ar' command makes libs; use -shared to make dso's; get reacquainted with makefiles; and remember to make heavy use of the command line and custom build scripts/tools! There are some other build systems apart from make, scons being one of the more popular ones (probably the best bet). For version control, nothings really any different.... SVN/CVS/Mecurial/Git/Whatever. I've heard a rumour that Tortoise works on the Pi, although I can't confirm that.
For profiling you can use gprof. For debugging use gdb either from the command line, or via an IDE (eg Qt creator).
Speaking of IDEs, you're pretty much going to be looking at Qt creator (very good for knocking up quick GUI based apps, although it's also a fairly decent IDE), or eclipse (I suspect this might be a little sluggish on the Pi? Mind you, Qt creator will probably be sluggish too!). Unlike the project pages in MSVC, you'll be mainly managing build configs in a makefile-like way for the most part.
For graphics work, you'll be wanting to get acquainted with OpenGLES. As I understand things, there is a binary blob for the broadcom GLES implementation, which is what you're going to need to get an app running without linux in the way. It doesn't look trivial, but you might want to start watching the progress of this thread
For joypads, there is a standard linux joystick lib that supports stuff like the xbox 360 joypad. You'll be wanting to test that out, by trying to get the 'jscal' exe installed (if it isn't already). If you can figure that out, the joypads will be working
Obviously the code for the linux joystick lib is available, should you want to know how to communicate to a joypad over USB without linux
For audio, you'll be wanting to brush up on OpenSLES. I've not looked into this much yet myself, but I'm imagining there will be a similar binary blob problem to OpenGLES to be solved here.
For maths libs, either use your own, or go for something like glm. There aren't any floating point SIMD intrinsics available, so any naive FPU based maths library will do. There are some very basic integer DSP instructions that provide 4x8bit or 2x16bit SIMD units, but don't get too excited! Useful for DSP work, but of limited use elsewhere. The __fabs and __sqrtf intrinsics might come in handy though
Personally I don't tend to spend too much time actually developing on linux (I'll get burned alive for this I know!). I usually just use MSVC on a windows box, with the source either on a shared drive, shared folder, or simply via VCS commit/update. Once the equivalent code is running on windows, it's usually just a case of fixing g++ build errors. It's a little harder with the Pi due to endian differences, but by the sounds of it you've dealt with that before!
If I'm working soley on linux, I don't usually use much more than g++, gdb, make, gprof, svn, and a set of custom bash/ruby/python scripts to automate the build process.
The command prompt will have a little start up script (~/.bashrc if you're using bash) which is worth editing to hell to set paths for custom tools & dso's (PATH + LD_LIBRARY_PATH). It's also extremely useful to set a load of command aliases, and various other environment variables, etc.
It's also worth having a little browse through the man pages for g++, ar, ld, pwd, gdb, cp, cd, rm, mkdir, make, grep, alias, .... just to refresh your memory
Hopefully that gives you a couple of google search terms to start with!
p.s. Synergy is a really useful app for sharing a keyboard + mouse between 2 computers which might come in handy to de-clutter your desk if you've not seen it before.