mirror of
https://github.com/narrrl/proton-stream.git
synced 2026-11-04 00:47:00 +01:00
The iOS client is now a screen-for-screen port of the Android app over the same pstr-android UniFFI surface, with no Rust changes: Library, title page, History, Shares (public links and Drive folders), Downloads and Settings, with the same strings, undo snackbars and two-pane layout on wide screens. - Theme from the engine's palette (Material role names, Inter, the same type ramp and corners), repainted live from the appearance settings. - Account sign-in with two-factor code, mailbox password and the Proton CAPTCHA in a non-persistent WKWebView, the Drive folder browser, and watch-history sync every five minutes, after sign-in, on player close and when the app leaves the screen. - Player over libmpv: resume, progress saved every 5 s, autoplay with the up-next card, skip and auto-skip from the chapter plan, track, speed, volume and episode pickers, landscape lock, mini transport, and lock-screen controls with interruption and route-change handling. - Offline downloads with the Android record format, free-space floor, retries, transfer rate and the Wi-Fi-only policy; interrupted transfers resume at next launch. - Config, data and download state are excluded from backup, as Android's allowBackup=false: a restore would bring shares back without their Keychain secrets and give two devices one sync identity. Picture-in-picture, the share sheet and background downloads are not possible the same way on iOS; docs/IOS.md lists why and what replaces them. Adds XCTest ports of the Android unit tests, a `test` command to scripts/build-ios.sh, the app icon and its render script, and an iOS workflow on macos-15 that runs the tests and builds the unsigned .ipa.
976 B
976 B
Third-Party Notices
The proton-stream iOS distribution combines open-source components. The
complete GNU GPL version 3 text is packaged beside this file as GPL-3.0.txt.
| Component | License |
|---|---|
mpv/libmpv (MPVKit MPVKit-GPL 1.0.0) |
GPL-2.0-or-later; verify the pinned build configuration |
| FFmpeg (MPVKit GPL build) | GPL-2.0-or-later |
| MPVKit | LGPL-3.0 |
| MoltenVK | Apache-2.0 |
| libplacebo | LGPL-2.1-or-later |
| libass, FreeType, FriBidi, HarfBuzz | ISC, FTL, LGPL-2.1-or-later, MIT |
| UniFFI | MPL-2.0 |
Inter typeface (bundled, Inter-OFL.txt) |
OFL-1.1 |
| proton-stream reusable Rust crates | MIT |
Before release, replace this dependency summary with an inventory generated from the resolved Cargo and Swift Package dependency graphs and package every required license text. A bundled libmpv release must identify the exact source revision, patches, and build configuration, and make the corresponding source available under the GPL.