↓I'm just saying that if you want the timezone stored elsewhere you need to make sure that the C library will pick it up. Do you disagree?
So what sense does /etc/"local"time have then?(FWIW, it's pretty unclear to me what you mean, but I think you're trying to say that the timezone should be a per-user or per-session property. That's an admirable goal and in line with most of the other work I've personally been involved in doing for GNOME (moving things from system- to session-scope: HAL, NM etc.). For example, one application of this would be a huge central mainframe serving thin clients from multiple locations in different timezones.)
Leave /etc/localtime as UTC and use the make sure that the TZ environment variable is always kept in sync for libc compatibility. Now your "ls -l" shows your current preferred time zone.I think you just need to realize the world is a helluva lot bigger than GNOME and pure crack like having date(1) return something different than what my GNOME clock shows is just not a viable approach in the real world.