The STM32 controllers seem to become pretty widely used. The STM32F1 series are pretty cheap at the low end, the STM32F4 are pretty powerful (but more expensive), with USB HiSpeed, 100Mbit ethernet, etc, (though if you add Phy's).
Their ST Discovery boards are also very cheap to get and have the STLINKv2 debugger built in. You can also use it for your own boards with a simple 5-pin cable. In my experience it works very well, it's loads quick and I have had little quirks so far.
An obvious limitation is, of course, the STLINKv2 only works on STM32 devices. For me it was so cheap and low-entry I couldn't resist rolling a project with a ST microcontroller on it , and see how it works out.
Not sure about the STLINKv2 driver & linux neither.
Otherwise I'd recommended looking at NXP or Atmel for general purpose projects. At work we use NXP, their chips are okay, but sometimes I feel their peripherals are a bit limiting for a big 32-bit Cortex core (like only supplying 4 timers, 4 or 8 A/D channels on a 100-pin QFP, etc.)
NXP has got LPCxpresso development boards, kinda similar at the STMDiscovery with onboard debugger. Their old boards were completely locked into CodeRed IDE's (another Eclipse Java IDE), which is a pity. I believe their newer debuggers implement a J-Link debugger protocol though, not sure which models.
IDE's is a bit harder, can be very personal. Maybe this page will help:
http://www.emcu.it/STM32/What_should_I_use_to_develop_on_STM32/What_should_I_use_to_develop_on_STM32.htmlCandidates seem to be: CooCox, Code::Blocks and emIDE. The others are 32kB Limited versions of big vendor tools, which I guess will work very well, but is quite a contrast to "open tools".
As a general rant: in general ARM tools are not very open. There was this very interesting article on
Hackaday and
DangerousPrototypes about a very simple CMSIS-DAP (Cortex general purpose debugging protocol) adapter, using a 1$ USB PIC part.
All great and all, except for the fact the source code is not allowed to be released because you get the CMSIS-DAP specification from ARM under "license", which says you may not release your implementation/source code.