From d32ff688eb03abbde6e6059e3ad2830bcc1ee5b9 Mon Sep 17 00:00:00 2001 From: David Helkowski Date: Thu, 22 Jan 2026 19:52:46 +0900 Subject: [PATCH] Update default settings for album cover and song lyrics search options to be disabled This commit modifies the default state of the "Automatically search for album cover" and "Automatically search for song lyrics" options to false in the UI and corresponding settings logic. Additionally, it updates the macOS Info.plist to disable automatic update checks by default. --- dist/macos/Info.plist.in | 5 ++ dist/macos/privacy_policy.html | 80 ++++++++++++++++++++++++++++ src/context/contextview.cpp | 4 +- src/core/mainwindow.cpp | 2 +- src/settings/contextsettingspage.cpp | 2 +- src/settings/contextsettingspage.ui | 4 +- 6 files changed, 91 insertions(+), 6 deletions(-) create mode 100644 dist/macos/privacy_policy.html diff --git a/dist/macos/Info.plist.in b/dist/macos/Info.plist.in index ec8453023..499294a5a 100644 --- a/dist/macos/Info.plist.in +++ b/dist/macos/Info.plist.in @@ -36,6 +36,11 @@ @LSMinimumSystemVersion@ ITSAppUsesNonExemptEncryption + + SUEnableAutomaticChecks + + SUAutomaticallyUpdate + SUFeedURL @SPARKLE_FEED_URL@ SUPublicEDKey diff --git a/dist/macos/privacy_policy.html b/dist/macos/privacy_policy.html new file mode 100644 index 000000000..9392b0f33 --- /dev/null +++ b/dist/macos/privacy_policy.html @@ -0,0 +1,80 @@ + + + + + + Strawberry Music Player — Privacy Policy + + + +
+

Privacy Policy

+

Last updated: 2026-01-22

+ +

Summary

+
    +
  • No analytics / tracking: This app does not include advertising SDKs, analytics SDKs, or tracking pixels.
  • +
  • No data selling: We do not sell personal data.
  • +
  • Optional online features: If you enable online features (lyrics lookup, cover art search, scrobbling, streaming services, radio, update checks), the app will contact third-party services and send the minimum data needed to provide the feature.
  • +
+ +

What data is stored on your device

+

Strawberry stores data locally on your device, such as:

+
    +
  • Library database and playlists (file paths, track metadata, play counts, ratings).
  • +
  • App settings and preferences.
  • +
  • Optional service credentials/tokens you configure (for example scrobbling or streaming accounts), stored locally.
  • +
+ +

What data is sent over the network (and when)

+

Strawberry does not “phone home” just to run, but it will make network requests when you use or enable specific features. When the app contacts a third-party service, that service will receive standard network information such as your IP address, user-agent, and the request data described below.

+ +

Album cover art search (optional)

+

If you use album cover search (or enable “search automatically”), the app may send artist/album/track metadata to configured cover providers to find images.

+ +

Lyrics lookup (optional)

+

If you search for lyrics (or enable “search automatically”), the app may send artist/title/album/duration to configured lyrics providers to retrieve lyrics.

+ +

Scrobbling (optional)

+

If you enable scrobbling (for example Last.fm or ListenBrainz) the app sends “now playing” and/or listen history data to the configured scrobbling service, including track/artist/album metadata and timestamps. You can disable scrobbling at any time in Settings.

+ +

Streaming services (optional)

+

If you enable and sign into a streaming service (for example Tidal, Spotify, Qobuz, Subsonic-compatible servers), the app will communicate with that service to authenticate, browse, and play music. Requests may include account identifiers/tokens and media metadata required by the service.

+ +

Internet radio (optional)

+

If you use internet radio features, the app will contact the selected station/provider to retrieve station lists and stream audio.

+ +

Discord Rich Presence (optional)

+

If you enable Discord Rich Presence, the app shares currently playing track/artist/album information with the locally-running Discord client so it can be displayed on your Discord profile. You can disable this in Settings.

+ +

Software updates

+

The Mac App Store version of Strawberry is updated through Apple’s App Store.

+ +

OAuth / local redirect server (optional)

+

