From 32d663e58fe2d2454bb8ae0961c06da4e25b2e24 Mon Sep 17 00:00:00 2001 From: David Helkowski Date: Thu, 22 Jan 2026 14:25:48 +0900 Subject: [PATCH] Update Brewfile to specify local libgpod formula for iPod support --- Brewfile | 2 +- Formula/libgpod.rb | 43 +++++++++++++++++++++++++++++++++++++++ Formula/libgpod/README.md | 8 ++++++++ 3 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 Formula/libgpod.rb create mode 100644 Formula/libgpod/README.md diff --git a/Brewfile b/Brewfile index 74fcd8648..99a242881 100644 --- a/Brewfile +++ b/Brewfile @@ -49,7 +49,7 @@ brew "fftw" # enables Moodbar (fftw3) brew "libebur128" # enables EBU R 128 loudness normalization brew "libcdio" # enables Audio CD support brew "libmtp" # enables MTP device support -brew "libgpod" # enables iPod classic support +brew "strawberry/local/libgpod" # enables iPod classic support (Homebrew core doesn't provide libgpod) # Helpful for Strawberry's macOS "deploy" target (GStreamer dynamically loads libsoup) brew "libsoup" diff --git a/Formula/libgpod.rb b/Formula/libgpod.rb new file mode 100644 index 000000000..22f9cdae5 --- /dev/null +++ b/Formula/libgpod.rb @@ -0,0 +1,43 @@ +class Libgpod < Formula + desc "Library to access the contents of classic iPods" + homepage "https://gtkpod.org/libgpod/" + url "https://github.com/neuschaefer/libgpod/archive/0dda196286f5e42be89f0b870abd9278213989a5.tar.gz" + sha256 "a9809f85b2b763196ac7c94903211a927efd37a24ef39c355c21b4a1bed28e52" + license "LGPL-2.0-only" + + depends_on "autoconf" => :build + depends_on "automake" => :build + depends_on "libtool" => :build + depends_on "pkg-config" => :build + + depends_on "glib" + depends_on "gdk-pixbuf" + depends_on "libplist" + depends_on "libxml2" + depends_on "sqlite" + + def install + ENV["NOCONFIGURE"] = "1" + system "./autogen.sh" + + system "./configure", *std_configure_args, + "--disable-dependency-tracking", + "--with-hal=no", + "--disable-udev", + "--without-libimobiledevice", + "--with-python=no", + "--with-mono=no", + "--disable-gtk-doc", + "--disable-gtk-doc-html", + "--disable-gtk-doc-pdf", + "--enable-more-warnings=no" + + system "make", "install" + end + + test do + # Ensure pkg-config can find the expected module name used by Strawberry. + assert_match "libgpod", shell_output("pkg-config --libs libgpod-1.0") + end +end + diff --git a/Formula/libgpod/README.md b/Formula/libgpod/README.md new file mode 100644 index 000000000..91dc74e61 --- /dev/null +++ b/Formula/libgpod/README.md @@ -0,0 +1,8 @@ +# libgpod (local Homebrew formula) + +Homebrew core does not currently ship `libgpod`, but Strawberry can optionally use it +to support **classic iPod** devices (via `libgpod-1.0` + `gdk-pixbuf-2.0`). + +This formula is pinned to a known-good upstream snapshot and disables Linux-specific +integration (udev/HAL) and language bindings to keep the build reliable on macOS. +