I really hate working with Solaris, and it's not because of the kernel, it's because the userspace experience is so abominable. The GNU user environment is really what makes Linux so kick arse. I can survive quite well (in a poweruser capacity) on a BSD box if the environment is GNU.
So here's my current list of things that I constantly bump into that agrieve me no end:
- there is no decent shell by default (by decent, I mean something with command recall that doesn't suck, like Korn shell).
- Solaris find blows goats when it comes to any decent options (my kingdom for iname)
- there is no watch command
- df is shite
The first thing I do, if I have the option, is GNUify the environment a bit, but that is really a band-aid solution. Invariably, the packages from Sun Freeware are used to achieve this, but I'm not a big fan of how well they are packaged, and you end up with lots of stuff in /usr/local/bin, and sooner or later, you have to get into LD_LIBRARY_PATH hell, and it all goes downhill from there.
In Sun's defense, they are getting with the program, and shipping more and more GNU stuff as optional packages. Solaris 8 (which is what I'm currently having to endure) does ship with GNU Bash, less, and gzip. Solaris 9 goes so far as to ship OpenSSH if I recall correctly. So things are improving, but the user experience (for me) still leaves a lot to be desired, compared to a stock installation of say Debian GNU/Linux.