On 2024-03-10 01:42, xzx_work_2020 wrote:
I used 'cat Asia/Jerusalem' and the result was "IST-2IDT, M3.44/26, M10.5.0". However, when I used "echo" IST-2IDT, M3.44/26, M10.5.0 ">/tmp/TZ", this did not work.
I would omit the extra spaces after the ","s. Also, don't you need to put it into /etc/TZ? That is, the command should be something like this: echo "IST-2IDT,M3.4.4/26,M10.5.0" >/etc/TZ if you're using OpenWRT with musl.
Question 1: Is it necessary to handle items that exceed 24 hours during use in this way?
POSIX.1-2017 does not require support for the "/26". However, it is a common extension (it's in glibc for example), and the next POSIX release is planned to require support for times from -167:59:50 through +167:59:59. As I understand it, older versions of musl did not support "/26", but newer versions do. (I don't know when this feature was added to musl.) Perhaps all you need to do is upgrade musl versions.
Question 2: I saw from online sources that Asia/Jerusalem entered daylight saving time at 2:00 pm on Friday, March 29, 2024. However, the data in the database seems to be calculated to be 2:00 pm on Friday, the fourth week of March, which is also 2:00 pm on Friday, March 22, 2024. Did I misunderstand this? Or is there an error in the data in the database?
I think you misunderstood it. The relevant line in the "asia" file is: Rule Zion 2013 max - Mar Fri>=23 2:00 1:00 D which says the transition is the first Friday on or after March 23, at 02:00. This matches current Israeli law, which says the transition occurs at 2 am on the Friday before March's last Sunday. This rule cannot be encoded in a POSIX.1-2017 TZ setting, which is partly why the next POSIX release will allow the "/26".