Clock module shows correct DST label but uses standard time offset
bugcustomclockinhibitor
## Description
The clock module displays the correct DST timezone abbreviation (PDT) but applies the standard time offset (UTC-8/PST) instead of the daylight saving offset (UTC-7/PDT). The displayed time is consistently 1 hour behind the actual local time.
## Environment
- Waybar: 0.15.0-2
- OS: Arch Linux
- Compositor: Hyprland
- Timezone: America/Vancouver
- tzdata: 2026b-1
## System clock is correct
- `date` returns correct PDT time
- `timedatectl` shows NTP synced, correct timezone, DST active
- `/etc/localtime` symlinked to `/usr/share/zoneinfo/America/Vancouver`
- `zdump America/Vancouver` returns correct time
- `RTC in local TZ: no` (UTC, as expected)
## Config
```jsonc
"clock": {
"format": "{:L%A %I:%M %p}",
"format-alt": "{:L%d %B W%V %Y}",
"tooltip": false
}
```
## Steps to reproduce
1. Be in a timezone with DST active (e.g. America/Vancouver during summer)
2. Observe clock module time is 1 hour behind system time
3. Add `%Z` to format string to confirm waybar reports "PDT" while showing the wrong offset
## What I tried (none fixed it)
- Setting explicit `"timezone": "America/Vancouver"` in clock config
- Setting `TZ=America/Vancouver` in waybar's process environment
- Restarting waybar
- Using `{:%A %I:%M %p %Z}` format (shows "PDT" but still wrong time)
## Workaround
Replaced the built-in clock module with a custom module that calls `date`:
```jsonc
"custom/clock": {
"exec": "date +'%A %I:%M %p'",
"interval": 30
}
```
This displays the correct time, confirming the issue is in waybar's internal chrono/date library DST offset handling, not the system configuration.
关闭于 2026-07-04 3 条评论