This commit introduces two new files: EXPORT_COMPLIANCE.filled.txt and EXPORT_COMPLIANCE.pdf, detailing the encryption export compliance statement for the Strawberry app. The text file outlines the app's use of encryption, confirming it qualifies for exemption under U.S. export regulations. The PDF provides a formatted version of the same information, ensuring compliance documentation is readily available for developers and reviewers.
Strawberry (macOS-focused fork)
This repository is a macOS-focused fork of upstream Strawberry.
The goal of this fork is to make Strawberry build cleanly and repeatably on macOS, with:
- Homebrew dependency installation via
Brewfile - local Homebrew formulas (tap) for missing dependencies
- build / deploy / signing / notarization helper scripts under
build_tools/ - Sparkle feed configuration knobs so you can publish your own updates
Upstream vs this fork (macOS distribution)
Upstream Strawberry is where ongoing development happens:
- Upstream:
https://github.com/strawberrymusicplayer/strawberry
This fork’s source (the code you are building here):
- Fork:
https://gitea.dryark.com/dryark/strawberry
This fork is intended for people who want to:
- build from source on macOS without guesswork
- produce signed + notarized binaries themselves (and optionally distribute them)
General safety note: whether you use upstream builds, your own builds, or someone else’s, only install software from sources you trust and prefer signed + notarized releases.
Quick start (macOS)
Install Homebrew dependencies:
./build_tools/macos/install_brew_deps.sh
Build:
./build_tools/macos/build_app.sh --release --clean
open ./cmake-build-macos-release/strawberry.app
Build + deploy + sign + notarize (+ DMG):
./build_tools/macos/build_sign_notarize.sh --run --release --clean --deploy --dmg \
--identity "Developer ID Application: Your Name (TEAMID)" \
--notary-profile "<profile-name>"
Features
- Play and organize your music collection
- Supports formats: WAV, FLAC, WavPack, Ogg Vorbis, Opus, MPC, TrueAudio, AIFF, MP4, MP3, ASF, and Monkey’s Audio
- Audio CD playback
- Bit-perfect playback on Linux
- Native desktop notifications
- Advanced playlist management
- Smart and dynamic playlists
- Loudness analysis and EBU R128 normalization
- Editing tags and fetching missing tags via MusicBrainz
- Album art from: Last.fm, MusicBrainz, Discogs, Musixmatch, Deezer, Tidal, Qobuz, Spotify
- Lyrics from: Genius, Musixmatch, ChartLyrics, lyrics.ovh, lololyrics, songlyrics, azlyrics, elyrics, letras, LyricFind and lrclib.net
- Audio analyzer and equalizer
- Transfer music to USB, MTP and iPod devices
- Scrobbling to Last.fm and ListenBrainz
- Streaming from Subsonic-compatible servers
- Unofficial integrations: Tidal, Spotify, and Qobuz
- Discord Rich Presence
✅ Tested on Linux, OpenBSD, FreeBSD, macOS, and Windows.
⚙️ Requirements
To build Strawberry from source, you’ll need:
Dependencies:
- CMake ≥= 3.13
- C/C++ compiler (GCC, Clang, or MSVC)
- pkg-config or pkgconf
- Boost
- GLib
- Qt ≥= 6.4 (Core, Concurrent, Gui, Widgets, Network, SQL, D-Bus)
- SQLite ≥= 3.9
- ALSA (Linux only)
- GStreamer
- TagLib ≥= 1.12
- ICU
- KDSingleApplication ≥= 1.1.0
Dependencies for optional features:
- Fingerprinting & tagging: Chromaprint
- Moodbar: FFTW3
- PulseAudio integration: PulseAudio
- Audio CD support: libcdio
- MTP devices: libmtp
- iPod Classic: libgpod
- EBU R128 normalization: libebur128
- Discord presence: RapidJSON
Also install GStreamer plugins base, good, and optionally bad, ugly and libav for full codec support.
🔧 Build from Source
Get the code (this fork):
git clone --recursive https://gitea.dryark.com/dryark/strawberry
Build and install:
cd strawberry
cmake -S . -B build
cmake --build build --parallel $(nproc)
sudo cmake --install build
For building on Windows with Visual Studio 2022, see: 👉 https://github.com/strawberrymusicplayer/strawberry-msvc