Josse-posten

Handshakes in Beijing, eight hundred drones over Ukraine, and a spy operation reaches Norwegian doorsteps.

The Great Hall

Trump and Xi shake hands at the Great Hall of the People in Beijing. Photo: AFP / Al Jazeera

Trump and Xi sat down in Beijing — the first US-China presidential summit on Chinese soil since Trump’s first term. Xi invoked the Thucydides Trap and warned that Taiwan could mean conflict between superpowers. Trump called Xi a “great leader” and sought wins on trade, AI, and the Iran war. Analysts noted China holds the stronger hand: America’s perceived global decline has fueled Chinese nationalism, while Trump has “lost his novelty value” in Beijing. The Iran war, tariffs, Taiwan, rare earths, and AI governance were all on the table — with China under simultaneous pressure from a US naval blockade that a Chinese supertanker had just tested at Hormuz.

The Guardian · BBC · Al Jazeera · AP · NRK · E24

Eight Hundred Drones

Russia launched more than 800 drones in a massive daytime assault on May 13 — the war’s largest single wave — then followed up overnight with 731 additional aerial assets including ballistic missiles. A Kyiv apartment building collapsed; one dead, 36 injured. Strikes reached Uzhhorod in Zakarpattia near the EU border: Slovakia briefly closed a crossing and Hungary summoned the Russian ambassador for the first time — a notable break from Orbán’s Russia-accommodating posture. ISW assesses Russia stockpiled weapons during the Victory Day ceasefire. Zelenskyy said the timing was deliberate: Moscow struck while Trump was shaking hands in Beijing. (Full coverage in Ukraine)

“Remember, I Can Only Help Them If You Cooperate”

PST went public about a Russian intelligence operation targeting Ukrainian refugees in Norway. The playbook: map a target’s background and family in Russian-occupied territory, make friendly contact, then apply pressure. Intercepted messages included lines like the headline above. PST chose public disclosure over quiet arrests — a deliberate counter-intelligence move to narrow Russia’s operational space. With over 83,000 Ukrainians in Norway since 2022, PST calls this a growing security challenge. A documented case on Sørlandet shows the pattern: friendly approach, then demands for information on Norwegian defence and preparedness. (Also in Norway)

Indicator Value Change
S&P 500 7,446 +0.61%
Nasdaq 26,407 +1.22%
Oslo Børs (OSEBX) 1,987 +0.51%
EUR/USD 1.171
USD/NOK 9.19 +0.02%
Brent Crude $105.87 +0.22%
Bitcoin $79,640 −1.7%
  • Norsk krone på sterkeste siden 2022 — perfekt storm for grensehandel (se Norge)

World

Day 76: The Senate Folds, a Supertanker Doesn’t

The US Senate fell short of the votes needed to curb Trump’s war powers over the Iran conflict — three Republicans broke ranks, but not enough. Meanwhile, a Chinese supertanker pierced the US-enforced naval blockade at Hormuz, testing the cordon’s limits. VP Vance said negotiations with Iran were making progress. BRICS foreign ministers convened in India to coordinate a non-Western response to the conflict.

Twenty-Two Dead in Southern Lebanon

Smoke rises from an Israeli airstrike on Jarjouaa, southern Lebanon, May 13. Photo: AFP / Al Jazeera

Israeli air strikes on southern Lebanon and south Beirut killed at least 22 people including eight children. Two paramedics were among the dead. Despite months of strikes and continued Israeli occupation of parts of southern Lebanese territory after the ceasefire, Hezbollah support remains strong among residents who see the group as their only credible defence.

The Visit That Didn’t Happen

Netanyahu claimed he made a secret trip to the UAE to meet President Sheikh Mohamed bin Zayed at the height of the Iran war. The Emirates flatly denied it — an unusual public contradiction between Abraham Accords partners. Iran seized on the episode to frame the war as part of a broader anti-Iranian coalition.

Ten Months in the Dark

A covert UNRWA operation rescued millions of historical documents chronicling generations of Palestinian displacement from Gaza and East Jerusalem. The archive was smuggled to Amman over ten months via routes that should have taken hours. The rescue preserves irreplaceable records of Palestinian refugee history at a time when Israel has sought to defund and delegitimize UNRWA. The story is as much about institutional memory as politics — without these records, the documented history of millions of people would simply cease to exist.

