GNU bug report logs -
#68411
Timezone not detected from /etc/localtime
Previous Next
To reply to this bug, email your comments to 68411 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-guix <at> gnu.org
:
bug#68411
; Package
guix
.
(Fri, 12 Jan 2024 23:30:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Distopico <distopico <at> riseup.net>
:
New bug report received and forwarded. Copy sent to
bug-guix <at> gnu.org
.
(Fri, 12 Jan 2024 23:30:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
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.
Icecat in other hand has an additional bug related with icu[2][3]
and folder policy where `/gnu` is not allowed so in order to make it
work is necessary disable sandbox `MOZ_DISABLE_CONTENT_SANDBOX=1 icecat`
or set manually TZ env `TZ=$(cat /etc/timezone) icecat`, btw I have
`privacy.resistFingerprinting` false.
The weird thing is that in almost all of those reported the error is
the opposite where having a realpath solves it but in guix it is the
problem, perhaps it could be because these apps have updated their code
to make it work with `icu` v72 and guix has v71.
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.
See also:
- https://github.com/NixOS/nixpkgs/issues/238025
- https://github.com/NixOS/nixpkgs/pull/238700
Footnotes:
[1] https://github.com/unicode-org/icu/pull/2323
[2] https://bugzilla.mozilla.org/show_bug.cgi?id=1848615
[3] https://hg.mozilla.org/releases/mozilla-esr115/rev/d7948b142f43
Information forwarded
to
bug-guix <at> gnu.org
:
bug#68411
; Package
guix
.
(Fri, 19 Jan 2024 04:33:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 68411 <at> debbugs.gnu.org (full text, mbox):
Hi,
Distopico <distopico <at> riseup.net> 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 don't know about ungoogled-chromium, but for IceCat, I had
investigated the problem at length in https://issues.guix.gnu.org/59368,
and it seems the bug is not in ICU but in Firefox, triggered in very
specific situations (resistFingerprinting defaults to true before user
prefs are loaded, and resetting the timezone fails in some javascript
that expects /etc/localtime to be a symlink, see:
https://bugzilla.mozilla.org/show_bug.cgi?id=1817004#c8).
--
Thanks,
Maxim
Information forwarded
to
bug-guix <at> gnu.org
:
bug#68411
; Package
guix
.
(Wed, 24 Jan 2024 15:12:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 68411 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On 2024-01-18, Maxim Cournoyer <maxim.cournoyer <at> gmail.com> wrote:
> Hi,
>
> Distopico <distopico <at> riseup.net> 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 don't know about ungoogled-chromium, but for IceCat, I had
> investigated the problem at length in https://issues.guix.gnu.org/59368,
> and it seems the bug is not in ICU but in Firefox, triggered in very
> specific situations (resistFingerprinting defaults to true before user
> prefs are loaded, and resetting the timezone fails in some javascript
> that expects /etc/localtime to be a symlink, see:
> https://bugzilla.mozilla.org/show_bug.cgi?id=1817004#c8).
But in icecat there is tow issues, one is related with the
/etc/localtime that expect a symlink but also there is another one
related with firefox sandbox, you can see here that `/usr` and `/nix`
was added to a whitelist, those paths is where they expect have the
zoneinfo files and `/gnu` is not in that whitelist (I already reported
to firefox), and disabling `MOZ_DISABLE_CONTENT_SANDBOX=1` it and with
the symlink the timezone works again.
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
bug-guix <at> gnu.org
:
bug#68411
; Package
guix
.
(Wed, 24 Jan 2024 19:15:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 68411 <at> debbugs.gnu.org (full text, mbox):
Hello,
Distopico <distopico <at> riseup.net> writes:
> On 2024-01-18, Maxim Cournoyer <maxim.cournoyer <at> gmail.com> wrote:
>
>> Hi,
>>
>> Distopico <distopico <at> riseup.net> 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 don't know about ungoogled-chromium, but for IceCat, I had
>> investigated the problem at length in https://issues.guix.gnu.org/59368,
>> and it seems the bug is not in ICU but in Firefox, triggered in very
>> specific situations (resistFingerprinting defaults to true before user
>> prefs are loaded, and resetting the timezone fails in some javascript
>> that expects /etc/localtime to be a symlink, see:
>> https://bugzilla.mozilla.org/show_bug.cgi?id=1817004#c8).
>
> But in icecat there is tow issues, one is related with the
> /etc/localtime that expect a symlink but also there is another one
> related with firefox sandbox, you can see here that `/usr` and `/nix`
> was added to a whitelist, those paths is where they expect have the
> zoneinfo files and `/gnu` is not in that whitelist (I already reported
> to firefox), and disabling `MOZ_DISABLE_CONTENT_SANDBOX=1` it and with
> the symlink the timezone works again.
In the meantime would you be able to produce a patch adding /gnu to
their allowlist? Then we'd have to look into the javascript code to see
if we can have it understand an actual file instead of symlink.
--
Thanks,
Maxim
This bug report was last modified 1 year and 142 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.