Some providers use an OAuth login flow that may open your browser and (in some cases) start a temporary local http://localhost redirect listener to complete authentication. This listener is local-only (not exposed on the internet) and only used during authentication. (Mac App Store builds may disable this flow.)

+ +

Data sharing

+

We do not share your personal data with third parties except as necessary to provide features you explicitly use or enable (for example, sending track metadata to a lyrics provider when you request lyrics).

+ +

Your choices

+
    +
  • Disable Discord Rich Presence in Settings.
  • +
  • Disable scrobbling services in Settings.
  • +
  • Disable automatic cover/lyrics searching in Settings.
  • +
  • Avoid signing into streaming services if you don’t want those network requests.
  • +
+ +

Contact

+

If you have questions about this policy, contact: privacy@dryark.com

+
+ + + diff --git a/src/context/contextview.cpp b/src/context/contextview.cpp index 0fefb1397..826dc16e1 100644 --- a/src/context/contextview.cpp +++ b/src/context/contextview.cpp @@ -253,7 +253,7 @@ void ContextView::AddActions() { action_search_lyrics_ = new QAction(tr("Automatically search for song lyrics"), this); action_search_lyrics_->setCheckable(true); - action_search_lyrics_->setChecked(true); + action_search_lyrics_->setChecked(false); menu_options_->addAction(action_show_album_); menu_options_->addAction(action_show_data_); @@ -287,7 +287,7 @@ void ContextView::ReloadSettings() { action_show_album_->setChecked(s.value(ContextSettings::kAlbum, true).toBool()); action_show_data_->setChecked(s.value(ContextSettings::kTechnicalData, false).toBool()); action_show_lyrics_->setChecked(s.value(ContextSettings::kSongLyrics, true).toBool()); - action_search_lyrics_->setChecked(s.value(ContextSettings::kSearchLyrics, true).toBool()); + action_search_lyrics_->setChecked(s.value(ContextSettings::kSearchLyrics, false).toBool()); font_headline_.setFamily(s.value(ContextSettings::kFontHeadline, default_font).toString()); font_headline_.setPointSizeF(s.value(ContextSettings::kFontSizeHeadline, ContextSettings::kDefaultFontSizeHeadline).toReal()); font_nosong_.setFamily(font_headline_.family()); diff --git a/src/core/mainwindow.cpp b/src/core/mainwindow.cpp index c06c0c56b..66f1472e3 100644 --- a/src/core/mainwindow.cpp +++ b/src/core/mainwindow.cpp @@ -1229,7 +1229,7 @@ void MainWindow::ReloadSettings() { osd_->ReloadSettings(); s.beginGroup(MainWindowSettings::kSettingsGroup); - album_cover_choice_controller_->search_cover_auto_action()->setChecked(s.value(MainWindowSettings::kSearchForCoverAuto, true).toBool()); + album_cover_choice_controller_->search_cover_auto_action()->setChecked(s.value(MainWindowSettings::kSearchForCoverAuto, false).toBool()); s.endGroup(); #ifdef HAVE_SUBSONIC diff --git a/src/settings/contextsettingspage.cpp b/src/settings/contextsettingspage.cpp index 6082bf502..1679730bf 100644 --- a/src/settings/contextsettingspage.cpp +++ b/src/settings/contextsettingspage.cpp @@ -151,7 +151,7 @@ void ContextSettingsPage::Load() { s.endGroup(); s.beginGroup(MainWindowSettings::kSettingsGroup); - ui_->checkbox_search_cover->setChecked(s.value(MainWindowSettings::kSearchForCoverAuto, true).toBool()); + ui_->checkbox_search_cover->setChecked(s.value(MainWindowSettings::kSearchForCoverAuto, false).toBool()); s.endGroup(); Init(ui_->layout_contextsettingspage->parentWidget()); diff --git a/src/settings/contextsettingspage.ui b/src/settings/contextsettingspage.ui index 613392115..a45183a34 100644 --- a/src/settings/contextsettingspage.ui +++ b/src/settings/contextsettingspage.ui @@ -185,7 +185,7 @@ Automatically search for album cover - true + false @@ -195,7 +195,7 @@ Automatically search for song lyrics - true + false