SUMMARY With the system timezone set to UTC, when entering an alarm at a specific date/time, KAlarm always reports that the time has already elapsed. STEPS TO REPRODUCE 1. Set localtime to UTC. 2. Select New>>New Display Alarm... in KAlarm 3. Ensure "At date/time" is selected, and move it forward an hour to make sure it's in the future. OBSERVED RESULT An error message is shown: "Alarm time has already expired" EXPECTED RESULT Alarm is successfully created. SOFTWARE/OS VERSIONS KAlarm: 3.10.0 (KDE Gear 24.12.0) KDE Frameworks: 6.9.0 Qt: Using 6.8.1 and built against 6.8.1 Arch Linux (Xcb) Build ABI: x86_64-little_endian-lp64 Kernel: linux 6.12.6-arch1-1 ADDITIONAL INFORMATION I tracked this down to the offsetAtLocalTime function in kadatetime.cpp. The switch (qTimeSpec(zoneDateTime)) does not account for Qt::UTC or Qt::OffsetFromUTC. In this case, the timespec is QT::UTC.
Thank you for investigating and reporting this. It is now fixed for KAlarm version 3.10.1 (KDE Gear 24.12.1), commit e44424ad52e2875dea167da6a7db4e8b7f5e14c7.