I have a full functional desktop (meaning menu, launchers, workspaces, dock, etc) via WindowMaker. It requires no manual configuration editing as it has an excellent compact GUI tool built-in.
The machine is currently running no services - rc.conf, apart from network configuration is empty. Desktop has 4 additional dockapps (small programs running as desktop-addons), CPU meter, network meter, audio control and animated clock inside a fishbowl. These dockapps are interactive.
Conky is running on desktop providing me information about memory usage, disk usage, running processes, etc.
There are currently two launched xterm windows, one running shell, other running Midnight Commander editor.
And total memory usage of this machine is 188 MB.
So using a lightweight desktop environment you're going to get sub 200 MB memory usage. I think all of those components (WindowMaker, dockapps, conky) together have a sub 50 MB disk footprint, together with all the extras packed (such as icons that come with WindowMaker).
If you're seeking for a thin-client only functionality, i can give few suggestions :
- Don't use full DE's, as light as they can be, they're overbloated for your task.
- Semi DE's, like WindowMaker, that don't come with their own applications, but still provide launchers, desktop, workspaces, dock, etc, are easy to set up initially, but they are made with run-time configuration tweaking in mind. Therefore, if you want static GUI setup that's constructed at launch, i'd avoid this too.
- Tiling window managers would come in handy. Such as dwm, awesome, wmii, etc. They can provide a narrow nagivation bar at top which you can use to control virtual workspaces, and launchers that will launch RDP/VNC/whatever client inside that workspace @ full screen.
- If you're looking for a floating/overlapping window manager, more classic and familiar approach, i'd suggest IceWM. It doesn't have desktop, but it has a tray bar with "start button", clock, and virtual workspace controls. Start menu is configured through configuration files, and you would use it to launch remote access programs. With external programs inside .xinitrc, you'd set a desktop background.
With IceWM you'd get a memory footprint around 150MB, with small tiling WM's even less.
Disk footprint of above listed window managers is completely insignificant.
The least expensive thin client on i386 hardware i can think of would be some cheap miniITX board with embedded graphics and network, 1 GB flash media for system, and 512 MB of RAM. I would install standard FreeBSD, without profiled libraries, sources, etc, but i wouldn't save space on man pages / documentation, cause they really come in handy, and they aren't so big to make a difference. Keep in mind that you install on flash media, thus you need some additional tweaks (tmpfs, search forums to clarify this better). I would compile and install only Xorg components that i truly need, only target GFX driver + VESA, no X programs such as xterm,xeyes,etc...and then i would configure IceWM, compile and install remote access programs i'd be running, set-up IceWM menu, etc, and that's it. Clean up distfiles, and any port leftovers. You get a system wasting well below 1GB disk space, with a runtime footprint of ~ 150MB of RAM.