This commit introduces a Brewfile for managing dependencies required by the Strawberry Music Player on macOS, including build tools and runtime dependencies. Additionally, a local Homebrew formula for KDSingleApplication-qt6 is added to facilitate its installation, as it is not consistently available in Homebrew core. A README is also included to guide users on installation and usage.
46 lines
1.5 KiB
Ruby
46 lines
1.5 KiB
Ruby
# Strawberry Music Player (macOS) - Homebrew Bundle
|
|
#
|
|
# Usage:
|
|
# brew bundle --file Brewfile
|
|
#
|
|
# Notes:
|
|
# - This is intended for macOS (Apple Silicon or Intel).
|
|
# - Some Strawberry features are optional and will auto-disable if deps are missing.
|
|
|
|
# Build tooling
|
|
brew "cmake"
|
|
brew "pkg-config"
|
|
brew "ninja"
|
|
|
|
# Core runtime/build dependencies (required by CMakeLists.txt)
|
|
brew "qt" # Qt 6 (Core/Gui/Widgets/Network/Sql/Concurrent)
|
|
brew "boost"
|
|
brew "icu4c"
|
|
brew "glib" # provides glib-2.0 + gobject-2.0 (via pkg-config)
|
|
brew "glib-networking" # TLS + GIO modules (helps macOS bundling via dist/macos/macgstcopy.sh)
|
|
brew "glib-openssl" # alternative TLS backend for GIO
|
|
brew "sqlite"
|
|
brew "taglib"
|
|
brew "gstreamer"
|
|
|
|
# Strawberry requires KDAB's KDSingleApplication (CMake package name: KDSingleApplication-qt6).
|
|
# Homebrew core doesn't consistently provide it, so this repo includes a local formula.
|
|
# Homebrew requires formulae to be installed from a tap; `brew bundle` will tap *this repo*
|
|
# using the current working directory (run `brew bundle` from the repo root).
|
|
tap "strawberry/local", "file://#{Dir.pwd}"
|
|
brew "strawberry/local/kdsingleapplication-qt6"
|
|
|
|
# Recommended GStreamer plugin sets for broad codec support (matches README guidance)
|
|
brew "gst-plugins-base"
|
|
brew "gst-plugins-good"
|
|
brew "gst-plugins-bad"
|
|
brew "gst-plugins-ugly"
|
|
brew "gst-libav"
|
|
|
|
# Helpful for Strawberry's macOS "deploy" target (GStreamer dynamically loads libsoup)
|
|
brew "libsoup"
|
|
|
|
# Optional: enable building the CMake "dmg" target (cmake/Dmg.cmake)
|
|
brew "create-dmg"
|
|
|