In one way or another you can type Esperanto in any operating system without using the x-system (which I really dislike). Of all the operating systems and UIs I used (many!), the one that makes typing Esperanto the best is MacOSX, but you have to configure your keyboard properly first (this is for English based Qwerty keyboards, not sure how it would work with others). You want U.S. Extended:

To type the pointy hats, you press ⌥+6 (that is, alt or option plus the letter 6) which gives you:

and then the following letter, g, c, S, G, whatever: Ĝ

For ŭ is the same, but you have to press ⌥+b to get the other kind of hat:

and that’s all there’s to it.