On Tue, Mar 28, 2006 at 12:15:28PM +0100, Paul Howarth wrote: > # /etc/localtime > rm -f $RPM_BUILD_ROOT/etc/localtime > cp -f $RPM_BUILD_ROOT%{_prefix}/share/zoneinfo/US/Eastern > $RPM_BUILD_ROOT/etc/localtime > #ln -sf ..%{_prefix}/share/zoneinfo/US/Eastern $RPM_BUILD_ROOT/etc/localtime > > I think this may have been changed because of rpm's poor handling of > symlinks (e.g. it doesn't like changing between symlinks and real files > on package upgrades). No, symlinks are not used because /usr/share/ doesn't have to be mounted during bootup yet. > >If there are good reasons for Linux to have the default time zone known > >before /usr is mounted (dual-boot with Windows maybe) then I can accept > >that. In that case, tzdata updates must adjust /etc/localtime (which > >shouldn't be a part of glibc either). Time zone changes are legislated, > >it is not up to the individual admin to decide whether to implement them > >or not. Therefore, a .rpmnew file would be wrong, too. > > I agree. It would be better to have a config file specifying the > timezone to use, and a post-install script copying the right timezone > data to /etc/localtime. See %triggerin common -p /usr/sbin/tzdata-update -- tzdata where tzdata-update is statically linked proglet that parses /etc/sysconfig/clock and copies /etc/localtime over. You should just ignore the /etc/localtime.rpmnew file, copying it over is almost always wrong idea. Jakub