Epstein: A Survivor Testifies; A Commission Gets Funded

In Washington, an Epstein survivor identified as Roza testified before Democratic lawmakers that she was abused while Epstein was under house arrest. Separately, Commerce Secretary Howard Lutnick acknowledged three meetings with Epstein in a closed-door House committee transcript, calling them “inconsequential.” I Oslo bevilget regjeringen 22 millioner kroner til Epstein-granskingskommisjonen, ledet av tidligere avissjef Amund Djuve, med endelig rapport til Stortinget innen 31. januar 2028. (Also covered in Norway)

Cuba Runs Dry

Cuba has completely exhausted its diesel and fuel oil reserves under the US oil blockade. The Trump administration offered $100 million in aid contingent on political reforms — Cuba refused. More than 30 members of Congress separately urged the administration not to pursue a military takeover or continue using Guantánamo Bay for migrant detention.

Gunfire in the Philippine Senate

Gunshots rang out in the Philippine Senate as police tried to arrest Senator Ronald dela Rosa — former national police chief under Duterte’s deadly drug war, now wanted by the ICC for crimes against humanity. Dela Rosa had taken refuge in the Senate chamber. Authorities believe he secretly fled during the standoff.

Paratroopers for a Plague Ship

A hantavirus outbreak linked to the cruise ship MV Hondi triggered an extraordinary response: British Army paratroopers dropped onto Tristan da Cunha in the South Atlantic to assist a suspected patient, a woman is isolating on Pitcairn Islands in the South Pacific, and six Australian passengers are being flown home from the Netherlands in full PPE. Separately, 1,700 passengers on an Ambassador Cruise Line vessel were quarantined in Bordeaux after a suspected norovirus death — a coincidence of timing that underlines how cruise ships remain floating incubation chambers.

Also today

  • EU sanctions Israeli settlers after Hungary drops its long-standing veto — Washington Post
  • Israeli coalition proposes early elections amid ultra-Orthodox exemption crisis — The Guardian
  • Senate confirms Kevin Warsh as Fed chair — NPR
  • Foreign investors exit India at record pace — Yahoo Finance
  • Iran executes protester detained during January unrest — Iran International
  • Iran demands Pride flags banned from World Cup stadiums — OutSports
  • Venezuela students block Caracas highway; Trump posts “51st state” graphic — Al Jazeera · CTV
  • Canada pivots toward EU as Trump’s trade war pushes Ottawa away — Bloomberg
  • US-Mexico relations at their most tense since the 1980s — The Guardian
  • DR Congo: survivors recount atrocities in captured Uvira — BBC
  • British national’s health declining in Saudi prison over social media posts — The Guardian
  • Bahamas re-elects PM Davis — first back-to-back win in nearly 30 years — The Guardian
  • Neanderthals may have performed dental procedures 59,000 years ago — NPR

Ukraine

Russia’s largest aerial assault of the war coincided precisely with Trump’s arrival in Beijing. The 1,600+ combined aerial assets across two waves make it the most intensive 24-hour bombardment since the full-scale invasion. On the ground, Ukraine advanced near Oleksandrivka while the Kremlin doubled down on demands disconnected from battlefield reality.

The Barrage

First responders search for victims in a collapsed building in Kyiv’s Darnytskyi district, May 14. Photo: Kyiv Independent

In the first wave on May 13, Russia launched over 800 drones — an unprecedented daytime swarm. ISW counts 892 assets in that wave alone. Overnight, a second combined strike deployed 731 more, including ballistic missiles. Air defences downed 41 missiles and 652 drones. In Kyiv, a residential building in Darnytskyi district partially collapsed — one dead, 36 injured, 11 high-rises damaged. Kharkiv recorded 16 injuries the same morning. Uzhhorod, near the Slovak and Hungarian borders, was also hit. Slovakia briefly closed the Velké Slemence crossing. Hungary summoned the Russian ambassador — a first under Orbán. ISW assesses Russia exploited the Victory Day ceasefire to stockpile weapons specifically for this escalation.

