It sounds like a Nokia N810 might fit your needs. I have the slightly older N800 which has no keyboard but works fine with an external folding bluetooth keyboard. Both run Linux (Debian) on identical internals (wifi built-in, SD cards up to 8-16GB work, has USB too, and a very crisp screen) and there is a lively community around the platform too - check out http://maemo.org/.