Commit Graph

  • 268733f968 fix(headless/kde): find the probe binary on PATH for packaged installs enricobuehler 2026-06-13 18:21:31 +00:00
  • 0fc3012954 feat(ci/release): iOS App Store manual distribution signing + profile enricobuehler 2026-06-13 17:09:46 +00:00
  • 6aa57ffd7b fix(ci/release): gate iOS signing on matching identity, not find-identity -v enricobuehler 2026-06-13 16:30:57 +00:00
  • eb5d282936 fix(ci/release): retry Apple intermediate fetch + chain/clock diagnostic enricobuehler 2026-06-13 16:22:32 +00:00
  • 59e91820eb ci+docs: Fedora 44 RPM channel + reproducible Fedora KDE host guide enricobuehler 2026-06-13 16:20:40 +00:00
  • ef13c0fa97 fix(ci/release): self-diagnosing iOS cert import + non-fatal validity gate enricobuehler 2026-06-13 16:14:12 +00:00
  • 38b7507440 packaging(rpm): Fedora 44 build + ship the KDE session unit & host.env enricobuehler 2026-06-13 16:08:10 +00:00
  • afed2206ab feat(ci/release): wire iOS App Store signing via an Apple Distribution secret v0.1.1 enricobuehler 2026-06-13 15:09:56 +00:00
  • 39a49da567 fix(ci/release): skip iOS archive cleanly when the iOS SDK is absent enricobuehler 2026-06-13 14:51:09 +00:00
  • e64aefa25c fix(ci/release): scope codesign to the throwaway keychain (--keychain) enricobuehler 2026-06-13 14:43:33 +00:00
  • 4d93eb24ff fix(ci/release): archive unsigned + codesign Developer ID directly enricobuehler 2026-06-13 14:35:16 +00:00
  • 3c617f655e fix(ci/release): sign the macOS archive with Developer ID, not auto dev signing enricobuehler 2026-06-13 13:46:00 +00:00
  • 7f18b3dcd0 fix(ci): install ca-certificates in the bun web/docs-site jobs enricobuehler 2026-06-13 13:36:22 +00:00
  • 8970cfe188 style(vdisplay/mutter): drop trailing blank line (rustfmt --check) enricobuehler 2026-06-13 13:36:22 +00:00
  • 263eab31e3 fix(m3): release held mouse buttons/keys when a session ends (stuck-click after reconnect) enricobuehler 2026-06-13 13:31:15 +00:00
  • 7ecf2d8dfd fix(inject/libei): emit the continuous scroll axis so small scrolls register enricobuehler 2026-06-13 12:37:07 +00:00
  • 55dfb4800f fix(vdisplay/mutter): stop the teardown layout-restore from SIGSEGVing gnome-shell enricobuehler 2026-06-13 12:37:07 +00:00
  • 47112f44b7 feat(apple): surface host online status on the home grid enricobuehler 2026-06-13 14:32:56 +02:00
  • dad5a08c1f chore(capture): tidy the GNOME flash diagnostic — it's the CORRUPTED skip enricobuehler 2026-06-13 11:28:11 +00:00
  • d8da12bbbd fix(capture/mutter): latest-frame-only dequeue (the real GNOME flash fix) enricobuehler 2026-06-13 11:15:01 +00:00
  • 79508b2666 fix(capture/mutter): drop stale re-delivered frames (the GNOME flash) enricobuehler 2026-06-13 10:46:27 +00:00
  • 340cbcfe22 fix(packaging): point the packaged systemd unit at /usr/bin/punktfunk-host enricobuehler 2026-06-13 10:25:30 +00:00
  • 4098b252bc fix(abi): exclude internal Apple recvmsg_x FFI from the C header enricobuehler 2026-06-13 09:44:03 +00:00
  • f9b857aac2 feat(capture): true SHM path (PUNKTFUNK_FORCE_SHM) for race-free Mutter+NVIDIA enricobuehler 2026-06-13 09:35:28 +00:00
  • 92c6da9546 fix(capture/mutter): restore zero-copy + sync via dmabuf implicit fence enricobuehler 2026-06-13 09:28:17 +00:00
  • 8531135bb7 fix(capture/mutter): stale-frame flashes + stuck input after disconnect on GNOME enricobuehler 2026-06-13 00:34:42 +00:00
  • 2ebffe3457 perf(core): recvmsg_x batched receive on Apple (macOS client) enricobuehler 2026-06-12 23:52:39 +00:00
  • 9c86f667ca perf(core): in-place AES-GCM seal + reused wire-buffer pool (host send) enricobuehler 2026-06-12 23:47:38 +00:00
  • 448986f41c perf(core): UDP GSO send path (the multi-Gbps lever) enricobuehler 2026-06-12 23:29:51 +00:00
  • 4b1bbfdf0e feat(client-linux): VAAPI hardware decode — zero-copy dmabuf into GraphicsOffload enricobuehler 2026-06-12 23:26:59 +00:00
  • b5c30dff4f perf(host): lift bitrate cap to 8G, raise MTU to 1452, FEC env knob enricobuehler 2026-06-12 23:20:46 +00:00
  • aac48408fd Merge remote-tracking branch 'origin/main' enricobuehler 2026-06-12 23:18:12 +00:00
  • 4ff6f447a8 ci(packaging): punktfunk-client .deb + RPM subpackage enricobuehler 2026-06-12 23:18:12 +00:00
  • 11fc3be726 fix(core): libc is a unix-wide dep — unbreak iOS/tvOS xcframework slices enricobuehler 2026-06-13 01:12:56 +02:00
  • 67a32711b3 chore(apple): Xcode 27 project upgrade + hardened runtime enricobuehler 2026-06-13 01:09:16 +02:00
  • 4be993df87 fix(apple/stage2): disable layer vsync wait to kill fullscreen stutter enricobuehler 2026-06-13 01:06:58 +02:00
  • 6b5ee9f47b perf(core): batched non-allocating recv on Apple targets (macOS client wall) enricobuehler 2026-06-12 23:05:54 +00:00
  • c56b1b455a feat(punktfunk/1): request-IDR recovery for a wedged client decode enricobuehler 2026-06-13 00:48:18 +02:00
  • 71d6b64f81 fix(ci): POSIX shell in deb/rpm Version step (dash "Bad substitution") enricobuehler 2026-06-12 22:48:12 +00:00
  • 0b1322d1c6 fix(packaging): ship the UDP socket-buffer sysctl in the .deb and .rpm enricobuehler 2026-06-12 22:41:45 +00:00
  • 06346e5037 docs(rpm): use repo_gpgcheck for the unsigned Gitea RPMs enricobuehler 2026-06-12 22:07:42 +00:00
  • 58cb416abb ci(rpm): publish punktfunk-host RPM to the Gitea registry (Bazzite) enricobuehler 2026-06-12 21:32:46 +00:00
  • e2257a6158 fix(apple): persist Keychain trust — sign macOS + data-protection keychain enricobuehler 2026-06-12 23:25:36 +02:00
  • dfed90bff2 ci(deb): publish punktfunk-host .deb to the Gitea apt registry enricobuehler 2026-06-12 21:14:40 +00:00
  • 184f94e867 Merge remote-tracking branch 'origin/main' enricobuehler 2026-06-12 21:12:02 +00:00
  • a95984bb4f feat(client-linux): feature parity with the Swift client enricobuehler 2026-06-12 21:11:52 +00:00
  • dea749186d fix(quic/apple): QUIC keep-alive + reconnect input re-engage enricobuehler 2026-06-12 23:07:17 +02:00
  • a8a6224fd8 fix(encode): bound per-frame size with a tight VBV buffer enricobuehler 2026-06-12 20:58:46 +00:00
  • 5f088c6f56 fix(client-linux): absolute mouse was dropped — pack the surface size in flags enricobuehler 2026-06-12 20:50:53 +00:00
  • f09def4138 ci: GTK4/libadwaita/SDL3 dev packages for punktfunk-client-linux enricobuehler 2026-06-12 20:17:54 +00:00
  • 96a35ca84c feat(client-linux): native GTK4 client — stage 1, first light at 1080p60 enricobuehler 2026-06-12 20:16:30 +00:00
  • 99b4de32ee feat(pairing): delegated approval (§8b-1) — approve an unpaired device from the console enricobuehler 2026-06-12 19:14:05 +00:00
  • 9758751a4d ci(release): make the throwaway keychain the default keychain v0.1.0 enricobuehler 2026-06-12 16:06:04 +00:00
  • 343cb544d9 ci(release): manual Developer ID export — cloud signing has no fallback enricobuehler 2026-06-12 16:01:12 +00:00
  • 6b49279c32 ci(release): stage Apple intermediate CAs in the signing keychain enricobuehler 2026-06-12 15:55:09 +00:00
  • d0f8896570 fix(web): mobile navigation — add a bottom tab bar + top bar enricobuehler 2026-06-12 14:59:54 +00:00
  • 02bcf41803 ci(release): TestFlight upload best-effort until the ASC app record exists enricobuehler 2026-06-12 14:39:19 +00:00
  • 0733eae361 Merge remote-tracking branch 'origin/main' enricobuehler 2026-06-12 14:34:45 +00:00
  • 57e7f9fe25 feat(release): production Apple builds — notarized macOS dmg + iOS TestFlight enricobuehler 2026-06-12 14:34:45 +00:00
  • 9291568ce0 refactor(apple): decompose ContentView (735 -> 272 lines) enricobuehler 2026-06-12 16:30:23 +02:00
  • 9e8135ccec refactor(apple): code-quality pass — audit fixes + centralized defaults keys enricobuehler 2026-06-12 16:30:08 +02:00
  • c8099c0125 fix(vdisplay/mutter): stop screencast before monitor reconfig — fixes >60Hz teardown crash enricobuehler 2026-06-12 14:08:05 +00:00
  • 91d5874e94 docs: user-facing docs revamp — structured product docs + per-platform setup enricobuehler 2026-06-12 14:01:19 +00:00
  • 015f2ee47b fix(vdisplay/mutter): gate >60Hz virtual mode behind an env flag (teardown SIGSEGV) enricobuehler 2026-06-12 13:59:29 +00:00
  • ecb4e6e1d5 Merge remote-tracking branch 'origin/main' enricobuehler 2026-06-12 13:45:29 +00:00
  • f6a7f3c12d feat(vdisplay/mutter): pin the virtual output to the client's refresh (>60 Hz) enricobuehler 2026-06-12 13:45:29 +00:00
  • fa407700e0 docs(roadmap): gamescope multi-user research (deferred); render->capture parked enricobuehler 2026-06-12 13:45:23 +00:00
  • 7b10714b62 feat(apple): stage-2 presenter — explicit decode + Metal present + glass-to-glass enricobuehler 2026-06-12 15:28:23 +02:00
  • 848738ed00 docs(site): status log — CI + automatic docs deployment landed enricobuehler 2026-06-12 13:21:21 +00:00
  • 2226031577 fix(ci): deploy target is unom-1, not home-main-2 enricobuehler 2026-06-12 13:15:16 +00:00
  • 2ed755f0c3 fix(vdisplay/mutter): make the virtual output the SOLE display, not primary + secondary enricobuehler 2026-06-12 13:05:02 +00:00
  • 1293b7e001 feat(ci): deploy the docs site to home-main-2 (docs.punktfunk.unom.io) enricobuehler 2026-06-12 13:03:16 +00:00
  • 0c4cfa40be fix(inject/mutter): GNOME input via Mutter's direct EIS, not the xdg portal enricobuehler 2026-06-12 12:45:10 +00:00
  • 94552331ef feat(host): concurrent punktfunk/1 sessions (bounded by --max-concurrent) enricobuehler 2026-06-12 12:42:09 +00:00
  • 47a69a0063 fix(ci): match real runner labels + survivable Mac runner daemon enricobuehler 2026-06-12 12:40:36 +00:00
  • f1af74b403 feat(ci): Gitea Actions — dockerized web/docs/rust-ci images, Apple client CI, Mac runner enricobuehler 2026-06-12 12:28:13 +00:00
  • 60ccbfdcf7 style: cargo fmt --all under rustfmt 1.9 (Rust 1.96) enricobuehler 2026-06-12 12:28:13 +00:00
  • 7f234420c7 docs(apple): pickup-ready stage-2 presenter implementation plan enricobuehler 2026-06-12 12:21:08 +00:00
  • bdcc88f5fc Merge remote-tracking branch 'origin/main' enricobuehler 2026-06-12 12:18:32 +00:00
  • 9fe7b7877f feat(vdisplay/mutter): optional virtual-output-as-primary for monitored GNOME hosts enricobuehler 2026-06-12 12:18:32 +00:00
  • 8f596ba6c5 fix(apple): latency HUD — interpolate the (same-host) suffix, don't concat enricobuehler 2026-06-12 14:11:45 +02:00
  • 6d3ff37d9e feat(client): cross-target input handling + LAN mDNS discovery enricobuehler 2026-06-12 14:05:21 +02:00
  • 6b4de5d738 feat(client/speedtest): request the host's full 3 Gbps probe ceiling enricobuehler 2026-06-12 14:04:49 +02:00
  • 1c94f46be8 style(quic): format-stable clock test assert (message to comment) enricobuehler 2026-06-12 12:01:56 +00:00
  • e04328f086 feat(apple): capture->client latency HUD (skew-corrected) via the connect offset enricobuehler 2026-06-12 11:58:54 +00:00
  • 7eb9a927cf feat(connector): expose host clock offset over the C ABI for glass-to-glass enricobuehler 2026-06-12 11:44:54 +00:00
  • e586961e0b docs(site): make docs-site the knowledge base — status tracker + setup guides enricobuehler 2026-06-12 11:33:39 +00:00
  • 05bc9ab22c feat(latency): wall-clock skew handshake for cross-machine latency measurement enricobuehler 2026-06-12 11:20:20 +00:00
  • 50c9db785a docs(site): Fumadocs documentation site on TanStack Start enricobuehler 2026-06-12 11:17:59 +00:00
  • 4fff4641bb feat(discovery): native-protocol LAN auto-discovery over mDNS enricobuehler 2026-06-12 10:37:12 +00:00
  • a9e974d50d docs(host.env): GNOME/Mutter example for an Ubuntu desktop host enricobuehler 2026-06-12 09:43:18 +00:00
  • b295a5b7a9 perf(latency): encode|send thread split on the native path enricobuehler 2026-06-12 09:42:16 +00:00
  • 86f463cf71 fix(housekeeping): unaligned read UB + recv-drop parity; dedup mmsghdr; doc fixes enricobuehler 2026-06-11 23:04:23 +00:00
  • 761ccace25 docs(roadmap): §12 glass-to-glass latency — quick wins landed, bigger bets scoped enricobuehler 2026-06-11 22:54:30 +00:00
  • 99f60b5b08 perf(latency): microburst-cap pacing + per-frame latency histogram enricobuehler 2026-06-11 22:53:52 +00:00
  • 2f4f92a804 feat(1gbps): batched client recv via recvmmsg (increment C) enricobuehler 2026-06-11 22:39:51 +00:00
  • 10a932d013 feat(1gbps): pace per-frame sends so high-bitrate frames don't burst-drop enricobuehler 2026-06-11 22:15:52 +00:00
  • c70db56115 build: lock libc (sendmmsg dep from the previous commit) enricobuehler 2026-06-11 21:55:40 +00:00
  • c24b571e37 feat(1gbps): batched send via sendmmsg (Transport::send_batch) enricobuehler 2026-06-11 21:55:22 +00:00
  • e1242546f2 fix(headless-kde): don't let set -e abort the session when Xwayland isn't up yet enricobuehler 2026-06-11 21:25:28 +00:00