Thunderbird timezone and date formats

Thanks for this.

Re the timestamp, I mean that if I send a mail at 2pm, Thunderbird lists it as being sent at midnight - its out by 14 hours.

Also, as a different (?) problem, it shows the date in the wrong format (i.e. mm/dd/yyy not dd/mm/yy).

I’ll search the forum for previous discussions.

For anyone who reads this in the future looking for an answer to the Thunderbird time issue, the solution was:

in dom0:

sudo timedatectl set-timezone 'Your Region/Your city'

See this reference for better instruction.

This corrected the timestamp in Thunderbird, but it still displays the date in the wrong (mm/dd/yyyy) format.

Bonus: also corrected the clock displayed on the lockscreen dialog box.


@tree I believe that what you’re looking for to fix the date format is how to set the locale.

You’ve set the timezone (what time it is in your location, like GMT+01:00), the locale will tell Thunderbird about how folks write dates and time where you live (it will look like en_GB).

Both are usually related, but are nonetheless distinct. For example, some locales are spread across multiple time zones (e.g. en_US). And some time zones cover more than one locale (e.g. GMT+01:00 covers fr_FR, es_ES, ar_DZ and many others.)

thanks again, @gonzalo-bulnes

However, it seems this is not simply a matter of locale - try all you like (I have, [sigh…]) but Thunderbird will just ignore any changes.

Instead, you need to override Thunderbird preferences using the config editor (follow these instructions).

Date format now fixed.

1 Like

That’s annoying! :slightly_frowning_face: Thank you for sharing the solution again @tree , the next person trying to get Thunderbird configured will have an easier time! :slightly_smiling_face:

@sven - [assuming you are a mod]

I don’t know if this is poor form (apologies if so), but I wonder if you could split this thread so the discussion of Thunderbird and timezones and date formats (last 5 posts) stands on its own?

It took quite a bit of digging to find the solution. (I didn’t find anyone’s existing thread providing the solution I needed). It would be nice to make it easy to find for others in the future. As it is, the thread looks off-topic at first glance.

Title for the new thread could be “Thunderbird timezone and date formats”.

Thanks - sorry again if this request is out of line.


1 Like


1 Like

If one is into minimal templates and has a chain of “ancestry” from debian-11-minimal, it can also be sufficient to issue this command:

localedef -f UTF-8 -i en_US en_US.UTF-8

in your “root” or starting template (in my case named deb11m-sys-base). This is probably close to equivalent to cayce’s solution (which amounts to editing configuration files then resetting to the locale defined).

Every other template I use is created by cloning this one (or cloning a clone, or cloning a clone of a clone, etc) so doing this in just the one place works for me. That can be done either with an automated script used for installing software in the template (@sven style), or in a salt recipe (@unman style). [I know that you are not supposed to “run” things in a template, but this is configuration, not running an app.]

Obviously if you want to “retrofit” existing templates you will have to go into each one separately just as cayce recommends. (I avoid this by having my salt recipes include the ancestor recipe, so the next time I update any template, it gets done for that template.)

And with this just like with cayce’s solution…your mileage may vary.

Debian-11 has a standard configuration, unless I miss something.
Which aspect is “ill-configured” in the default full template?

Maybe “ill-configured” was a poor choice of words; apologies as, no disrespect was intended. :handshake:

Aside from leveraging for troubleshooting here and there, I’ve moved away from using the standard template altogether but, the last time I checked locale (at least for me). I’d be happy to hear if this issue been addressed in later shipping releases. :hugs:

Perhaps it’s more simple to express with an example?


  • User intends to install software package “xyz”
  • One of said package’s dependencies is postgresql (many other examples as well)
    – This dependency makes use of locale configuration during it’s post-install which, will fail with:

Setting up postgresql-13 (13.9-0+deb11u1) …
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Error: The locale requested by the environment is invalid:
Error: could not create default cluster. Please create it manually with
pg_createcluster 13 main --start
or a similar command (see ‘man pg_createcluster’).
update-alternatives: using /usr/share/postgresql/13/man/man1/postmaster.1.gz to provide /usr/share/man/man1/pos
tmaster.1.gz (postmaster.1.gz) in auto mode
Setting up postgresql (13+225) …
Setting up sysstat (12.5.2-2) …
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory

also clearly indicated during apt install actions

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LANG = “en_US.UTF-8”
are supported and installed on your system.
perl: warning: Falling back to the standard locale (“C”).
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory

  • Inexperienced user glosses over these errors and, begins down a rabbit-hole of troubleshooting why package “xyz” doesn’t “just work”
  • Inexperienced user makes post to forum requesting help but, doesn’t state which base OS was used, provide any logs or any other pertinent context
  • Postulating, mind-reading, crystal balls, exercises in futility et al. ensue

Again, my intent wasn’t to bag out your template maintenance efforts and, hope this offers additional clarity!

Thanks for this @cayce - disrespect not felt at all.
My problem is that I don’t see any of these issues with the normal
template - of course, they are there in the minimal template, no doubt.
But (as so often said) the minimal templates are intended for expert
users and I would expect such a user to set locales correctly, for their
I may be missing something here: perhaps we should set the full locales
in the minimal template also.
As I recall the issue you cite related to Whonix templates, rather than
the standard Debian.

I never presume to speak for the Qubes team. When I comment in the Forum or in the mailing lists I speak for myself.
1 Like

Apologies for my delayed response as, I wanted to carve out some :stopwatch: to :ok_hand: my ineptitude.

I stand corrected (and have amended my misstatement to reflect such so as to reduce confusion for others reading) and you are indeed bang on; thank you kindly for providing this clarity!

I could have sworn this issue was present in debian-11 but, I guess I lost track of naming conventions I used for bullseye stuffs. :person_shrugging:

Because this small adjustment is a matter of configuration rather than installation, I would side with this sentiment also as, I see little reason not to aside from prioritizing maintaining the concept of purity over usability. After all, they would in fact continue to be “minimal” templates.

I tend to agree. This is the sort of thing that might not show any obvious symptom…until you start an executable from the command line, then you get an annoying message about how there’s no locale so it’s going to use the default.(Which in my case turns out to be suitable, so why bother ME with this??)

I had to research how to set a locale since technically I probably wasn’t “ready” for a minimal template when I started using them. (University of Google and University of Stack Overflow have been most helpful in closing the gap!) Anyhow it’s just the sort of pesky and sometimes harmless thing that a lot of people will figure ought to be taken care of…silently. And it falls through the cracks because if opening an app with a shortcut you’ll never see the error message (again an indication that’s not “serious”).