fix(client/apple): don't call a paid app "free software"

The term means liberty, but it is read as price — and this app is sold on the App
Store, so the person most likely to read that line is the one who just paid for it.
The licences are unchanged and the claim was true in its own sense; it was the wrong
sense to leave ambiguous on a purchase.

It now says what is unambiguously so: the SOURCE is open under MIT or Apache-2.0.
Both copies (the form footer and the tvOS page), with a note on the wording so it
doesn't drift back.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-29 12:06:41 +02:00
co-authored by Claude Opus 5
parent 9dcf943802
commit 556ece4bc0
@@ -6,6 +6,10 @@
// The license wall itself is still `AcknowledgementsView`; About opens it as a sheet pushed // The license wall itself is still `AcknowledgementsView`; About opens it as a sheet pushed
// only on tvOS, where this page really is inside a navigation stack. The iPad settings detail // only on tvOS, where this page really is inside a navigation stack. The iPad settings detail
// column deliberately isn't one, so a push there had no way back. // column deliberately isn't one, so a push there had no way back.
//
// Wording note: this page says the SOURCE is open, never that the app is "free software". The
// term means liberty, but it is read as price and this app is sold on the App Store, so to the
// person most likely to read this line it would be a claim about what they just paid for.
import PunktfunkKit import PunktfunkKit
import SwiftUI import SwiftUI
@@ -50,7 +54,7 @@ struct AboutView: View {
Section { Section {
acknowledgementsRow acknowledgementsRow
} footer: { } footer: {
Text("Punktfunk is free software under MIT or Apache-2.0.") Text("Punktfunk's source is open under MIT or Apache-2.0.")
.font(.geist(12, relativeTo: .caption)) .font(.geist(12, relativeTo: .caption))
.foregroundStyle(.secondary) .foregroundStyle(.secondary)
} }
@@ -165,7 +169,7 @@ struct AboutView: View {
tvAddress("Source code", Destination.source) tvAddress("Source code", Destination.source)
} }
NavigationLink("Acknowledgements") { AcknowledgementsView() } NavigationLink("Acknowledgements") { AcknowledgementsView() }
Text("Punktfunk is free software under MIT or Apache-2.0.") Text("Punktfunk's source is open under MIT or Apache-2.0.")
.font(.geist(20, relativeTo: .caption)) .font(.geist(20, relativeTo: .caption))
.foregroundStyle(.secondary) .foregroundStyle(.secondary)
} }