Deep Strikes at 1,500 Kilometres

Damaged infrastructure at Russia’s Taman port after Ukrainian drone strike, May 13. Photo: SSO of Ukraine / United24

On the night of May 12–13, Ukraine hit Russian energy infrastructure at record range: the Taman oil terminal on the Black Sea coast, the Yaroslavl refinery (~750 km), the Astrakhan gas processing plant (~645 km), and the Nurlino pumping station in Bashkortostan (~1,500 km). Reuters confirmed the May 7 strike on the Lukoil Perm refinery forced a complete production shutdown requiring weeks of repairs. Moscow has banned publication of Ukrainian strike damage without official permission — itself a signal of the campaign’s effectiveness. At least 27 long-range strikes have hit Russia since May 1.

The Kremlin’s Fantasy Timeline

Peskov formally demanded Ukraine withdraw from all four annexed oblasts before talks can resume — the most explicit statement yet of Russia’s maximalist precondition. FT sources say Putin’s generals have promised him full Donbas seizure by autumn 2026, but ISW calculates Russia has gained only 349 sq km in Donetsk since January (~2.6 sq km/day), making the timeline fiction. Trump denied agreeing Russia should control all Donbas. Lavrov said “nothing is happening” in talks. One ambiguous signal — Putin addressing Zelenskyy as “mister” for the first time — was noted by Morgan Stanley as a possible tonal softening, though the context of simultaneous mass strikes makes the reading strained.

Oleksandrivka and 241 Clashes

Ukrainian forces advanced in the Oleksandrivka direction in southeastern Donetsk — gains into Oleksandrohrad and south of Andriivka-Klevtsove — supported by sustained air interdiction of Russian logistics near Velyka Novosilka. May 14 recorded 241 combat clashes; Pokrovsk (36 attacks) and Hulyaipole (32) were the most active sectors. Russia deployed new Gerbera and Molniya drone modifications in the Pokrovsk direction.

Western Support Strengthens; Yermak Arrested

Germany pledged €11.5 billion in military aid for Ukraine’s defence production. NATO Secretary General Rutte proposed allies allocate 0.25% of GDP annually to support Ukraine. The Ukraine Support Act gathered enough signatures to force a US House floor vote. Ukraine signed a Drone Deal defence pact with Lithuania. In a significant domestic development, former Presidential Office chief Andrii Yermak — one of Ukraine’s most powerful officials — was detained by the Anti-Corruption Court, facing UAH 140 million (~$3.4M) bail on money laundering charges.

Russia’s Parliament Clears Invasion Law

The State Duma passed legislation formally granting Putin legal authority to invade foreign countries — stripping away remaining domestic legal pretense from what Russia has already been doing in Ukraine, and signalling the Kremlin’s intent to keep the door open for further expansionist action.

Norway

21,5 milliarder for Norgespris

Regjeringen la frem et stramt revidert nasjonalbudsjett. Norgespris-ordningen koster 21,5 milliarder — langt over alle estimater. Olje- og gassinntekter justeres opp med over 164 milliarder kroner etter kraftig prisvekst. Regjeringen henter inn 4,3 milliarder i utbytte og 15 milliarder i økte skatter, og gir 600 millioner ekstra til veivedlikehold og 150 millioner til godsnæringen etter Levanger-raset. Boligbyggingen anslås vesentlig lavere enn forventet.

Lørenskog: 4000 ansatte uten e-post

Cyberangrepet mot Lørenskog kommune. Foto: NTB / Digi.no

Lørenskog kommune oppdaget at angripere hadde trengt seg inn i IT-systemene og har stengt ned hele infrastrukturen. Alle 4.000 ansatte — skoler, sykehjem, kontorer — er uten e-post og Teams. Eksamener henger i en tynn tråd. Gjenoppretting ventes å ta to til tre uker. Eksperter advarer om at mange norske kommuner mangler forutsetninger for å stå imot slike angrep.

Flybrølet

Et historisk bredt stortingsflertall tvinger regjeringen til å opprettholde statsstøttede flyruter i Sør-Norge. Høyre og Senterpartiet var sentrale drivkrefter. Samferdselsminister Nygård kritiserte Høyre for å støtte forslaget uten inndekning. Det er regjeringens andre store stortingsnederlag på kort tid, etter dieselbrølet om drivstoffavgifter.

NRK · E24 · DN

FrP dobbelt så store — og velgerne er fattigere enn snittet

Ny måling viser FrP dobbelt så store som Høyre — høyeste nivå siden 2008. Samtidig viser forskning at FrP-velgere har lavere utdanning, dårligere helse, lavere inntekt og mer usikker tilknytning til arbeidslivet enn velgere i de fleste andre partier — den demografien som er mest avhengig av sterke velferdsordninger. I regjering har FrP konsekvent svekket arbeidstakerrettigheter og kuttet i velferd. Tråden på r/norge utløste en lang debatt om klasse, politisk fangenskap og hvem som faktisk taper.

Tre streikefronter

Norsk sokkel kan rammes av streik. Foto: NTB

Bryggeriene: Enighet natt til torsdag mellom NHO Mat og drikke og NNN — ingen øl- og brusstreik. Tvistepunktet var forskuttering av sykepenger, som har skapt meglingskø i årets oppgjør. En forsker advarer om at kravet kan utløse flere streiker i andre bransjer.

Hotell og restaurant: Streiken er i fjerde uke. Riksmekleren kaller inn partene 19. mai — et prosedyremøte etter 30 dager. Streiken er utvidet til flyplasser.

Oljeservice: Brudd i forhandlingene mellom Styrke og Offshore Norge. Saken går til Riksmekleren; feiler mekling, kan 7.200 ansatte tas ut i streik på norsk sokkel.

Russ 2026: eksamen først — og bussene nektes

Russefeiringen starter for første gang etter eksamen-først-modellen. Samtidig vurderer ni russebussgrupper massesøksmål mot staten: de bygde om bussene etter nye krav som trådte i kraft 1. januar 2026, men ble likevel avvist av Statens vegvesen. Busser skal også ha stukket av fra kontroll i Møre og Romsdal.

Dødelig sykkelulykke i Enebakk

En mann i 50-årene ble drept da to biler kolliderte under forbikjøring og kjørte inn i et sykkelfølge på riksvei i Enebakk. Seks andre ble sendt til sykehus, én kritisk. De omkomne og skadde er foreldre til barn i lokalsamfunnet.

Norway — Street Level

Privatiseringens pris: 138 av 166 ansatte ved Bjølsenhjemmet og andre sykehjem fikk lavere lønn etter overføring til Norlandia — til tross for en eksplisitt lønnsgaranti i kontrakten. Kommunens egen gransking avdekket avviket. — Aftenposten · r/oslo

IKEA vs. sykkelkrav: IKEA vil bygge lager på Forus med 590 bilplasser. Statsforvalteren krevde 1.099 sykkelplasser under nullvekstmålene. Stortingsflertall varsler at de vil overstyre vedtaket — MDG kaller det politikere som undergraver klimajussen. — NRK Rogaland

«Jeg tipser meg selv i selvbetjeningen»: En av dagens mest diskuterte r/norge-tråder: innlegg om å systematisk skanne færre varer — som «kompensasjon» for ulønnet kassaarbeid. Kommentarene delt mellom «dette er tyveri» og seriøs kritikk av at butikkene velter bemanningskostnader over på kundene. — r/norge

Også i dag

  • Europol «most wanted» knyttet til kidnapping og drapsforsøk i Vestfold — NRK
  • Norge inn i EU-forsvarsprogram — styrker eksportkontroll — Dagsavisen · TU
  • ERTMS: nye forsinkelser og kostnadsøkninger — Moss tidligst desember 2032 — TU
  • BankID-klarering under press — NAV kaller det «alvorlig» — E24
  • Jermak pågrepet for hvitvasking — Aftenposten (også i Ukraine)
  • Barnefattigdom øker — Norge faller fra 3. til 4. plass i UNICEF-rangering — Dagsavisen
  • Marius Borg Høiby: lagmannsretten forkaster anke om fotlenke — sitter inne til dom 15. juni — NRK
  • Åtte dømt i stor innsidesak knyttet til Verdane — fire til fengsel — DN
  • Israel til Eurovision-finalen — buet og applaudert — NRK
  • Jonas Lovv gjennom juryprøven i Wien — stemmetrener hastehentet — NRK
  • Rekordsterk krone + svenske prisfall = perfekt grensehandel-storm — E24 · NRK
  • Netflix øker prisene med 20 kroner fra fredag — NRK
  • HMS Prince of Wales besøker Stavanger — TU
  • Første hydrogenferje på plass — til Lofoten — NRK
  • Rekordstore skogbrannområder globalt i 2026 — fire ganger Norges areal brent — NRK
  • Morrow Batteries: tosifret antall interessenter etter konkurs — DN
  • AI-genererte klager oversvømmer kommuner med feil — Digi.no
  • 17. mai-vær: regn i sør, sommerstemning i Finnmark — NRK

Grassroots

  • Nullutslippskrav på offentlige bygg kan øke kostnadene 40 % — Nettavisen · r/norge
  • Staten tapte Jehovas vitner-saken om tilskudd — religiøs frihet kutter begge veier — r/norge
  • Hamse Ali-anken: spleisepenger og falsk forklaring til retten — Bergens Tidende · r/norge

Tech

C++26 Hardens the Standard Library

C++26 (P3471R4) converts undefined behaviour in container access — operator[], front()/back(), span/string_view indexing, optional/expected dereferencing — into runtime contract violations. Google deployed this across hundreds of millions of lines: over 1,000 bugs found including security-critical ones, 0.30% performance overhead, 30% reduction in baseline segfault rates. Activation is implementation-defined, typically -fhardened.

Pyrefly v1.0

Pyrefly v1.0 — Meta’s production Python type checker. Image: Pyrefly

Meta’s Python type checker hits production after adoption at Instagram, PyTorch, NumPy, Pandas, and JAX. Since beta: full type-checking on PyTorch is 34% faster, incremental editor updates 125x faster (19ms vs. 2.4s). New in 1.0: built-in Pydantic and Django support, a gradual adoption mode for high-confidence-only errors, and experimental tensor shape checking for PyTorch. Already the most-downloaded extension on Open VSX.

Three Critical Vulnerabilities

Four remote memory corruption issues found in NGINX by Depth First’s automated analysis. Diagram: Depth First Research

YellowKey — A published PoC demonstrates that BitLocker-protected drives can be unlocked using only a crafted USB stick. The technique appears to exploit a mechanism resembling a deliberate backdoor rather than an implementation bug. Full exploit code on GitHub. — GitHub · Tom’s Hardware · HN

NGINX Rift — CVE-2026-42945 is a heap buffer overflow in the rewrite module, present since 2008 — every NGINX version from 0.6.27 to 1.30.0. The bug: inconsistent escaping between a length-calculation pass and a data-copy pass when rewrite with a question mark meets set with a regex capture group. An attacker sprays the heap with POST bodies containing fake function pointers, exploiting deterministic memory layout across worker processes. Result: unauthenticated RCE on NGINX Open Source, Plus, and F5 products. — Depth First Research · Lobsters

Fragnesia — A logic bug in Linux XFRM’s ESP-in-TCP subsystem lets unprivileged users write arbitrary bytes into the kernel page cache of read-only files — no race condition needed. TCP sockets transitioning to espintcp mode process queued file pages as ESP ciphertext, enabling XOR keystream writes into cached pages. The practical exploit writes a setuid stub into /usr/bin/su’s page cache and spawns a root shell. All kernels before the May 13 patch are affected. — GitHub · Lobsters

Five Years, Five Million Dollars, One Mistake

The YC-backed Wasp team built a full-stack web framework around a custom DSL to eliminate “accidental complexity.” After five years they’ve concluded the language itself was the mistake: it created a perception barrier, IDE tooling proved far harder than expected, and it lacked TypeScript’s ecosystem. The core value — a high-level app specification — was always separable from the custom syntax. They’re now replacing the DSL with TypeScript.

The Missing Primitive

The classic stateless-compute-plus-centralized-database pattern breaks for LLM agents, which need long-running processes, stateful conversation context, and bi-directional interruption. Current systems poll the database as a message bus because there’s no way to route to a specific durable process. The author identifies the missing piece: “a routable transport name that isn’t a server” — named pub/sub channels where both client and agent connect by name, enabling stateful communication without polling.

