V březnu byla oznámena spolupráce GrapheneOS s Motorolou. Nejnovější vlajka Motorola Signature 27 je první Motorola s oficiální podporou GrapheneOS. GrapheneOS (Wikpedie) je varianta Androidu zaměřující se na bezpečnost a soukromí.
Omarchy (Wikipedie) je linuxová distribuce s dlaždicovým správcem oken Hyprland. Založena je na Arch Linuxu. Vydána byla v nové verzi 4.5.0. Nově také pro Apple Silicon, konkrétně pro M1/M2/M3/Neo MacBooky.
Byla vydána nová stabilní verze 8.3 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 156 s bezpečnostními opravami z Chromia 157. Přehled novinek i s náhledy v příspěvku na blogu.
Multimediální přehrávač mpv byl vydán ve verzi 0.42.0. Jde o větší balík změn po bezmála roce. Mimo jiné se lépe integruje s Waylandem nebo rozšiřuje podporu DVD/Blu-ray, např. umožňuje přehrávat rovnou obrazy médií (soubory iso).
Desktopové prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklé sloučením projektů Razor-qt a LXDE bylo vydáno ve verzi 2.5.0. Přehled novinek v poznámkách k vydání.
Byla vydána (𝕏) nová verze 8.0 LTS open source monitorovacího systému Zabbix (Wikipedie). Přehled novinek v oznámení na webu, v poznámkách k vydání a v aktualizované dokumentaci.
Byla vydána verze R14.1.7 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.
Bazzite (Wikipedie), tj. linuxová distribuce vycházející z Fedora Linuxu a optimalizována pro hraní počítačových her, byla vydána ve verzi 45. S Open Gaming Collective (OGC) jádrem a novým Easy Anti-Cheatem pro Linux (EAC Linux v2).
MikroTik zveřejnil vlastní bezpečnostní upozornění potvrzující, že zranitelnost linuxového jádra postihuje také RouterOS 7. Jde o use-after-free při zpracování IPv4 TCP spojení s IP options. Zranitelnost se týká provozu směřujícího na TCP službu samotného routeru, nikoli paketů, které router pouze přeposílá. Opraveno v long-term od 7.24.6, v stable od 7.25.1 a devel od 7.26beta5.
Nazdar. Mám datum v UTC v datetime a chci jej konvertovat do jiného timezone. Způsob detekce lokálního timezone jsem hledal dost dlouho. Našel jsem pouze to, že jméno lokálního timezone je v time.tzname a to se dá použít k vytvoření timezone objektu a ten pak použít pro konverzi. Našel jsem tento způsob:
In [69]: dtn=datetime.datetime.now(tz=pytz.UTC) In [70]: dtn Out[70]: datetime.datetime(2010, 7, 12, 0, 13, 17, 236937, tzinfo=<UTC>) In [71]: dtn.astimezone(pytz.timezone(time.tzname[0])) Out[71]: datetime.datetime(2010, 7, 12, 2, 13, 17, 236937, tzinfo=<DstTzInfo 'CET' CEST+2:00:00 DST>)Je to OK? Práce s daty je v Pythonu utrpení. Řekl bych, že tenhle kód by měl bezpečně zjistit lokální TZ a konvertovat to. Ani s přestupným rokem by nemusel být problém, ale tady jsem trochu na vážkách, jestli dělám správně, že používám první prvek z tuplu tzname. Ten by měl vracet timezone bez dayligt saving time.
pytz.timezone("CET") funguje, pytz.timezone("CEST") způsobí:
UnknownTimeZoneError: 'CEST'
time.tzname bude vždy správný údaj). Sám vidíš, že se to do CEST převedlo správně. Stojí za povšimnutí, že nastavení tz přímo v konstruktoru datetime funguje správně jen u časových zón bez DST (takže zrovna u UTC to naštěstí funguje); jinak je doporučeno používat metodu localize. V případě problémů lze použít ještě metodu normalize (pro převod do DST a zpět). (Obojí jsou metody objektu časové zóny. Píšu to sem proto, aby si nějaký jiný náhodný čtenář nemyslel, že je to tak jednoduché.)
Proč by měl být problém zrovna přestupný rok?
Obecně asi nejlepší způsob je používat všude UTC a do jiných zón převádět jen při výpisu uživateli; bylo by fajn, kdyby stejně jako se ujalo UTF-8, se ujalo i UTC
Tiskni
Sdílej: