Hi, Distopico <[email protected]> writes:
> Apps such as Icecat or ungoogled-chromium are not able to get the > correct timezone from /etc/localtime when `/etc/localtime` is a realpath > maybe because it expect /etc/share/zoneinfo, with readlink partially > works fine some apps, maybe related with an icu bug.[1] > > I just removed manually `/etc/localtime` and crate an symlink `sudo ln > -s $TZDIR/$(cat /etc/timezone) /etc/localtime` and ungoogled-chromium > works fine. [...] > Steps to reproduce it: > > - guix pull && guix package -u > - Install last icecat or ungoogled-chromium version > - Verify that you don't have $TZ set, unset it. > - If it's Icecat open `about:config` and set `privacy.resistFingerprinting` > to false > - Open https://webbrowsertools.com/timezone/ in the browser > - Check the timezone > - sudo rm -r /etc/localtime && sudo ln -s $TZDIR/$(cat /etc/timezone) > /etc/localtime > - Open chromium or `MOZ_DISABLE_CONTENT_SANDBOX=1 icecat` > - Visit https://webbrowsertools.com/timezone/ again, check the timezone. I was trying to reproduce using ungoogled-chromium from Guix commit c23b9a1 (which is at version 140), but it does not seem to be an issue for it anymore for ungoogled-chromium: --8<---------------cut here---------------start------------->8--- $ file /etc/localtime /etc/localtime: timezone data (fat), version 2, 4 gmt time flags, 4 std time flags, no leap seconds, 9 transition times, 4 local time types, 12 abbreviation chars $ echo $TZ $ chomium --8<---------------cut here---------------end--------------->8--- Then Ctrl+Shift+I, type Date() in console -> gets my correct time zone. >From IceCat, it resolves the issue. Using a system reconfigured with <https://codeberg.org/guix/guix/pulls/4178>, and also https://codeberg.org/guix/guix/pulls/4179 so that /gnu is reachable from the sandbox (you could set MOZ_DISABLE_CONTENT_SANDBOX=1 instead): --8<---------------cut here---------------start------------->8--- $ file /etc/localtime /etc/localtime: symbolic link to /gnu/store/1zwwykw79j5xz1iaiia56hwqxdqnrk2c-tzdata-2025a/share/zoneinfo/Asia/Tokyo $ echo $TZ $ icecat --8<---------------cut here---------------end--------------->8--- Settings -> IceCat settings -> Ensure 'Resist Fingerprinting' is disable. Then Ctrl+Shift+I, type Date() in console -> Asia/Tokyo Now, I'm confused, because I reverted /etc/localtime to a plain file, and it continues to work in IceCat. Tentatively marking as fixed. -- Thanks, Maxim