Also today

  • Erlang/OTP 29.0: native records (EEP-79), post-quantum x25519mlkem768 as default key exchange, secure-by-default SSH — Erlang.org
  • EHQL: domain-specific query language for non-technical analysts — semantic keywords instead of SQL — nchammas.com
  • Nibble: single-pass LLVM IR compiler in 3000 lines of C — no AST, no malloc — GitHub · HN
  • rqlite WAL snapshots shrink Raft checkpoint data by up to 100x — philipotoole.com
  • MacBook Neo ($599, A18 Pro, 8GB): “the laptop most people should buy” — JD Hodges · Lobsters
  • Sovereign Tech Fund invests €1M+ in KDE testing and security — KDE.org
  • ovlt: ~20MB self-hosted auth server in Rust, alternative to Keycloak — r/selfhosted
  • Rybbit v2.6.0: self-hosted analytics reaches 12k stars — rybbit.com

Linux & Infrastructure

Hyprland 0.55: The Lua Migration

Hyprland desktop after migrating to 0.55 Lua config. Photo: r/hyprland

Hyprland 0.55 replaces hyprlang with Lua as the primary config format, requiring a full config rewrite. Users report the migration takes a couple of hours and the result is cleaner. Several plugins have breaking changes — hyprbars silently dropped onNewButton, leaving buttons invisible until updated. The exec-once = [workspace 1 silent] firefox syntax needs Lua equivalents. NixOS unstable has not yet picked up 0.55.

The ecosystem responded quickly: hyprlang-to-lua.nvim uses tree-sitter to transpile old configs (alpha, “90% of the way”). And Hyprsnake renders a full Snake game on the desktop using Foot terminal windows as pixels — a proof-of-concept showing what Lua config makes possible.

The Dendritic Nix Pattern

A new approach to structuring NixOS flakes around “aspects” (logical concerns like services or apps) rather than hosts, using flake-parts. It addresses common pain points: duplicated wiring across NixOS/home-manager/Darwin, scattered enable options, and multi-context setups like standalone home-manager on Fedora. The repo documents eight distinct aspect patterns (Simple, Multi-Context, Inheritance, Conditional, Collector, Constants, DRY, Factory). Community members also recommend Den, a framework implementing these principles with built-in multi-context handling.

Browser in the Agent Loop

A blog post describes wiring chrome-devtools-mcp to AI coding agents (Claude Code, Codex, OpenCode) using Nix for reproducible binary management. One flake dependency provisions Chrome-for-Testing and Node, then starts the MCP server. Agents gain DOM inspection, screenshots, network monitoring, and JS heap snapshots — enabling self-correction by examining their own browser output.

Four Homelab Projects

Zigbee2MQTT mesh in Lovelace — Custom D3-based card renders the Z2M mesh visualization directly in a HA dashboard, eliminating the need to open the Z2M frontend. — GitHub

3D floorplan — FOSS offline viewer in a single 1.3MB HTML file. React-based. Pairs HA entity states with 3D room visualization. — r/homeassistant

Shark vacuum → MQTT — ESP32-C3 triggers physical buttons via GPIO, publishes events to HA. No cloud dependency. — GitHub

E-paper remote — Battery-powered media remote on Lilygo T5, controls TV/AV/Roku with multi-room selection. — GitHub

Also today

  • Graphical Nix store explorer in development — dependency graphs and store size — r/NixOS
  • NixOS RPi5 flake updated: nixos-generators out, build-image in — Discourse
  • nixfmt disable-formatting directives under discussion — Discourse
  • BTRFS on SSDs: checksum, zstd, and discard notes for NixOS — Discourse
  • Kopia deprecating Backblaze B2 — self-hosters evaluating alternatives — r/selfhosted
  • px2ansi-rs: terminal art engine in 10 rendering modes with NixOS flake — GitHub
  • Cue: Go TUI for Plex/Jellyfin with MPV playback and fuzzy search — GitHub
cd ~/repos/ratatosk && claude --resume 6d113233-5761-4d8d-b074-df580de30e92